@sphereon/ssi-sdk.contact-manager-rest-api
Version:
49 lines (44 loc) • 2.7 kB
text/typescript
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 };