import * as postcss from 'postcss'; import { Interpolation, InterpolationProps } from '../interpolation'; import { NodeProps } from '../node'; import type * as sassInternal from '../sass-internal'; import { Expression } from '.'; /** * The initializer properties for {@link StringExpression}. * * @category Expression */ export interface StringExpressionProps extends NodeProps { text: Interpolation | InterpolationProps; quotes?: boolean; raws?: StringExpressionRaws; } /** * Raws indicating how to precisely serialize a {@link StringExpression}. * * @category Expression */ export interface StringExpressionRaws { /** * The type of quotes to use (single or double). * * This is ignored if the string isn't quoted. */ quotes?: '"' | "'"; } /** * An expression representing a (quoted or unquoted) string literal in Sass. * * @category Expression */ export declare class StringExpression extends Expression { #private; readonly sassType: "string"; raws: StringExpressionRaws; /** The interpolation that represents the text of this string. */ get text(): Interpolation; set text(value: Interpolation | InterpolationProps); private _text; /** * Whether this is a quoted or unquoted string. Defaults to false. * * Unquoted strings are most commonly used to represent identifiers, but they * can also be used for string-like functions such as `url()` or more unusual * constructs like Unicode ranges. */ get quotes(): boolean; set quotes(quotes: boolean); private _quotes; constructor(defaults: StringExpressionProps); /** @hidden */ constructor(_: undefined, inner: sassInternal.StringExpression); clone(overrides?: Partial): this; toJSON(): object; /** @hidden */ toJSON(_: string, inputs: Map): object; /** @hidden */ toString(): string; /** @hidden */ get nonStatementChildren(): ReadonlyArray; }