import { JsonObject, SingleOrArray } from "../../../../types.mjs";
import { W3cV2EnvelopedVerifiableCredential, W3cV2EnvelopedVerifiableCredentialOptions } from "../credential/W3cV2EnvelopedVerifiableCredential.mjs";
import { W3cV2Holder, W3cV2HolderOptions } from "./W3cV2Holder.mjs";
import { W3cV2JsonPresentation } from "./W3cV2JsonPresentation.mjs";

//#region src/modules/vc/models/presentation/W3cV2Presentation.d.ts
interface W3cV2PresentationOptions {
  id?: string;
  context?: Array<string | JsonObject>;
  type?: SingleOrArray<string>;
  verifiableCredential: SingleOrArray<W3cV2EnvelopedVerifiableCredentialOptions>;
  holder?: string | W3cV2HolderOptions;
}
declare class W3cV2Presentation {
  constructor(options: W3cV2PresentationOptions);
  context: Array<string | JsonObject>;
  id?: string;
  type: SingleOrArray<string>;
  holder?: string | W3cV2Holder;
  verifiableCredential: SingleOrArray<W3cV2EnvelopedVerifiableCredential>;
  vc?: never;
  vp?: never;
  get holderId(): string | undefined;
  toJSON(): W3cV2JsonPresentation;
}
//#endregion
export { W3cV2Presentation, W3cV2PresentationOptions };
//# sourceMappingURL=W3cV2Presentation.d.mts.map