UNPKG

@whook/whook

Version:

Build strong and efficient REST web services.

42 lines (41 loc) 2.35 kB
import { type Injector, type Autoloader, type Initializer, type Dependencies, type Service } from 'knifecycle'; import { type AppConfig } from 'application-services'; import { type WhookRoutesWrappersConfig } from './ROUTES_WRAPPERS.js'; import { type WhookCronsWrappersConfig } from './CRONS_WRAPPERS.js'; import { type WhookConsumersWrappersConfig } from './CONSUMERS_WRAPPERS.js'; import { type WhookTransformersWrappersConfig } from './TRANSFORMERS_WRAPPERS.js'; import { access as _access } from 'node:fs/promises'; import { type ResolveService, type ImporterService, type LogService } from 'common-services'; import { type WhookPluginName, type WhookResolvedPluginsService } from './WHOOK_RESOLVED_PLUGINS.js'; import { type WhookRawCommandArgs } from '../libs/args.js'; import { type WhookCronDefinitionsOptions } from './CRONS_DEFINITIONS.js'; import { type WhookRoutesDefinitionsOptions } from './ROUTES_DEFINITIONS.js'; import { type WhookConsumerDefinitionsOptions } from './CONSUMERS_DEFINITIONS.js'; import { type WhookTransformerDefinitionsOptions } from './TRANSFORMERS_DEFINITIONS.js'; export type WhookInitializerMap = { [name: string]: string; }; export type WhookAutoloadDependencies = WhookRoutesWrappersConfig & WhookCronsWrappersConfig & WhookConsumersWrappersConfig & WhookTransformersWrappersConfig & { APP_CONFIG?: AppConfig; INITIALIZER_PATH_MAP?: WhookInitializerMap; WHOOK_PLUGINS?: WhookPluginName[]; WHOOK_RESOLVED_PLUGINS: WhookResolvedPluginsService; ROUTES_DEFINITIONS_OPTIONS?: WhookRoutesDefinitionsOptions; CRONS_DEFINITIONS_OPTIONS?: WhookCronDefinitionsOptions; CONSUMERS_DEFINITIONS_OPTIONS?: WhookConsumerDefinitionsOptions; TRANSFORMERS_DEFINITIONS_OPTIONS?: WhookTransformerDefinitionsOptions; args: WhookRawCommandArgs; $injector: Injector<Service>; importer: ImporterService<{ default: Initializer<Service, Dependencies>; }>; resolve: ResolveService; access?: typeof _access; log?: LogService; }; declare const _default: import("knifecycle").ServiceInitializer<WhookAutoloadDependencies, Autoloader<Initializer<unknown, Dependencies>>>; export default _default; export declare function checkAccess({ log, access, }: { log: LogService; access?: typeof _access; }, url: URL): Promise<Parameters<NonNullable<typeof access>>[0]>;