1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- import Container from './container.js'
- import Node, { NodeProps } from './node.js'
-
- declare namespace Comment {
- export interface CommentRaws extends Record<string, unknown> {
- /**
- * The space symbols before the node.
- */
- before?: string
-
- /**
- * The space symbols between `/*` and the comment’s text.
- */
- left?: string
-
- /**
- * The space symbols between the comment’s text.
- */
- right?: string
- }
-
- export interface CommentProps extends NodeProps {
- /** Information used to generate byte-to-byte equal node string as it was in the origin input. */
- raws?: CommentRaws
- /** Content of the comment. */
- text: string
- }
-
- // eslint-disable-next-line @typescript-eslint/no-use-before-define
- export { Comment_ as default }
- }
-
- /**
- * It represents a class that handles
- * [CSS comments](https://developer.mozilla.org/en-US/docs/Web/CSS/Comments)
- *
- * ```js
- * Once (root, { Comment }) {
- * const note = new Comment({ text: 'Note: …' })
- * root.append(note)
- * }
- * ```
- *
- * Remember that CSS comments inside selectors, at-rule parameters,
- * or declaration values will be stored in the `raws` properties
- * explained above.
- */
- declare class Comment_ extends Node {
- parent: Container | undefined
- raws: Comment.CommentRaws
- type: 'comment'
- constructor(defaults?: Comment.CommentProps)
-
- assign(overrides: Comment.CommentProps | object): this
-
- clone(overrides?: Partial<Comment.CommentProps>): this
- cloneAfter(overrides?: Partial<Comment.CommentProps>): this
- cloneBefore(overrides?: Partial<Comment.CommentProps>): this
- /**
- * The comment's text.
- */
- get text(): string
- set text(value: string)
- }
-
- declare class Comment extends Comment_ {}
-
- export = Comment
|