You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
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 }
|