UNPKG

@krebitdao/reputation-passport

Version:

Krebit SDK for Verified Credentials

115 lines 4.58 kB
import { ethers } from 'ethers'; import { CeramicClient } from '@ceramicnetwork/http-client'; import { DIDDataStore } from '@glazed/did-datastore'; import { W3CCredential } from '@krebitdao/eip712-vc'; import { ClaimProps } from '../utils/index.js'; import { IConfigProps } from '../config/index.js'; interface IProps extends IConfigProps { wallet: ethers.Signer; ethProvider: ethers.providers.Provider | ethers.providers.ExternalProvider; address: string; } interface IssuerProps { first?: number; type: string; } interface StampsProps { first?: number; type?: string; claimId?: string; } interface EncryptedProps { encryptedSymmetricKey: string; encryptedString?: string; accessControlConditions?: any[]; unifiedAccessControlConditions?: string; } export declare class Krebit { ceramic: CeramicClient; idx: DIDDataStore; address: string; did: string; krbContract: any; nftContract: any; wallet: ethers.Signer; ethProvider: ethers.providers.Provider | ethers.providers.ExternalProvider; private currentConfig; private biconomy; constructor(props?: IProps); connect: (currentSession?: string, defaultChainId?: string) => Promise<string>; isConnected: () => Promise<boolean>; setTypeSchema: (type: string, schema: any) => Promise<string>; getTypeSchema: (type?: string, did?: string) => Promise<ModelTypeAliases>; getCredential: (vcId: string) => Promise<W3CCredential>; checkCredential: (w3cCredential: W3CCredential) => boolean; validCredentialSignature: (w3cCredential: W3CCredential) => boolean; isCredentialExpired: (w3cCredential: W3CCredential) => boolean; getEncryptedCredentialConditions: (vcId: string) => Promise<any>; shareEncryptedCredentialWith: (vcId: string, newAccessControlConditions: any[], permanent?: boolean) => Promise<void>; removeAllEncryptedCredentialShares: (vcId: string) => Promise<void>; decryptCredential: (w3cCredential: W3CCredential) => any; encryptClaimValue: (value: any, ethereumAddress: string) => Promise<{ unifiedAccessControlConditions: string; encryptedString: string; encryptedSymmetricKey: any; chain: "mumbai" | "polygon" | "goerli" | "mainnet"; }>; decryptClaimValue: (encryptedClaimValue: EncryptedProps) => Promise<any>; getClaimValue: (w3cCredential: W3CCredential) => any; compareClaimValueHash: (claimValue: any, w3cCredential: W3CCredential) => boolean; getIssuers: (props: IssuerProps) => Promise<any>; issue: (claim: ClaimProps) => Promise<{ proof: import("@krebitdao/eip712-vc").Proof; '@context': string[]; type: string[]; id: string; issuer: { id: string; ethereumAddress: string; }; credentialSubject: { id: string; trust: number; stake: number; price: number; nbf: number; exp: number; value: any; type: string; typeSchema: string; ethereumAddress: string; did: string; expirationDate: string; tags?: string[]; encrypt?: "hash" | "lit" | "plain"; shareEncryptedWith?: string; }; credentialSchema: { id: string; type: string; }; issuanceDate: string; expirationDate: string; }>; stampCredential: (w3cCredential: W3CCredential) => Promise<any>; mintCredentialNFT: (w3cCredential: W3CCredential) => Promise<any>; stamp: (w3cCredential: W3CCredential) => Promise<any>; mintNFT: (w3cCredential: W3CCredential) => Promise<any>; isMinted: (w3cCredential: W3CCredential) => Promise<any>; nftBalance: (credentialType: string) => Promise<any>; stampCost: (w3cCredential: W3CCredential) => Promise<{ estimatedFee: string; totalCost: string; }>; getStamps: (props: StampsProps) => Promise<any>; checkStamp: (stamp: any) => Promise<any>; revokeStamp: (stamp: any, reason: string) => Promise<any>; suspendStamp: (stamp: any, reason: string) => Promise<any>; expireStamp: (stamp: any) => Promise<any>; removeStamp: (stamp: any, reason: string) => Promise<any>; createDocument: (content: any, tags: string[], schema: string, family?: string) => Promise<string>; getDocument: (streamId: string) => Promise<unknown>; updateDocument: (content: any, streamId: string) => Promise<void>; } export {}; //# sourceMappingURL=Krebit.d.ts.map