declare type StateAsArray = [T, (val: T | ((prev: T) => T)) => void]; export declare function subscribe(componentId: symbol, component: { requestUpdate: () => void; }): void; export declare function clearState(componentId: symbol): void; export declare function useState(initialValue: T): [T, (val: T | ((prev: T) => T)) => void]; export declare function useStates(tValue: T, uValue: U): [StateAsArray, StateAsArray]; export declare function useStates(tValue: T, uValue: U, vValue: V): [StateAsArray, StateAsArray, StateAsArray]; export declare function useStates(tValue: T, uValue: U, vValue: V, wValue: W): [StateAsArray, StateAsArray, StateAsArray, StateAsArray]; export declare function useStates(tValue: T, uValue: U, vValue: V, wValue: W, zValue: Z): [ StateAsArray, StateAsArray, StateAsArray, StateAsArray, StateAsArray ]; export {};