import type { OpenId4VcPluginOptions } from '../types'; import { X509Module } from '@credo-ts/core'; import { OpenId4VcModule, type OpenId4VciCredentialRequestToCredentialMapper } from '@credo-ts/openid4vc'; import { type Express } from 'express'; export interface OpenId4VcIssuerRequestMapper { mapCredentialRequest: OpenId4VciCredentialRequestToCredentialMapper; getVctMetadata: (configurationId: string) => Record | undefined; } export interface OpenId4VcAgentModules { [key: string]: unknown; openId4Vc: OpenId4VcModule; x509: X509Module; } export interface OpenId4VcSdkPlugin { modules: OpenId4VcAgentModules; publicMiddleware: Express; } export declare function setupOpenId4Vc(options: OpenId4VcPluginOptions, getIssuerService?: () => OpenId4VcIssuerRequestMapper): OpenId4VcSdkPlugin;