import { StorageTranscoder } from './storage-transcoder';
/** Transcoder that encodes values as JSON strings. */
export declare class JsonStorageTranscoder implements StorageTranscoder<any> {
    encode(value: any): string;
    decode(value: string): any;
}
/** Transcoder that encodes/decodes strings **as is**, i.e. values are not modified in any way. */
export declare class StringStorageTranscoder implements StorageTranscoder<string> {
    encode(value: string): string;
    decode(value: string): string;
}
/** Transcoder that encodes/decodes `boolean` values. */
export declare class BooleanStorageTranscoder implements StorageTranscoder<boolean> {
    encode(value: boolean): string;
    decode(value: string): boolean | undefined;
}
/** Transcoder that encodes/decodes `number` values. */
export declare class NumberStorageTranscoder implements StorageTranscoder<number> {
    encode(value: number): string;
    decode(value: string): number | undefined;
}
/** Transcoder that encodes/decodes `Date` values to ISO strings. */
export declare class DateIsoStorageTranscoder implements StorageTranscoder<Date> {
    encode(value: Date): string;
    decode(value: string): Date | undefined;
}
/** Transcoder that encodes/decodes `Date` values to epoch timestamps. */
export declare class DateEpochStorageTranscoder implements StorageTranscoder<Date> {
    encode(value: Date): string;
    decode(value: string): Date | undefined;
}
/** A set of storage transcoders. */
export declare const StorageTranscoders: {
    /** Transcoder that encodes values as JSON strings. */
    JSON: StorageTranscoder<any>;
    /** Transcoder that encodes/decodes strings **as is**, i.e. values are not modified in any way. */
    STRING: StorageTranscoder<string>;
    /** Transcoder that encodes/decodes `boolean` values. */
    BOOLEAN: StorageTranscoder<boolean>;
    /** Transcoder that encodes/decodes `number` values. */
    NUMBER: StorageTranscoder<number>;
    /** Transcoder that encodes/decodes `Date` values into ISO strings. */
    DATE_ISO_STRING: StorageTranscoder<Date>;
    /** Transcoder that encodes/decodes `Date` values into epoch timestamps. */
    DATE_EPOCH_TIME: StorageTranscoder<Date>;
};
