vulcain-corejs
Version:
Vulcain micro-service framework
36 lines (35 loc) • 1.25 kB
TypeScript
import { HandlerFactory, CommonRequestData, CommonActionMetadata, ServiceHandlerMetadata, CommonRequestResponse, IManager } from './common';
import { IContainer } from '../di/resolvers';
import { Domain } from '../schemas/schema';
import { RequestContext } from '../servers/requestContext';
export interface QueryData extends CommonRequestData {
data: any;
maxByPage?: number;
page?: number;
}
export interface QueryResponse<T> extends CommonRequestResponse<T> {
maxByPage?: number;
page?: number;
totalPages?: number;
total?: number;
}
export interface QueryMetadata extends ServiceHandlerMetadata {
}
export interface QueryActionMetadata extends CommonActionMetadata {
}
export declare class QueryManager implements IManager {
container: IContainer;
private _domain;
private _hostname;
static handlerFactory: HandlerFactory;
/**
* Get the current domain model
* @returns {Domain}
*/
domain: Domain;
constructor(container: IContainer);
private createResponse(ctx, query, error?);
getMetadata(command: CommonRequestData): QueryMetadata;
private validateRequestData(info, query);
runAsync(query: QueryData, ctx: RequestContext): Promise<QueryResponse<any>>;
}