@whook/whook
Version:
Build strong and efficient REST web services.
29 lines (28 loc) • 1.15 kB
TypeScript
import { type ValidateFunction } from 'ajv/dist/2020.js';
import { type LogService } from 'common-services';
import { type AppEnvVars } from 'application-services';
import { type OpenAPI } from 'ya-open-api-types';
import { type JSONSchema } from 'ya-json-schema-types';
export declare const DEFAULT_SCHEMA_VALIDATORS_OPTIONS: {
readonly lazy: false;
readonly optimistic: true;
};
/** Options for schema validation */
export type WhookSchemaValidatorsOptions = {
/** Compile only at first validation */
lazy: boolean;
/** Consider that reused schemas are always using refs */
optimistic: boolean;
};
export type WhookSchemaValidatorsConfig = {
DEBUG_NODE_ENVS: string[];
SCHEMA_VALIDATORS_OPTIONS?: WhookSchemaValidatorsOptions;
};
export type WhookSchemaValidatorsDependencies = WhookSchemaValidatorsConfig & {
API: OpenAPI;
ENV: AppEnvVars;
log?: LogService;
};
export type WhookSchemaValidatorsService = (schema: JSONSchema) => ValidateFunction;
declare const _default: import("knifecycle").ServiceInitializer<WhookSchemaValidatorsDependencies, WhookSchemaValidatorsService>;
export default _default;