integreat
Version:
Node.js integration layer
23 lines (22 loc) • 1.01 kB
TypeScript
import EventEmitter from 'node:events';
import Auth from './service/Auth.js';
import Schema from './schema/Schema.js';
import Service from './service/Service.js';
import type { Definitions, Resources, Middleware, Dispatch, Action, Response, Authenticator } from './types.js';
import type { AuthDef } from './service/types.js';
export declare const setUpAuth: (authenticators?: Record<string, Authenticator>) => (def: AuthDef) => Auth;
export default class Instance extends EventEmitter {
#private;
id?: string;
services: Record<string, Service>;
schemas: Map<string, Schema>;
identType?: string;
queueService?: string;
dispatch: Dispatch;
dispatchScheduled: (from: Date, to: Date) => Promise<Action[]>;
constructor(defs: Definitions, resources: Resources, middlewareForDispatch?: Middleware[], middlewareForService?: Middleware[]);
get dispatchedCount(): number;
listen(): Promise<Response>;
stopListening(): Promise<Response>;
close(): Promise<Response>;
}