import { StateDescriptor } from './types';
export declare function boolean(initialValue?: boolean): StateDescriptor<boolean, boolean, {
    (): boolean;
    value: boolean;
    set(value: boolean | ((currentValue: boolean) => boolean)): void;
}>;
export declare function number(initialValue?: number): StateDescriptor<number, number, {
    (): number;
    value: number;
    set(value: number | ((currentValue: number) => number)): void;
}>;
export declare function string(initialValue?: string): StateDescriptor<string, string, {
    (): string;
    value: string;
    set(value: string | ((currentValue: string) => string)): void;
}>;
export declare function scalar<S>(initialState: S): StateDescriptor<S, S, {
    (): S;
    value: S;
    set(value: S | ((currentValue: S) => S)): void;
}>;
export declare function serializedScalar<S, T>(initialState: T, serializer: {
    deserialize: (serialized: S) => T;
    serialize: (deserialized: T) => S;
}): StateDescriptor<S, T, {
    (): T;
    value: T;
    set(value: T | ((currentValue: T) => T)): void;
}>;
//# sourceMappingURL=scalar.d.ts.map