import { DTTokenReferenceResolver } from "../../tools/design-tokens/utilities/SDKDTTokenReferenceResolver"; import { TokenClassTypeMapToken } from "../../utils/TokenUtils"; import { ElementProperty } from "../elements/SDKElementProperty"; import { ElementPropertyValue } from "../elements/values/SDKElementPropertyValue"; import { DimensionTokenType, TokenType } from "../enums/SDKTokenType"; import { Unit } from "../enums/SDKUnit"; import { DimensionTokenRemoteModel, TokenRemoteModel } from "./remote/SDKRemoteTokenModel"; import { AnyDimensionTokenRemoteValue } from "./remote/SDKRemoteTokenValue"; import { Token } from "./SDKToken"; import { AnyDimensionTokenValue, BorderWidthTokenValue, DimensionTokenValue, DurationTokenValue, FontSizeTokenValue, LetterSpacingTokenValue, LineHeightTokenValue, OpacityTokenValue, ParagraphSpacingTokenValue, RadiusTokenValue, SizeTokenValue, SpaceTokenValue, ZIndexTokenValue } from "./SDKTokenValue"; export declare class DimensionCategoryToken extends Token { value: T; constructor(versionId: string, baseToken: TokenRemoteModel, value: T, alias: DimensionCategoryToken | null, properties: Array, propertyValues: Array); static create>(this: new (...args: any[]) => TToken, type: DimensionTokenType, versionId: string, brandId: string, name: string, description: string, value: string | number, alias: TToken | null, properties: Array, propertyValues: Array): TToken; static getCompatibleUnit(unit: Unit, type: DimensionTokenType): Unit; static getCompatibleMeasure(unit: Unit, type: DimensionTokenType, measure: number): number; static getDefaultUnit(type: DimensionTokenType, parsedDefinition?: number): Unit.pixels | Unit.ms | Unit.raw; static dimensionValueFromDefinition(definition: string | number, type: DimensionTokenType): OpacityTokenValue; static parseDimension(definition: string, type: DimensionTokenType): { measure: number; unit: Unit; }; static dimensionValueFromDefinitionOrReference(definition: any, referenceResolver: DTTokenReferenceResolver, tokenType: DimensionTokenType): BorderWidthTokenValue; toString(): string; static valueToString(value: AnyDimensionTokenValue, options?: { maxNumberOfDecimals?: number; clipTrailingZeroes?: boolean; }): string; static numberToString(value: number, options?: { maxNumberOfDecimals?: number; clipTrailingZeroes?: boolean; }): string; static unitToString(unit: Unit): string; toWriteObject(): DimensionTokenRemoteModel; static valueToWriteObject(value: AnyDimensionTokenValue): { aliasTo: string | undefined; value: AnyDimensionTokenRemoteValue; }; static valueToInternalWriteObject(value: AnyDimensionTokenValue | null): AnyDimensionTokenValue | null; } export declare class DimensionToken extends DimensionCategoryToken { tokenType: TokenType.dimension; } export declare class SizeToken extends DimensionCategoryToken { tokenType: TokenType.size; } export declare class SpaceToken extends DimensionCategoryToken { tokenType: TokenType.space; } export declare class OpacityToken extends DimensionCategoryToken { tokenType: TokenType.opacity; } export declare class FontSizeToken extends DimensionCategoryToken { tokenType: TokenType.fontSize; } export declare class LineHeightToken extends DimensionCategoryToken { tokenType: TokenType.lineHeight; } export declare class LetterSpacingToken extends DimensionCategoryToken { tokenType: TokenType.letterSpacing; } export declare class ParagraphSpacingToken extends DimensionCategoryToken { tokenType: TokenType.paragraphSpacing; } export declare class BorderWidthToken extends DimensionCategoryToken { tokenType: TokenType.borderWidth; } export declare class RadiusToken extends DimensionCategoryToken { tokenType: TokenType.radius; } export declare class DurationToken extends DimensionCategoryToken { tokenType: TokenType.duration; } export declare class ZIndexToken extends DimensionCategoryToken { tokenType: TokenType.zIndex; } export type AnyDimensionToken = DimensionToken | SizeToken | SpaceToken | OpacityToken | FontSizeToken | LineHeightToken | LetterSpacingToken | ParagraphSpacingToken | BorderWidthToken | RadiusToken | DurationToken | ZIndexToken; export declare const resolveDimension: (type: TK) => TokenClassTypeMapToken[TK];