summaryrefslogtreecommitdiff
path: root/node_modules/postcss/lib/declaration.d.ts
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/postcss/lib/declaration.d.ts')
-rw-r--r--node_modules/postcss/lib/declaration.d.ts148
1 files changed, 148 insertions, 0 deletions
diff --git a/node_modules/postcss/lib/declaration.d.ts b/node_modules/postcss/lib/declaration.d.ts
new file mode 100644
index 0000000..655deea
--- /dev/null
+++ b/node_modules/postcss/lib/declaration.d.ts
@@ -0,0 +1,148 @@
+import Container from './container.js'
+import Node from './node.js'
+
+declare namespace Declaration {
+ export interface DeclarationRaws extends Record<string, unknown> {
+ /**
+ * The space symbols before the node. It also stores `*`
+ * and `_` symbols before the declaration (IE hack).
+ */
+ before?: string
+
+ /**
+ * The symbols between the property and value for declarations.
+ */
+ between?: string
+
+ /**
+ * The content of the important statement, if it is not just `!important`.
+ */
+ important?: string
+
+ /**
+ * Declaration value with comments.
+ */
+ value?: {
+ raw: string
+ value: string
+ }
+ }
+
+ export interface DeclarationProps {
+ /** Whether the declaration has an `!important` annotation. */
+ important?: boolean
+ /** Name of the declaration. */
+ prop: string
+ /** Information used to generate byte-to-byte equal node string as it was in the origin input. */
+ raws?: DeclarationRaws
+ /** Value of the declaration. */
+ value: string
+ }
+
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
+ export { Declaration_ as default }
+}
+
+/**
+ * It represents a class that handles
+ * [CSS declarations](https://developer.mozilla.org/en-US/docs/Web/CSS/Syntax#css_declarations)
+ *
+ * ```js
+ * Once (root, { Declaration }) {
+ * const color = new Declaration({ prop: 'color', value: 'black' })
+ * root.append(color)
+ * }
+ * ```
+ *
+ * ```js
+ * const root = postcss.parse('a { color: black }')
+ * const decl = root.first?.first
+ *
+ * decl.type //=> 'decl'
+ * decl.toString() //=> ' color: black'
+ * ```
+ */
+declare class Declaration_ extends Node {
+ /**
+ * It represents a specificity of the declaration.
+ *
+ * If true, the CSS declaration will have an
+ * [important](https://developer.mozilla.org/en-US/docs/Web/CSS/important)
+ * specifier.
+ *
+ * ```js
+ * const root = postcss.parse('a { color: black !important; color: red }')
+ *
+ * root.first.first.important //=> true
+ * root.first.last.important //=> undefined
+ * ```
+ */
+ important: boolean
+
+ parent: Container | undefined
+
+ /**
+ * The property name for a CSS declaration.
+ *
+ * ```js
+ * const root = postcss.parse('a { color: black }')
+ * const decl = root.first.first
+ *
+ * decl.prop //=> 'color'
+ * ```
+ */
+ prop: string
+
+ raws: Declaration.DeclarationRaws
+
+ type: 'decl'
+
+ /**
+ * The property value for a CSS declaration.
+ *
+ * Any CSS comments inside the value string will be filtered out.
+ * CSS comments present in the source value will be available in
+ * the `raws` property.
+ *
+ * Assigning new `value` would ignore the comments in `raws`
+ * property while compiling node to string.
+ *
+ * ```js
+ * const root = postcss.parse('a { color: black }')
+ * const decl = root.first.first
+ *
+ * decl.value //=> 'black'
+ * ```
+ */
+ value: string
+
+ /**
+ * It represents a getter that returns `true` if a declaration starts with
+ * `--` or `$`, which are used to declare variables in CSS and SASS/SCSS.
+ *
+ * ```js
+ * const root = postcss.parse(':root { --one: 1 }')
+ * const one = root.first.first
+ *
+ * one.variable //=> true
+ * ```
+ *
+ * ```js
+ * const root = postcss.parse('$one: 1')
+ * const one = root.first
+ *
+ * one.variable //=> true
+ * ```
+ */
+ variable: boolean
+
+ constructor(defaults?: Declaration.DeclarationProps)
+ assign(overrides: Declaration.DeclarationProps | object): this
+ clone(overrides?: Partial<Declaration.DeclarationProps>): Declaration
+ cloneAfter(overrides?: Partial<Declaration.DeclarationProps>): Declaration
+ cloneBefore(overrides?: Partial<Declaration.DeclarationProps>): Declaration
+}
+
+declare class Declaration extends Declaration_ {}
+
+export = Declaration