/*! * Copyright (c) 2022-2026 Interop Alliance. All rights reserved. */ import type { ILDContext, ILDType, ILinkedDataObject } from './LD.js'; export interface IIssuerObject extends ILinkedDataObject { id: string; url?: string; [x: string]: any; } export type ICompactJWT = string; export interface IProofDescription { id?: string; type?: string; cryptosuite?: string; created?: string; expires?: string; verificationMethod?: string | { id: string; }; proofPurpose?: string; proofValue?: string; domain?: string | string[]; challenge?: string; nonce?: string; previousProof?: string | string[]; '@context'?: ILDContext; [x: string]: unknown; } export interface IVerifiableCredential extends ILinkedDataObject { '@context': Array; id?: string; type: ILDType; issuer: string | IIssuerObject; credentialSubject: ICredentialSubject | ICredentialSubject[]; validFrom?: string; validUntil?: string; issuanceDate?: string; expirationDate?: string; credentialStatus?: ICredentialStatus | ICredentialStatus[]; credentialSchema?: ICredentialSchema | ICredentialSchema[]; relatedResource?: IRelatedResource | IRelatedResource[]; evidence?: IEvidence | IEvidence[]; refreshService?: IRefreshService | IRefreshService[]; termsOfUse?: ITermsOfUse | ITermsOfUse[]; confidenceMethod?: IConfidenceMethod | IConfidenceMethod[]; renderMethod?: IRenderMethod | IRenderMethod[]; proof?: IProofDescription | IProofDescription[]; [x: string]: any; } export interface ICredentialSubject extends ILinkedDataObject { [x: string]: any; } export interface ICredentialStatus extends ILinkedDataObject { id?: string; type: ILDType; [x: string]: any; statusPurpose?: string; statusListIndex?: string | number; statusListCredential?: string; } export interface ICredentialSchema { id: string; type: ILDType; [x: string]: any; } export interface ITermsOfUse { id?: string; type: ILDType; [x: string]: any; } export interface IRefreshService { type: ILDType; [x: string]: any; } export interface IRelatedResource { id: string; digestSRI: string; mediaType?: string; } export interface IEvidence { id?: string; type: ILDType; [x: string]: any; } export interface IConfidenceMethod { id?: string; type: ILDType; [x: string]: any; } export interface IRenderMethod { type: ILDType; [x: string]: any; } export interface IVerifiablePresentation extends ILinkedDataObject { '@context': ILDContext; type: ILDType; holder?: string; verifiableCredential?: IVerifiableCredential | IVerifiableCredential[]; refreshService?: IRefreshService; proof?: IProofDescription | IProofDescription[]; [x: string]: any; } //# sourceMappingURL=VCDM.d.ts.map