export declare type ServerList = Array<string>;
export interface IServerPriorityMap {
    [host: string]: number;
}
export declare type Server = string;
export declare type Servers = ServerList | IServerPriorityMap | Server;
export declare type Key = string | Array<string>;
export declare type ErrorValue = Error | Array<Error> | undefined | null;
export declare type CallbackFunction<T = any> = (err: ErrorValue, result: T) => void;
export declare type ParseResult = [
    number,
    any
];
export interface IMemcachedConfig {
    maxKeySize: number;
    maxExpiration: number;
    maxValue: number;
    activeQueries: number;
    maxQueueSize: number;
    algorithm: string;
    compatibility: string;
    poolSize: number;
    retries: number;
    factor: number;
    minTimeout: number;
    maxTimeout: number;
    randomize: boolean;
    reconnect: number;
    timeout: number;
    failures: number;
    failuresTimeout: number;
    retry: number;
    idle: number;
    remove: boolean;
    redundancy: number;
    keyCompression: boolean;
    namespace: string;
    debug: boolean;
    defaultTTL: number;
    failOverServers: Array<string>;
}
export declare type MemcachedOptions = Partial<IMemcachedConfig>;
export interface ICasResult {
    cas: string;
    value: any;
}
export declare type DecoderFunction<T> = (input: string) => T;
export declare type EncoderFunction<T> = (input: T) => string;
export declare type eventNames = 'issue' | 'failure' | 'reconnecting' | 'reconnect' | 'remove';
