import type { ProofFormat } from './ProofFormat' import type { ProofFormatAcceptProposalOptions, ProofFormatAcceptRequestOptions, ProofFormatCreateProposalOptions, FormatCreateRequestOptions, ProofFormatProcessPresentationOptions, ProofFormatCreateReturn, ProofFormatProcessOptions, ProofFormatGetCredentialsForRequestOptions, ProofFormatGetCredentialsForRequestReturn, ProofFormatSelectCredentialsForRequestOptions, ProofFormatSelectCredentialsForRequestReturn, ProofFormatAutoRespondProposalOptions, ProofFormatAutoRespondRequestOptions, ProofFormatAutoRespondPresentationOptions, } from './ProofFormatServiceOptions' import type { AgentContext } from '../../../agent' export interface ProofFormatService { formatKey: PF['formatKey'] // proposal methods createProposal( agentContext: AgentContext, options: ProofFormatCreateProposalOptions ): Promise processProposal(agentContext: AgentContext, options: ProofFormatProcessOptions): Promise acceptProposal( agentContext: AgentContext, options: ProofFormatAcceptProposalOptions ): Promise // request methods createRequest(agentContext: AgentContext, options: FormatCreateRequestOptions): Promise processRequest(agentContext: AgentContext, options: ProofFormatProcessOptions): Promise acceptRequest( agentContext: AgentContext, options: ProofFormatAcceptRequestOptions ): Promise // presentation methods processPresentation(agentContext: AgentContext, options: ProofFormatProcessPresentationOptions): Promise // credentials for request getCredentialsForRequest( agentContext: AgentContext, options: ProofFormatGetCredentialsForRequestOptions ): Promise> selectCredentialsForRequest( agentContext: AgentContext, options: ProofFormatSelectCredentialsForRequestOptions ): Promise> // auto accept methods shouldAutoRespondToProposal( agentContext: AgentContext, options: ProofFormatAutoRespondProposalOptions ): Promise shouldAutoRespondToRequest( agentContext: AgentContext, options: ProofFormatAutoRespondRequestOptions ): Promise shouldAutoRespondToPresentation( agentContext: AgentContext, options: ProofFormatAutoRespondPresentationOptions ): Promise supportsFormat(formatIdentifier: string): boolean }