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.
67 lines
1.7 KiB
67 lines
1.7 KiB
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 |
|
/** |
|
* The comment's text. |
|
*/ |
|
text: string |
|
|
|
type: 'comment' |
|
|
|
constructor(defaults?: Comment.CommentProps) |
|
assign(overrides: Comment.CommentProps | object): this |
|
clone(overrides?: Partial<Comment.CommentProps>): Comment |
|
cloneAfter(overrides?: Partial<Comment.CommentProps>): Comment |
|
cloneBefore(overrides?: Partial<Comment.CommentProps>): Comment |
|
} |
|
|
|
declare class Comment extends Comment_ {} |
|
|
|
export = Comment
|
|
|