type GetFields<T, K = {
    [P in keyof T]: T[P] extends Function ? never : P;
}> = K[keyof K];
type SetState<T extends Record<string, any>, F extends GetFields<T>> = (data: {
    [P in F]?: T[P];
} | ((state: T) => void)) => void;
export declare const useLocalState: <T extends Record<string, any>>(data: (() => T) | T) => [T, SetState<T, GetFields<T>>];
export {};
