actionhero
    Preparing search index...

    Interface ActionheroConfigInterface

    interface ActionheroConfigInterface {
        errors: {
            _toExpand: boolean;
            connectionAlreadyInRoom: (connection: Connection, room: string) => string;
            connectionNotInRoom: (connection: Connection, room: string) => string;
            connectionRoomAndMessage: (connection: Connection) => string;
            connectionRoomExists: (room: string) => string;
            connectionRoomHasBeenDeleted: (room: string) => string;
            connectionRoomNotExist: (room: string) => string;
            connectionRoomRequired: () => string;
            fileNotFound: (connection: Connection) => string;
            fileNotProvided: (connection: Connection) => string;
            fileReadError: (connection: Connection, error: ErrnoException) => string;
            invalidParams: (
                data: ActionProcessor<any>,
                validationErrors: (string | Error)[],
            ) => string | Error;
            missingParams: (
                data: ActionProcessor<any>,
                missingParams: string[],
            ) => string;
            reportUnknownActions: boolean;
            serializers: {
                actionProcessor: (
                    error: ErrnoException,
                ) => { errorFields: { error: string }; logLevel: ActionheroLogLevel };
                servers: {
                    specHelper: (error: ErrnoException) => string | ErrnoException;
                    web: (error: ErrnoException) => string | ErrnoException;
                    websocket: (error: ErrnoException) => string | ErrnoException;
                };
            };
            serverShuttingDown: (data: ActionProcessor<any>) => string;
            tooManyPendingActions: (data: ActionProcessor<any>) => string;
            unknownAction: (data: ActionProcessor<any>) => string;
            unsupportedServerType: (data: ActionProcessor<any>) => string;
            verbNotAllowed: (connection: Connection, verb: string) => string;
            verbNotFound: (connection: Connection, verb: string) => string;
            genericError(
                data: ActionProcessor<any>,
                error: ErrnoException,
            ): Promise<ErrnoException>;
        };
        general: {
            apiVersion: string;
            cachePrefix: string;
            channel: string;
            cliIncludeInternal: boolean;
            defaultMiddlewarePriority: number;
            directoryFileType: string;
            disableParamScrubbing: boolean;
            enableResponseLogging: boolean;
            enforceConnectionProperties: boolean;
            fileRequestLogLevel: ActionheroLogLevel;
            filteredParams: string[]
            | (() => string[]);
            filteredResponse: string[] | (() => string[]);
            id: string;
            lockDuration: number;
            lockPrefix: string;
            missingParamChecks: string[];
            paths: {
                action: string[];
                cli: string[];
                dist: string;
                initializer: string[];
                log: string[];
                pid: string[];
                plugin: string[];
                public: string[];
                server: string[];
                src: string;
                task: string[];
                test: string[];
            };
            rpcTimeout: number;
            serverName: string;
            serverToken: string;
            simultaneousActions: number;
            startingChatRooms: Record<string, Record<string, any>>;
            welcomeMessage: string;
        };
        logger: {
            loggers: ActionheroConfigLoggerBuilderArray;
            maxLogArrayLength: number;
            maxLogStringLength: number;
        };
        plugins: PluginConfig;
        redis: {
            _toExpand: boolean;
            client: {
                args: {
                    db: number;
                    host: string;
                    password: string;
                    port: string
                    | number;
                    retryStrategy: (times: number) => number;
                    tls: { rejectUnauthorized: boolean };
                }[];
                buildNew: boolean;
                konstructor: any;
            };
            scanCount: number;
            stopTimeout: number;
            subscriber: {
                args: {
                    db: number;
                    host: string;
                    password: string;
                    port: string
                    | number;
                    retryStrategy: (times: number) => number;
                    tls: { rejectUnauthorized: boolean };
                }[];
                buildNew: boolean;
                konstructor: any;
            };
            tasks: {
                args: {
                    db: number;
                    host: string;
                    password: string;
                    port: string
                    | number;
                    retryStrategy: (times: number) => number;
                    tls: { rejectUnauthorized: boolean };
                }[];
                buildNew: boolean;
                konstructor: any;
            };
        };
        routes: Partial<
            Record<
                "all"
                | "head"
                | "get"
                | "delete"
                | "patch"
                | "post"
                | "put",
                RouteType[],
            >,
        >;
        tasks: {
            _toExpand: boolean;
            checkTimeout: number;
            connectionOptions: { tasks: {} };
            maxEventLoopDelay: number;
            maxTaskProcessors: number;
            minTaskProcessors: number;
            queues: string[] | (() => Promise<string[]>);
            resque_overrides: {
                multiWorker: MultiWorker;
                queue: Queue;
                scheduler: Scheduler;
            };
            retryStuckJobs: boolean;
            scheduler: boolean;
            schedulerLogging: {
                end: ActionheroLogLevel;
                enqueue: ActionheroLogLevel;
                poll: ActionheroLogLevel;
                reEnqueue: ActionheroLogLevel;
                start: ActionheroLogLevel;
                transferred_job: ActionheroLogLevel;
                working_timestamp: ActionheroLogLevel;
            };
            stuckWorkerTimeout: number;
            timeout: number;
            workerLogging: {
                cleaning_worker: ActionheroLogLevel;
                end: ActionheroLogLevel;
                failure: ActionheroLogLevel;
                internalError: ActionheroLogLevel;
                job: ActionheroLogLevel;
                multiWorkerAction: ActionheroLogLevel;
                pause: ActionheroLogLevel;
                poll: ActionheroLogLevel;
                reEnqueue: ActionheroLogLevel;
                start: ActionheroLogLevel;
                success: ActionheroLogLevel;
            };
        };
        web: {
            allowedRequestHosts: string[];
            automaticRoutes: string[];
            bindIP: string;
            bootAttempts: number;
            compress: boolean;
            defaultErrorStatusCode: number;
            enabled: boolean;
            enableEtag: boolean;
            fingerprintOptions: {
                cookieKey: string;
                onlyStaticElements: boolean;
                settings: { expires: number; path: string };
                toSetCookie: boolean;
            };
            flatFileCacheDuration: number;
            formOptions: Options;
            httpHeaders: {
                "Access-Control-Allow-Headers": string;
                "Access-Control-Allow-Methods": string;
                "Access-Control-Allow-Origin": string;
                "Strict-Transport-Security": string;
                "X-Powered-By": string;
            };
            metadataOptions: {
                requesterInformation: boolean;
                serverInformation: boolean;
            };
            padding: number;
            port: string
            | number;
            queryParseOptions: {};
            returnErrorCodes: boolean;
            rootEndpointType: string;
            saveRawBody: boolean;
            secure: boolean;
            serverOptions: {};
            urlPathForActions: string;
            urlPathForFiles: string;
        };
        websocket: {
            client: { apiPath: string; cookieKey: string };
            clientJsName: string;
            clientJsPath: string;
            clientUrl: string;
            destroyClientsOnShutdown: boolean;
            enabled: boolean;
            server: {};
        };
        [key: string]: Record<string, unknown>;
    }

    Indexable

    • [key: string]: Record<string, unknown>
    Index

    Properties

    errors: {
        _toExpand: boolean;
        connectionAlreadyInRoom: (connection: Connection, room: string) => string;
        connectionNotInRoom: (connection: Connection, room: string) => string;
        connectionRoomAndMessage: (connection: Connection) => string;
        connectionRoomExists: (room: string) => string;
        connectionRoomHasBeenDeleted: (room: string) => string;
        connectionRoomNotExist: (room: string) => string;
        connectionRoomRequired: () => string;
        fileNotFound: (connection: Connection) => string;
        fileNotProvided: (connection: Connection) => string;
        fileReadError: (connection: Connection, error: ErrnoException) => string;
        invalidParams: (
            data: ActionProcessor<any>,
            validationErrors: (string | Error)[],
        ) => string | Error;
        missingParams: (
            data: ActionProcessor<any>,
            missingParams: string[],
        ) => string;
        reportUnknownActions: boolean;
        serializers: {
            actionProcessor: (
                error: ErrnoException,
            ) => { errorFields: { error: string }; logLevel: ActionheroLogLevel };
            servers: {
                specHelper: (error: ErrnoException) => string | ErrnoException;
                web: (error: ErrnoException) => string | ErrnoException;
                websocket: (error: ErrnoException) => string | ErrnoException;
            };
        };
        serverShuttingDown: (data: ActionProcessor<any>) => string;
        tooManyPendingActions: (data: ActionProcessor<any>) => string;
        unknownAction: (data: ActionProcessor<any>) => string;
        unsupportedServerType: (data: ActionProcessor<any>) => string;
        verbNotAllowed: (connection: Connection, verb: string) => string;
        verbNotFound: (connection: Connection, verb: string) => string;
        genericError(
            data: ActionProcessor<any>,
            error: ErrnoException,
        ): Promise<ErrnoException>;
    }
    general: {
        apiVersion: string;
        cachePrefix: string;
        channel: string;
        cliIncludeInternal: boolean;
        defaultMiddlewarePriority: number;
        directoryFileType: string;
        disableParamScrubbing: boolean;
        enableResponseLogging: boolean;
        enforceConnectionProperties: boolean;
        fileRequestLogLevel: ActionheroLogLevel;
        filteredParams: string[] | (() => string[]);
        filteredResponse: string[] | (() => string[]);
        id: string;
        lockDuration: number;
        lockPrefix: string;
        missingParamChecks: string[];
        paths: {
            action: string[];
            cli: string[];
            dist: string;
            initializer: string[];
            log: string[];
            pid: string[];
            plugin: string[];
            public: string[];
            server: string[];
            src: string;
            task: string[];
            test: string[];
        };
        rpcTimeout: number;
        serverName: string;
        serverToken: string;
        simultaneousActions: number;
        startingChatRooms: Record<string, Record<string, any>>;
        welcomeMessage: string;
    }
    logger: {
        loggers: ActionheroConfigLoggerBuilderArray;
        maxLogArrayLength: number;
        maxLogStringLength: number;
    }
    plugins: PluginConfig
    redis: {
        _toExpand: boolean;
        client: {
            args: {
                db: number;
                host: string;
                password: string;
                port: string | number;
                retryStrategy: (times: number) => number;
                tls: { rejectUnauthorized: boolean };
            }[];
            buildNew: boolean;
            konstructor: any;
        };
        scanCount: number;
        stopTimeout: number;
        subscriber: {
            args: {
                db: number;
                host: string;
                password: string;
                port: string
                | number;
                retryStrategy: (times: number) => number;
                tls: { rejectUnauthorized: boolean };
            }[];
            buildNew: boolean;
            konstructor: any;
        };
        tasks: {
            args: {
                db: number;
                host: string;
                password: string;
                port: string
                | number;
                retryStrategy: (times: number) => number;
                tls: { rejectUnauthorized: boolean };
            }[];
            buildNew: boolean;
            konstructor: any;
        };
    }
    routes: Partial<
        Record<
            "all"
            | "head"
            | "get"
            | "delete"
            | "patch"
            | "post"
            | "put",
            RouteType[],
        >,
    >
    tasks: {
        _toExpand: boolean;
        checkTimeout: number;
        connectionOptions: { tasks: {} };
        maxEventLoopDelay: number;
        maxTaskProcessors: number;
        minTaskProcessors: number;
        queues: string[] | (() => Promise<string[]>);
        resque_overrides: {
            multiWorker: MultiWorker;
            queue: Queue;
            scheduler: Scheduler;
        };
        retryStuckJobs: boolean;
        scheduler: boolean;
        schedulerLogging: {
            end: ActionheroLogLevel;
            enqueue: ActionheroLogLevel;
            poll: ActionheroLogLevel;
            reEnqueue: ActionheroLogLevel;
            start: ActionheroLogLevel;
            transferred_job: ActionheroLogLevel;
            working_timestamp: ActionheroLogLevel;
        };
        stuckWorkerTimeout: number;
        timeout: number;
        workerLogging: {
            cleaning_worker: ActionheroLogLevel;
            end: ActionheroLogLevel;
            failure: ActionheroLogLevel;
            internalError: ActionheroLogLevel;
            job: ActionheroLogLevel;
            multiWorkerAction: ActionheroLogLevel;
            pause: ActionheroLogLevel;
            poll: ActionheroLogLevel;
            reEnqueue: ActionheroLogLevel;
            start: ActionheroLogLevel;
            success: ActionheroLogLevel;
        };
    }
    web: {
        allowedRequestHosts: string[];
        automaticRoutes: string[];
        bindIP: string;
        bootAttempts: number;
        compress: boolean;
        defaultErrorStatusCode: number;
        enabled: boolean;
        enableEtag: boolean;
        fingerprintOptions: {
            cookieKey: string;
            onlyStaticElements: boolean;
            settings: { expires: number; path: string };
            toSetCookie: boolean;
        };
        flatFileCacheDuration: number;
        formOptions: Options;
        httpHeaders: {
            "Access-Control-Allow-Headers": string;
            "Access-Control-Allow-Methods": string;
            "Access-Control-Allow-Origin": string;
            "Strict-Transport-Security": string;
            "X-Powered-By": string;
        };
        metadataOptions: {
            requesterInformation: boolean;
            serverInformation: boolean;
        };
        padding: number;
        port: string
        | number;
        queryParseOptions: {};
        returnErrorCodes: boolean;
        rootEndpointType: string;
        saveRawBody: boolean;
        secure: boolean;
        serverOptions: {};
        urlPathForActions: string;
        urlPathForFiles: string;
    }
    websocket: {
        client: { apiPath: string; cookieKey: string };
        clientJsName: string;
        clientJsPath: string;
        clientUrl: string;
        destroyClientsOnShutdown: boolean;
        enabled: boolean;
        server: {};
    }