type CSSVarFunction = `var(--${string})`; type Contract = { [key: string]: CSSVarFunction | null | Contract; }; type Primitive = string | boolean | number | null | undefined; type MapLeafNodes = { [Prop in keyof Obj]: Obj[Prop] extends Primitive ? LeafType : Obj[Prop] extends Record ? MapLeafNodes : never; }; type Styles = { [cssVarName: string]: string; }; declare function assignInlineVars(vars: Record): Styles; declare function assignInlineVars(contract: ThemeContract, tokens: MapLeafNodes): Styles; declare function setElementVars(element: HTMLElement, vars: Record): void; declare function setElementVars(element: HTMLElement, contract: ThemeContract, tokens: MapLeafNodes): void; export { assignInlineVars, setElementVars };