export class VerifiableCredential { static verifyID(id: any): void; static fromJSON(json: object): VerifiableCredential; constructor(id: string); context: string[]; type: string[]; credentialSubject: any[]; setId(id: string): VerifiableCredential; id: string | undefined; setIssuer(issuer: string): VerifiableCredential; issuer: any; setProof(proof: object): VerifiableCredential; proof: object | undefined; setSchema(id: string, type: string): void; credentialSchema: { id: string; type: string; } | undefined; validateSchema(schema: object): Promise; setContext(context: string | object): VerifiableCredential; addContext(context: string | object): VerifiableCredential; addType(type: string): VerifiableCredential; addSubject(subject: object): VerifiableCredential; setSubject(subject: object | array): VerifiableCredential; setStatus(status: object): VerifiableCredential; status: object | undefined; setIssuanceDate(issuanceDate: string): VerifiableCredential; issuanceDate: string | undefined; setExpirationDate(expirationDate: object): VerifiableCredential; expirationDate: object | undefined; toJSON(): object; sign(keyDoc: object, compactProof?: boolean, issuerObject?: object, addSuiteContext?: boolean, documentLoader?: null, type?: (jsonld | jwt | proofValue)): Promise; verify({ resolver, compactProof, skipRevocationCheck, skipSchemaCheck, suite }?: object): Promise; setFromJSON(json: object): VerifiableCredential; } export type VerifiableCredentialVerificationResult = { verified: boolean; results: array; error?: any; };