export declare const keySymbol: unique symbol; export declare const indexSymbol: unique symbol; export declare const dictSymbol: unique symbol; type GetIndex = { [key in typeof indexSymbol]: number; }; type ToPrimitive = { [key in typeof Symbol.toPrimitive]: () => string; }; type DeepPartial = T extends object ? { [P in keyof T]?: DeepPartial; } : T; export type EffCSSStyleSheet = { disabled: boolean; cssRules: Iterable<{ cssText: string; }> & { length: number; } & { [index: number]: { cssText: string; }; }; insertRule(rule: string, index: number): number; deleteRule(index: number): void; replaceSync(rules: string): void; } & Record & Record | undefined>; export type Contract = { [key: string]: string | number | boolean | Contract; }; export type Scope = { key: string; counters: { variables: number; keyframes: number; layers: number; layersDeclarations: number; containers: number; selectors: number; }; cssText: { variables: string; keyframes: string; layers: string; containers: string; styles: string; }; }; export type Selectors = { [K in keyof T]: T[K] extends string | number ? { [S in T[K]]: string; } : T[K] extends boolean ? { [key in `${T[K]}`]: string; } : T[K] extends object ? string & Selectors : never; }; export type Generator = (selectors: Selectors) => object; export type ClassName = (rule: object) => string; export type ClassNamesResolver = (params: DeepPartial) => string; export type ClassNames = (generator: Generator) => ClassNamesResolver; export type Attribute = (rule: object) => object; export type AttributesResolver = (params: DeepPartial) => object; export type Attributes = (generator: Generator) => AttributesResolver; export type CustomStyles = (generator: () => object) => (() => null); export type VariableDescription = { syntax?: string; inherits?: boolean; initialValue?: string | number | boolean | null; }; export type VariableConfig = string | number | boolean | VariableDescription; export type VariableResolver = string & ((fallback?: any) => string) & ToPrimitive & GetIndex; export type Variable = (description?: T) => VariableResolver; export type VariablesResolvers> = { [key in keyof T]: VariableResolver; }; export type Variables = >(description: T) => VariablesResolvers; export type AnimationConfig = Record; export type AnimationResolver = string & (() => string) & ToPrimitive; export type Animation = >(description: T) => AnimationResolver; export type AnimationsResolvers> = Record; export type Animations = >(description: T) => AnimationsResolvers; export type LayerResolver = string & (() => string) & ToPrimitive; export type Layer = () => LayerResolver; export type Layers = (description: T[]) => Record, LayerResolver>; export type ContainerType = '' | 'normal' | 'inline-size' | 'size' | 'anchored' | 'scroll-state' | 'inline-size scroll-state' | 'size scroll-state'; export type ContainerResolver = string & (() => string) & ToPrimitive; export type Container = (type?: ContainerType) => ContainerResolver; export type ContainersResolvers> = { [key in keyof T]: ContainerResolver; }; export type Containers = >(description: T) => ContainersResolvers; export type Update = { (argument: VariablesResolvers>, value: { [key in T]?: string | number | boolean | null | undefined; }): void; (argument: VariableResolver, value: string | number | boolean | null | undefined): void; }; export {};