import type { Link } from 'multiformats';
import { EventView } from '@alanshaw/pail/clock';
import { AccountConnectIPFS } from './connect-ipfs-account';
import { DatabaseConnectIPFS } from './connect-ipfs-helpers';
export type CarClockHead = Link<EventView<{
    dbMeta: Uint8Array;
}>, number, number, 1>[];
export type ConnectIPFSParams = {
    name: string;
    schema: string;
};
export type ConnectIPFSCallbacks = {
    resolve: (clockSpaceDID: `did:${string}:${string}`) => void;
    reject: (reason: string) => void;
};
export declare class ConnectIPFS extends DatabaseConnectIPFS {
    accountConnection: AccountConnectIPFS;
    authorized: boolean | null;
    params: ConnectIPFSParams;
    clockSpaceDID: `did:${string}:${string}`;
    constructor(params: ConnectIPFSParams);
    authorize(email: `${string}@${string}`): Promise<void>;
    accountEmail(): Promise<`${string}@${string}` | undefined>;
    authorizedClient(): Promise<import("@web3-storage/w3up-client/dist/src").Client>;
    clockSpaceDIDForDb(): `did:${string}:${string}`;
    initializeClient(): Promise<void>;
}
