import { Token } from "../../model/tokens/SDKToken";
import { AnyMultiLayerToken, AnySingleLayerToken } from "../../model/tokens/SDKTokenValue";
import { TokenUtilPreviewMetadata, TokenUtilPreviewReferenceInfo, TokenUtilPreviewResolvedStyle, TokenUtilPreviewTokenType, TokenUtilPreviewTokenValueSegment } from "./TokenUtilPreviewTypes";
export declare class TokenUtilPreviewGenerator {
    /** Generates segments required for rendering of the preview. Only usable with Supernova preview */
    static tokenPreviewSegments(token: Token, allTokens: Map<string, Token>): Array<TokenUtilPreviewTokenValueSegment | "separator">;
    /** Generates metadata required for rendering of the preview. Only usable with Supernova preview */
    static tokenPreviewMetadata(token: Token, allTokens: Map<string, Token>, layerIndex?: number): TokenUtilPreviewMetadata;
    /** Generates style required for rendering of the preview. Only usable with Supernova preview */
    static tokenPreviewStyle(token: Token, overridenStyles?: {
        fontFamily?: string;
        fontWeight?: string;
    }): TokenUtilPreviewResolvedStyle;
    /** Generates adjusted preview type required for rendering of the preview. Only usable with Supernova preview */
    static tokenPreviewType(token: Token): TokenUtilPreviewTokenType;
    /** Generates per-value description of passed token. Only usable with Supernova preview */
    static tokenReferenceInfoForSingleLayerToken(token: AnySingleLayerToken, allTokens: Map<string, Token>): TokenUtilPreviewReferenceInfo;
    /** Generates per-value description of passed token. Only usable with Supernova preview */
    static tokenReferenceInfoForMultiLayerToken(token: AnyMultiLayerToken, layerIndex: number, allTokens: Map<string, Token>): TokenUtilPreviewReferenceInfo;
}
