UNPKG

@sphereon/ssi-sdk.contact-manager-rest-api

Version:

49 lines (44 loc) 2.7 kB
import { GenericAuthArgs, ISingleEndpointOpts, ExpressSupport } from '@sphereon/ssi-express-support'; import { IContactManager } from '@sphereon/ssi-sdk.contact-manager'; import { IKeyManager, IDIDManager, IAgentContext, TAgent } from '@veramo/core'; import { Express, Router } from 'express'; type ContactManagerMRestApiFeatures = 'party_read' | 'party_write' | 'party_type_read' | 'identity_read'; interface IContactManagerAPIEndpointOpts { endpointOpts?: { basePath?: string; globalAuth?: GenericAuthArgs & { secureContactManagerEndpoints?: boolean; }; partyRead?: ISingleEndpointOpts; partyWrite?: ISingleEndpointOpts; partyTypeRead?: ISingleEndpointOpts; identityRead?: ISingleEndpointOpts; }; enableFeatures?: ContactManagerMRestApiFeatures[]; } type IRequiredPlugins = IContactManager & IKeyManager & IDIDManager; type IRequiredContext = IAgentContext<IRequiredPlugins>; declare class ContactManagerApiServer { private readonly _express; private readonly _agent; private readonly _opts?; private readonly _router; constructor(args: { agent: TAgent<IRequiredPlugins>; expressSupport: ExpressSupport; opts?: IContactManagerAPIEndpointOpts; }); get express(): Express; get router(): Router; get agent(): TAgent<IRequiredPlugins>; get opts(): IContactManagerAPIEndpointOpts | undefined; } declare function partiesReadEndpoint(router: Router, context: IRequiredContext, opts?: ISingleEndpointOpts): void; declare function partyReadEndpoint(router: Router, context: IRequiredContext, opts?: ISingleEndpointOpts): void; declare function partyWriteEndpoint(router: Router, context: IRequiredContext, opts?: ISingleEndpointOpts): void; declare function partyDeleteEndpoint(router: Router, context: IRequiredContext, opts?: ISingleEndpointOpts): void; declare function partiesTypeReadEndpoint(router: Router, context: IRequiredContext, opts?: ISingleEndpointOpts): void; declare function partyTypeReadEndpoint(router: Router, context: IRequiredContext, opts?: ISingleEndpointOpts): void; declare function identitiesReadEndpoint(router: Router, context: IRequiredContext, opts?: ISingleEndpointOpts): void; declare function identityReadEndpoints(router: Router, context: IRequiredContext, opts?: ISingleEndpointOpts): void; export { ContactManagerApiServer, type ContactManagerMRestApiFeatures, type IContactManagerAPIEndpointOpts, type IRequiredContext, type IRequiredPlugins, identitiesReadEndpoint, identityReadEndpoints, partiesReadEndpoint, partiesTypeReadEndpoint, partyDeleteEndpoint, partyReadEndpoint, partyTypeReadEndpoint, partyWriteEndpoint };