import { IAuthManager } from './auth-manager/types';
import { IEncryptionManager } from './encryption-manager/types';
export * from './auth-manager/types';
export * from './encryption-manager/types';
export declare type GetContentPayload = {
    key: string;
};
export declare type GetContentResponsePayload = {
    id: string;
    content: string;
};
export declare type CreateContentPayload = {
    key: string;
    content: string;
};
export declare type CreateContentResponse = {
    id: string;
};
export declare type DeleteTokenPayload = {
    key: string;
    id?: string;
};
export declare type SwapContentPayload = {
    key: string;
    content: string;
    id?: string;
};
export declare type SwapContentResponse = {
    id: string;
};
export declare type StorageInformation = {
    used: number;
    available: number;
};
export declare type Backup = {
    key: string;
    id: string;
}[];
export declare type Config = {
    serviceUrl: string;
    authManager?: IAuthManager;
    encryptionManager: IEncryptionManager;
};
export interface IIPFSCpinnerClient {
    new (config: Config): any;
    get({ key }: GetContentPayload): Promise<GetContentResponsePayload[]>;
    getKeys(): Promise<string[]>;
    getStorageInformation(): Promise<StorageInformation>;
    getBackup(): Promise<Backup>;
    create(payload: CreateContentPayload): Promise<CreateContentResponse>;
    delete(payload: DeleteTokenPayload): Promise<boolean | void>;
    swap(payload: SwapContentPayload): Promise<SwapContentResponse>;
}
//# sourceMappingURL=index.d.ts.map