/**
 * @typedef {import('@libp2p/interface-keychain').KeyChain} Keychain
 */
export class KeyAPI {
    /**
     * @param {object} config
     * @param {Keychain} config.keychain
     */
    constructor({ keychain }: {
        keychain: Keychain;
    });
    gen: (name: string, options?: import("ipfs-core-types/src/key/index.js").GenOptions | undefined) => Promise<import("ipfs-core-types/src/key/index.js").Key>;
    list: (options?: import("ipfs-core-types").AbortOptions | undefined) => Promise<import("ipfs-core-types/src/key/index.js").Key[]>;
    rm: (name: string, options?: import("ipfs-core-types").AbortOptions | undefined) => Promise<import("ipfs-core-types/src/key/index.js").Key>;
    rename: (oldName: string, newName: string, options?: import("ipfs-core-types").AbortOptions | undefined) => Promise<import("ipfs-core-types/src/key/index.js").RenameKeyResult>;
    export: (name: string, password: string, options?: import("ipfs-core-types").AbortOptions | undefined) => Promise<string>;
    import: (name: string, pem: string, password: string, options?: import("ipfs-core-types").AbortOptions | undefined) => Promise<import("ipfs-core-types/src/key/index.js").Key>;
    info: (name: string, options?: import("ipfs-core-types").AbortOptions | undefined) => Promise<import("ipfs-core-types/src/key/index.js").Key>;
}
export type Keychain = import('@libp2p/interface-keychain').KeyChain;
//# sourceMappingURL=index.d.ts.map