@creditkarma/memcached
Version:
A fully featured Memcached API client, supporting both single and clustered Memcached servers through consistent hashing and failover/failure. Memcached is rewrite of nMemcached, which will be deprecated in the near future.
50 lines (49 loc) • 1.5 kB
TypeScript
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';