import { W3cPresentation } from "../models/presentation/W3cPresentation.mjs";
import { W3cJsonLdVerifiablePresentation } from "../linked-data-proofs/models/W3cJsonLdVerifiablePresentation.mjs";
import "../models/index.mjs";
import { W3cCredentialRecord } from "../repository/W3cCredentialRecord.mjs";
import "../repository/index.mjs";
import { DifPresentationExchangeDefinition, DifPresentationExchangeSubmission } from "../../dif-presentation-exchange/models/index.mjs";
import "../../dif-presentation-exchange/index.mjs";
import { AgentContext } from "../../../agent/context/AgentContext.mjs";
import "../../../agent/context/index.mjs";
//#region src/modules/vc/anoncreds-w3c-credential/IAnonCredsW3cCredentialService.d.ts
export declare const ANONCREDS_W3C_CREDENTIAL_CRYPTOSUITE: "anoncreds-2023";
export interface AnonCredsW3cCredentialCreatePresentation {
  selectedCredentialRecords: W3cCredentialRecord[];
  presentationDefinition: DifPresentationExchangeDefinition;
  presentationSubmission: DifPresentationExchangeSubmission;
  challenge: string;
}
export interface AnonCredsW3cCredentialVerifyPresentation {
  presentation: W3cJsonLdVerifiablePresentation;
  presentationDefinition: DifPresentationExchangeDefinition;
  presentationSubmission: DifPresentationExchangeSubmission;
  challenge: string;
}
export declare const AnonCredsW3cCredentialServiceSymbol: unique symbol;
/**
 * We keep this standalone and don't integrate it with for example the SignatureSuiteRegistry
 * due to its unique properties, in order to not pollute the existing apis.
 */
export interface IAnonCredsW3cCredentialService {
  createPresentation(agentContext: AgentContext, options: AnonCredsW3cCredentialCreatePresentation): Promise<W3cPresentation>;
  verifyPresentation(agentContext: AgentContext, options: AnonCredsW3cCredentialVerifyPresentation): Promise<boolean>;
}
//#endregion
//# sourceMappingURL=IAnonCredsW3cCredentialService.d.mts.map