import { ethers } from 'ethers';
import { CeramicClient } from '@ceramicnetwork/http-client';
import { DIDDataStore } from '@glazed/did-datastore';
import { W3CCredential } from '@krebitdao/eip712-vc';
import { IConfigProps } from '../config/index.js';
interface IProps extends IConfigProps {
    ethProvider?: ethers.providers.Provider | ethers.providers.ExternalProvider;
    address?: string;
}
interface StampsProps {
    first?: number;
    type?: string;
    claimId?: string;
}
export declare class Passport {
    ceramic: CeramicClient;
    idx: DIDDataStore;
    did: string;
    ens: string;
    uns: string;
    address: string;
    ethProvider: ethers.providers.Provider | ethers.providers.ExternalProvider;
    private currentConfig;
    constructor(props?: IProps);
    connect: (currentSession?: string, defaultChainId?: string) => Promise<string>;
    isConnected: () => Promise<boolean>;
    getReputation: () => Promise<any>;
    read: (value: string) => Promise<void>;
    readEns: (name: string) => Promise<{
        ens: string;
        address: any;
    }>;
    readUns: (name: string) => Promise<{
        uns: string;
        address: string;
    }>;
    getProfile: () => Promise<ModelTypeAliases>;
    updateProfile: (profile: any) => Promise<import("@ceramicnetwork/streamid").StreamID>;
    addVerifiableCredential: (w3cCredential: W3CCredential) => Promise<string>;
    getCredential: (vcId: string) => Promise<W3CCredential>;
    getClaimValue: (w3cCredential: W3CCredential) => any;
    checkCredentialStatus: (vcId: string) => Promise<any>;
    updateVerifiableCredential: (credentialId: string, w3cCredential: W3CCredential) => Promise<void>;
    addIssued: (w3cCredential: W3CCredential) => Promise<string>;
    revokeCredential: (vcId: string) => Promise<string>;
    removeIssued: (vcId: string) => Promise<any>;
    getIssued: (type?: string) => Promise<any[]>;
    addClaim: (w3cCredential: W3CCredential) => Promise<string>;
    removeClaim: (vcId: string) => Promise<any>;
    getClaims: (type?: string) => Promise<any[]>;
    addCredential: (w3cCredential: W3CCredential) => Promise<string>;
    removeCredential: (vcId: string) => Promise<any>;
    getCredentials: (type?: string, tag?: string) => Promise<any[]>;
    getSkills: () => Promise<any[]>;
    getStamps: (props: StampsProps) => Promise<any>;
    createDocument: (content: any, tags: string[], schema: string, family?: string) => Promise<string>;
}
export {};
//# sourceMappingURL=Passport.d.ts.map