Spaces:
Running
Running
| import Container from './container.js' | |
| import Node from './node.js' | |
| 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?: { | |
| value: string | |
| raw: string | |
| } | |
| } | |
| export interface DeclarationProps { | |
| /** Name of the declaration. */ | |
| prop: string | |
| /** Value of the declaration. */ | |
| value: string | |
| /** Whether the declaration has an `!important` annotation. */ | |
| important?: boolean | |
| /** Information used to generate byte-to-byte equal node string as it was in the origin input. */ | |
| raws?: DeclarationRaws | |
| } | |
| /** | |
| * Represents a CSS declaration. | |
| * | |
| * ```js | |
| * Once (root, { Declaration }) { | |
| * let 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' | |
| * ``` | |
| */ | |
| export default class Declaration extends Node { | |
| type: 'decl' | |
| parent: Container | undefined | |
| raws: DeclarationRaws | |
| /** | |
| * The declaration's property name. | |
| * | |
| * ```js | |
| * const root = postcss.parse('a { color: black }') | |
| * const decl = root.first.first | |
| * decl.prop //=> 'color' | |
| * ``` | |
| */ | |
| prop: string | |
| /** | |
| * The declaration’s value. | |
| * | |
| * This value will be cleaned of comments. If the source value contained | |
| * comments, those comments will be available in the `raws` property. | |
| * If you have not changed the value, the result of `decl.toString()` | |
| * will include the original raws value (comments and all). | |
| * | |
| * ```js | |
| * const root = postcss.parse('a { color: black }') | |
| * const decl = root.first.first | |
| * decl.value //=> 'black' | |
| * ``` | |
| */ | |
| value: string | |
| /** | |
| * `true` if the declaration has an `!important` annotation. | |
| * | |
| * ```js | |
| * const root = postcss.parse('a { color: black !important; color: red }') | |
| * root.first.first.important //=> true | |
| * root.first.last.important //=> undefined | |
| * ``` | |
| */ | |
| important: boolean | |
| /** | |
| * `true` if declaration is declaration of CSS Custom Property | |
| * or Sass variable. | |
| * | |
| * ```js | |
| * const root = postcss.parse(':root { --one: 1 }') | |
| * let one = root.first.first | |
| * one.variable //=> true | |
| * ``` | |
| * | |
| * ```js | |
| * const root = postcss.parse('$one: 1') | |
| * let one = root.first | |
| * one.variable //=> true | |
| * ``` | |
| */ | |
| variable: boolean | |
| constructor(defaults?: DeclarationProps) | |
| assign(overrides: object | DeclarationProps): this | |
| clone(overrides?: Partial<DeclarationProps>): this | |
| cloneBefore(overrides?: Partial<DeclarationProps>): this | |
| cloneAfter(overrides?: Partial<DeclarationProps>): this | |
| } | |