import { Multiaddr } from '@multiformats/multiaddr';
import type { Controller, ControllerOptions, InitOptions, IPFSAPI, PeerData } from './index.js';
/**
 * Controller for in process nodes
 */
declare class InProc implements Controller {
    path: string;
    api: IPFSAPI;
    subprocess: null;
    opts: ControllerOptions;
    initialized: boolean;
    started: boolean;
    clean: boolean;
    apiAddr: Multiaddr;
    private initOptions;
    private readonly disposable;
    private _peerId;
    constructor(opts: ControllerOptions);
    get peer(): PeerData;
    setExec(): Promise<void>;
    private _setApi;
    init(initOptions?: InitOptions): Promise<Controller>;
    cleanup(): Promise<Controller>;
    start(): Promise<Controller>;
    stop(): Promise<Controller>;
    /**
     * Get the pid of the `ipfs daemon` process
     */
    pid(): Promise<number>;
    version(): Promise<string>;
}
export default InProc;
//# sourceMappingURL=ipfsd-in-proc.d.ts.map