actionhero
Version:
The reusable, scalable, and quick node.js API server for stateless and stateful applications
58 lines (57 loc) • 1.66 kB
TypeScript
import { ActionheroLogLevel } from "../modules/log";
import { Action } from "./action";
import { Connection } from "./connection";
export declare enum ActionsStatus {
Complete = 0,
GenericError = 1,
ServerShuttingDown = 2,
TooManyRequests = 3,
UnknownAction = 4,
UnsupportedServerType = 5,
MissingParams = 6,
ValidatorErrors = 7
}
export declare class ActionProcessor<ActionClass extends Action> {
connection: Connection;
action: ActionClass["name"];
toProcess: boolean;
toRender: boolean;
messageId: number | string;
params: {
action?: string;
apiVersion?: string | number;
[key: string]: any;
};
missingParams: Array<string>;
validatorErrors: Array<string | Error>;
actionStartTime: number;
actionTemplate: ActionClass;
working: boolean;
response: {
[key: string]: any;
};
duration: number;
actionStatus: ActionsStatus;
session: any;
constructor(connection: Connection);
private incrementTotalActions;
private incrementPendingActions;
getPendingActionCount(): number;
private completeAction;
private logAndReportAction;
applyDefaultErrorLogLineFormat(error: NodeJS.ErrnoException): {
errorFields: {
error: string;
};
logLevel: ActionheroLogLevel;
};
private preProcessAction;
private postProcessAction;
private reduceParams;
private prepareStringMethod;
private validateParam;
private validateParams;
lockParams(): void;
processAction(actionName?: string, apiVersion?: string | number): Promise<this>;
private runAction;
}