/// <reference types="node" />
/// <reference types="node" />
import { type Socket } from 'net';
import { EventEmitter } from 'events';
export type MemcachedOptions = {
    prefix: string;
    socketTimeout: number;
};
export default class Memcached extends EventEmitter {
    client: Socket;
    isReady: boolean;
    opts: MemcachedOptions;
    constructor(port: number, host: string, opts?: any);
    ready(): Promise<unknown>;
    command(cmd: string, key?: string, args?: Array<string>): Promise<string>;
    flush(): Promise<string>;
    store(command: string, key: string, value: string | number, ttl?: number): Promise<boolean>;
    set(key: string, value: string | number, ttl?: number): Promise<boolean>;
    add(key: string, value: string | number, ttl?: number): Promise<boolean>;
    get(key: string): Promise<string | false>;
    del(key: string): Promise<boolean>;
    incr(key: string, value?: number): Promise<number | false>;
    decr(key: string, value?: number): Promise<number | false>;
    ping(): Promise<boolean>;
    end(): Promise<void>;
}
