@buildplease/apikit 1.1.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,5 +1,4 @@
1
1
  import "reflect-metadata";
2
- import { Assembly, JSONSerializable, UnitFormatterController } from "@buildplease/core";
3
2
  import fastifyCookie, { SerializeOptions } from "@fastify/cookie";
4
3
  import { IncomingHttpHeaders } from "http";
5
4
  import { BuildMetadata, ConfigDefinition, ConfigurationBinding, ConfigurationContract, ConfigurationInputFromSchema, ConfigurationSchema, EnvironmentConfig, EnvironmentRegistry, InferConfiguration, Logger, LoggerTransportOptions } from "@buildplease/core/node";
@@ -9,6 +8,7 @@ import { InitOptions, TOptions } from "i18next";
9
8
  import { FastifyInstance, FastifyReply, FastifyRequest, FastifySchema, RouteOptions } from "fastify";
10
9
  import fastifyMultipart, { FastifyMultipartAttachFieldsToBodyOptions, FastifyMultipartBaseOptions, FastifyMultipartOptions } from "@fastify/multipart";
11
10
  import fastifyStatic, { FastifyStaticOptions } from "@fastify/static";
11
+ import { Assembly, Awaitable, JSONSerializable, ScopeController, UnitFormatterController } from "@buildplease/core";
12
12
  import { AvifOptions, FormatEnum, GifOptions, HeifOptions, Jp2Options, JpegOptions, JxlOptions, PngOptions, ResizeOptions, Sharp, TiffOptions, WebpOptions } from "sharp";
13
13
  import { Readable } from "stream";
14
14
  import fp from "fastify-plugin";
@@ -17,8 +17,8 @@ import fastifyView from "@fastify/view";
17
17
  import fastifyIp from "fastify-ip";
18
18
  import fastifyMetrics from "fastify-metrics";
19
19
  import { ZodType, z } from "zod";
20
- export * from "@buildplease/core";
21
20
  export * from "@buildplease/core/node";
21
+ export * from "@buildplease/core";
22
22
  //#region src/request/request-log-metadata.d.ts
23
23
  declare class RequestLogMetadata {
24
24
  private readonly metadata;
@@ -497,13 +497,6 @@ declare class ApiKitControllerImpl implements ApiKitController {
497
497
  optional<T>(configuration: ConfigurationContract<T, any>): T | undefined;
498
498
  }
499
499
  //#endregion
500
- //#region src/configuration/load-context.d.ts
501
- interface LoadApiKitContextOptions {
502
- readonly environment: string;
503
- readonly config?: string;
504
- }
505
- declare function loadApiKitContext(options: LoadApiKitContextOptions): Promise<void>;
506
- //#endregion
507
500
  //#region src/configuration/define.d.ts
508
501
  declare function defineApiKitConfiguration<const Environments extends EnvironmentRegistry>(environments: Environments, input: DefineApiKitConfigInput): ApiKitConfig<Environments>;
509
502
  //#endregion
@@ -2647,6 +2640,106 @@ interface OpenAPISchemaResponse {
2647
2640
  headers?: OpenAPISchemaHeaders;
2648
2641
  }
2649
2642
  //#endregion
2643
+ //#region src/server/plugins/index.d.ts
2644
+ declare const FastifyPlugins: {
2645
+ readonly basicAuth: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2646
+ readonly cookie: import("fastify").FastifyPluginAsync;
2647
+ readonly cors: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2648
+ readonly health: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2649
+ readonly ip: import("fastify").FastifyPluginAsync;
2650
+ readonly metrics: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2651
+ readonly multipart: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2652
+ readonly requestLogger: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2653
+ readonly requestMetadata: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2654
+ readonly requestScope: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2655
+ readonly staticFiles: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2656
+ readonly view: import("fastify").FastifyPluginAsync;
2657
+ };
2658
+ //#endregion
2659
+ //#region src/server/endpoint.d.ts
2660
+ interface Endpoint {
2661
+ method: HttpMethod;
2662
+ url: string;
2663
+ schema(server: FastifyInstance): FastifySchema;
2664
+ handle: (request: FastifyRequest) => Promise<HttpResponse>;
2665
+ }
2666
+ //#endregion
2667
+ //#region src/server/server-controller.d.ts
2668
+ interface ServerPluginBaseOptions {
2669
+ i18nController: I18nController;
2670
+ logger: Logger;
2671
+ apikitController: ApiKitController;
2672
+ }
2673
+ type ServerPluginOptions<TExtras extends object = {}> = ServerPluginBaseOptions & TExtras;
2674
+ type ServerPluginExternalHook = (instance: FastifyInstance, options: ServerPluginOptions) => Promise<void>;
2675
+ interface ServerController {
2676
+ get instance(): FastifyInstance;
2677
+ preparePlugins(externalHook?: ServerPluginExternalHook): Promise<void>;
2678
+ prepare(shutdownHook?: () => Promise<void>): Promise<void>;
2679
+ start(): Promise<void>;
2680
+ }
2681
+ declare class ServerControllerImpl implements ServerController {
2682
+ private i18n;
2683
+ private logger;
2684
+ private configuration;
2685
+ private server;
2686
+ constructor(i18n: I18nController, logger: Logger, configuration: ApiKitController);
2687
+ get instance(): FastifyInstance;
2688
+ preparePlugins(externalHook?: ServerPluginExternalHook): Promise<void>;
2689
+ prepare(shutdownHook?: () => Promise<void>): Promise<void>;
2690
+ start(): Promise<void>;
2691
+ private configureErrorHandler;
2692
+ private configureShutdownHandler;
2693
+ }
2694
+ //#endregion
2695
+ //#region src/server/request-controller.d.ts
2696
+ type HttpReplyPromise = (request: FastifyRequest, options: object) => Promise<HttpResponse>;
2697
+ type HttpOrVoidReplyPromise = (request: FastifyRequest, options?: object) => Promise<HttpResponse | void>;
2698
+ interface RequestController {
2699
+ handler(controllerFn: HttpReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2700
+ preHandler(controllerFn: HttpOrVoidReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2701
+ }
2702
+ declare class RequestControllerImpl implements RequestController {
2703
+ private logger;
2704
+ private responseController;
2705
+ constructor(logger: Logger, responseController: ResponseController);
2706
+ handler(controllerFn: HttpReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2707
+ preHandler(controllerFn: HttpOrVoidReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2708
+ private logError;
2709
+ }
2710
+ //#endregion
2711
+ //#region src/server/response-controller.d.ts
2712
+ interface ResponseController {
2713
+ sendResponse(request: FastifyRequest, reply: FastifyReply, response: HttpResponse): Promise<void>;
2714
+ }
2715
+ declare class ResponseControllerImpl implements ResponseController {
2716
+ private logger;
2717
+ constructor(logger: Logger);
2718
+ sendResponse(request: FastifyRequest, reply: FastifyReply, response: HttpResponse): Promise<void>;
2719
+ private sendJSONResponse;
2720
+ private sendFileResponse;
2721
+ private createResponseHeaders;
2722
+ }
2723
+ //#endregion
2724
+ //#region src/runtime/run-apikit.d.ts
2725
+ interface ApiKitRuntimeHookContext {
2726
+ readonly scope: ScopeController;
2727
+ }
2728
+ interface ApiKitRuntimePluginHookContext extends ApiKitRuntimeHookContext {
2729
+ readonly server: FastifyInstance;
2730
+ readonly options: ServerPluginOptions;
2731
+ }
2732
+ interface ApiKitRuntimeHooks {
2733
+ readonly assemblies?: () => Assembly[];
2734
+ readonly plugins?: (context: ApiKitRuntimePluginHookContext) => Awaitable<void>;
2735
+ readonly prepare?: (context: ApiKitRuntimeHookContext) => Awaitable<void>;
2736
+ readonly close?: (context: ApiKitRuntimeHookContext) => Awaitable<void>;
2737
+ }
2738
+ interface RunApiKitOptions {
2739
+ readonly hooks?: ApiKitRuntimeHooks;
2740
+ }
2741
+ declare function runApiKit(options?: RunApiKitOptions): Promise<void>;
2742
+ //#endregion
2650
2743
  //#region src/security/cryptography-options.d.ts
2651
2744
  /**
2652
2745
  * @description Supported output encodings for cryptographic digest and MAC values.
@@ -2768,87 +2861,6 @@ declare class Token<T extends Record<string, unknown> = any> {
2768
2861
  getField<K extends keyof T>(key: K): T[K] | undefined;
2769
2862
  }
2770
2863
  //#endregion
2771
- //#region src/server/plugins/index.d.ts
2772
- declare const FastifyPlugins: {
2773
- readonly basicAuth: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2774
- readonly cookie: import("fastify").FastifyPluginAsync;
2775
- readonly cors: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2776
- readonly health: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2777
- readonly ip: import("fastify").FastifyPluginAsync;
2778
- readonly metrics: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2779
- readonly multipart: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2780
- readonly requestLogger: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2781
- readonly requestMetadata: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2782
- readonly requestScope: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2783
- readonly staticFiles: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2784
- readonly view: import("fastify").FastifyPluginAsync;
2785
- };
2786
- //#endregion
2787
- //#region src/server/endpoint.d.ts
2788
- interface Endpoint {
2789
- method: HttpMethod;
2790
- url: string;
2791
- schema(server: FastifyInstance): FastifySchema;
2792
- handle: (request: FastifyRequest) => Promise<HttpResponse>;
2793
- }
2794
- //#endregion
2795
- //#region src/server/server-controller.d.ts
2796
- interface ServerPluginBaseOptions {
2797
- i18nController: I18nController;
2798
- logger: Logger;
2799
- apikitController: ApiKitController;
2800
- }
2801
- type ServerPluginOptions<TExtras extends object = {}> = ServerPluginBaseOptions & TExtras;
2802
- type ServerPluginExternalHook = (instance: FastifyInstance, options: ServerPluginOptions) => Promise<void>;
2803
- interface ServerController {
2804
- get instance(): FastifyInstance;
2805
- preparePlugins(externalHook?: ServerPluginExternalHook): Promise<void>;
2806
- prepare(shutdownHook?: () => Promise<void>): Promise<void>;
2807
- start(): Promise<void>;
2808
- }
2809
- declare class ServerControllerImpl implements ServerController {
2810
- private i18n;
2811
- private logger;
2812
- private configuration;
2813
- private server;
2814
- constructor(i18n: I18nController, logger: Logger, configuration: ApiKitController);
2815
- get instance(): FastifyInstance;
2816
- preparePlugins(externalHook?: ServerPluginExternalHook): Promise<void>;
2817
- prepare(shutdownHook?: () => Promise<void>): Promise<void>;
2818
- start(): Promise<void>;
2819
- private configureErrorHandler;
2820
- private configureShutdownHandler;
2821
- }
2822
- //#endregion
2823
- //#region src/server/request-controller.d.ts
2824
- type HttpReplyPromise = (request: FastifyRequest, options: object) => Promise<HttpResponse>;
2825
- type HttpOrVoidReplyPromise = (request: FastifyRequest, options?: object) => Promise<HttpResponse | void>;
2826
- interface RequestController {
2827
- handler(controllerFn: HttpReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2828
- preHandler(controllerFn: HttpOrVoidReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2829
- }
2830
- declare class RequestControllerImpl implements RequestController {
2831
- private logger;
2832
- private responseController;
2833
- constructor(logger: Logger, responseController: ResponseController);
2834
- handler(controllerFn: HttpReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2835
- preHandler(controllerFn: HttpOrVoidReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2836
- private logError;
2837
- }
2838
- //#endregion
2839
- //#region src/server/response-controller.d.ts
2840
- interface ResponseController {
2841
- sendResponse(request: FastifyRequest, reply: FastifyReply, response: HttpResponse): Promise<void>;
2842
- }
2843
- declare class ResponseControllerImpl implements ResponseController {
2844
- private logger;
2845
- constructor(logger: Logger);
2846
- sendResponse(request: FastifyRequest, reply: FastifyReply, response: HttpResponse): Promise<void>;
2847
- private sendJSONResponse;
2848
- private sendFileResponse;
2849
- private createResponseHeaders;
2850
- }
2851
- //#endregion
2852
2864
  //#region src/validation/dto-validation-controller.d.ts
2853
2865
  interface DtoValidationController {
2854
2866
  /**
@@ -2956,7 +2968,4 @@ declare class ValidationControllerImpl implements ValidationController {
2956
2968
  isValidDateThrowing(dateString?: string | null): Date;
2957
2969
  }
2958
2970
  //#endregion
2959
- //#region src/index.d.ts
2960
- declare function apikitAssembly(): Assembly[];
2961
- //#endregion
2962
- export { ApiError, ApiErrorCodes, ApiErrorDefinition, ApiErrorDetails, ApiErrorFactory, ApiErrorFactoryOptions, ApiErrorPath, ApiErrorProperties, ApiErrorTree, ApiKitConfig, ApiKitConfigInput, ApiKitController, ApiKitControllerImpl, ApiKitL10n, ApiKitL10nResource, ApiKitSymbols, AuthorizationErrors, BaseEmailTemplate, BasicAuthAuthenticate, BasicAuthConfig, BasicAuthConfiguration, BuildConfig, BuildConfiguration, CommonErrors, Cookie, CookieMutation, CookieOptions, CorsConfig, CorsConfiguration, CorsOptions, CryptographyController, CryptographyControllerImpl, CryptographyOutputEncoding, DEFAULT_GENERATE_STRING_OPTIONS, DefineApiKitConfigInput, DigestAlgorithm, DigestOptions, DtoValidationController, DtoValidationControllerImpl, EmailConfig, EmailConfiguration, EmailController, EmailControllerImpl, EmailTemplate, EmailTemplateInput, Endpoint, FastifyPlugins, FileHttpResponse, FormatErrors, FormatType, Formatter, FormatterController, FormatterControllerImpl, GenerateNumberOptions, GenerateStringOptions, HealthConfig, HealthConfiguration, HttpHeaderKey, HttpHeaderValues, HttpHeaders, HttpMethod, HttpResponse, I18nConfig, I18nConfiguration, I18nController, I18nControllerImpl, I18nDirectoryEntry, I18nFactory, I18nFactoryOptions, I18nFallbackLanguages, I18nFileEntry, I18nLoadMode, I18nOptions, I18nPreload, I18nProvider, IRequestScope, ImageErrors, ImageNormalizationController, ImageNormalizationControllerImpl, ImageOptions, JSONHttpResponse, LimitErrors, LoadApiKitContextOptions, LoggerConfig, LoggerConfiguration, LoggerConfigurationValue, LoggerRequestOptions, MacAlgorithm, MacOptions, MetricsConfig, MetricsConfiguration, MetricsDefaultConfig, MetricsEndpoint, MetricsRouteConfig, MongoDbComparisonOperators, MongoDbFieldQuery, MongoDbFieldValue, MongoDbLogicalOperators, MongoDbQuery, MongoDbQueryFormatter, MongoDbQueryFormatterImpl, MongoDbUpdateOptions, MultipartConfig, MultipartConfiguration, MultipartFormatterController, MultipartFormatterControllerImpl, MultipartOptions, NormalizationController, NormalizationControllerImpl, NotificationChannel, NotificationChannelRequest, NotificationChannelsConfig, NotificationConfig, NotificationConfiguration, NotificationConfigurationValue, NotificationController, NotificationDeliveryResult, NotificationDeliveryStatus, NotificationMessage, NotificationRequest, NotificationResult, NotificationSendOptions, OpenAPIMediaType, OpenAPISchemaController, OpenAPISchemaControllerImpl, OpenAPISchemaExample, OpenAPISchemaHeader, OpenAPISchemaHeaders, OpenAPISchemaMediaType, OpenAPISchemaResponse, ParseLocaleOptions, PasswordHashAlgorithm, PasswordHashOptions, RANDOM_VALUE_GENERATOR_LIMITS, RandomValueAlphabet, RandomValueAlphabetPreset, RandomValueCustomAlphabet, RandomValueGenerator, RandomValueGeneratorImpl, RequestController, RequestControllerImpl, RequestLogMetadata, RequestMetadata, RequestScope, RequestScopeData, ResponseController, ResponseControllerImpl, ResponseType, ServerConfig, ServerConfiguration, ServerController, ServerControllerImpl, ServerErrors, ServerPluginBaseOptions, ServerPluginExternalHook, ServerPluginOptions, SharpFormat, SharpInstance, StaticFilesConfig, StaticFilesConfiguration, StaticFilesDotfilesMode, TelegramNotificationConfig, TelegramNotificationRequest, TemporaryFileRepository, TemporaryFileRepositoryImpl, Token, TrustProxy, ValidationController, ValidationControllerImpl, ValidationErrors, apikitAssembly, defineApiKitConfiguration as defineConfig, defineErrors, fastifyBasicAuth, fastifyCookie, fastifyCors, fastifyIp, fastifyMetrics, fastifyMultipart, fastifyStatic, fastifyUnderPressure, fastifyView, fp, isApiErrorDefinition, loadApiKitContext };
2971
+ export { ApiError, ApiErrorCodes, ApiErrorDefinition, ApiErrorDetails, ApiErrorFactory, ApiErrorFactoryOptions, ApiErrorPath, ApiErrorProperties, ApiErrorTree, ApiKitConfig, ApiKitConfigInput, ApiKitController, ApiKitControllerImpl, ApiKitL10n, ApiKitL10nResource, ApiKitRuntimeHookContext, ApiKitRuntimeHooks, ApiKitRuntimePluginHookContext, ApiKitSymbols, AuthorizationErrors, BaseEmailTemplate, BasicAuthAuthenticate, BasicAuthConfig, BasicAuthConfiguration, BuildConfig, BuildConfiguration, CommonErrors, Cookie, CookieMutation, CookieOptions, CorsConfig, CorsConfiguration, CorsOptions, CryptographyController, CryptographyControllerImpl, CryptographyOutputEncoding, DEFAULT_GENERATE_STRING_OPTIONS, DefineApiKitConfigInput, DigestAlgorithm, DigestOptions, DtoValidationController, DtoValidationControllerImpl, EmailConfig, EmailConfiguration, EmailController, EmailControllerImpl, EmailTemplate, EmailTemplateInput, Endpoint, FastifyPlugins, FileHttpResponse, FormatErrors, FormatType, Formatter, FormatterController, FormatterControllerImpl, GenerateNumberOptions, GenerateStringOptions, HealthConfig, HealthConfiguration, HttpHeaderKey, HttpHeaderValues, HttpHeaders, HttpMethod, HttpResponse, I18nConfig, I18nConfiguration, I18nController, I18nControllerImpl, I18nDirectoryEntry, I18nFactory, I18nFactoryOptions, I18nFallbackLanguages, I18nFileEntry, I18nLoadMode, I18nOptions, I18nPreload, I18nProvider, IRequestScope, ImageErrors, ImageNormalizationController, ImageNormalizationControllerImpl, ImageOptions, JSONHttpResponse, LimitErrors, LoggerConfig, LoggerConfiguration, LoggerConfigurationValue, LoggerRequestOptions, MacAlgorithm, MacOptions, MetricsConfig, MetricsConfiguration, MetricsDefaultConfig, MetricsEndpoint, MetricsRouteConfig, MongoDbComparisonOperators, MongoDbFieldQuery, MongoDbFieldValue, MongoDbLogicalOperators, MongoDbQuery, MongoDbQueryFormatter, MongoDbQueryFormatterImpl, MongoDbUpdateOptions, MultipartConfig, MultipartConfiguration, MultipartFormatterController, MultipartFormatterControllerImpl, MultipartOptions, NormalizationController, NormalizationControllerImpl, NotificationChannel, NotificationChannelRequest, NotificationChannelsConfig, NotificationConfig, NotificationConfiguration, NotificationConfigurationValue, NotificationController, NotificationDeliveryResult, NotificationDeliveryStatus, NotificationMessage, NotificationRequest, NotificationResult, NotificationSendOptions, OpenAPIMediaType, OpenAPISchemaController, OpenAPISchemaControllerImpl, OpenAPISchemaExample, OpenAPISchemaHeader, OpenAPISchemaHeaders, OpenAPISchemaMediaType, OpenAPISchemaResponse, ParseLocaleOptions, PasswordHashAlgorithm, PasswordHashOptions, RANDOM_VALUE_GENERATOR_LIMITS, RandomValueAlphabet, RandomValueAlphabetPreset, RandomValueCustomAlphabet, RandomValueGenerator, RandomValueGeneratorImpl, RequestController, RequestControllerImpl, RequestLogMetadata, RequestMetadata, RequestScope, RequestScopeData, ResponseController, ResponseControllerImpl, ResponseType, RunApiKitOptions, ServerConfig, ServerConfiguration, ServerController, ServerControllerImpl, ServerErrors, ServerPluginBaseOptions, ServerPluginExternalHook, ServerPluginOptions, SharpFormat, SharpInstance, StaticFilesConfig, StaticFilesConfiguration, StaticFilesDotfilesMode, TelegramNotificationConfig, TelegramNotificationRequest, TemporaryFileRepository, TemporaryFileRepositoryImpl, Token, TrustProxy, ValidationController, ValidationControllerImpl, ValidationErrors, defineApiKitConfiguration as defineConfig, defineErrors, fastifyBasicAuth, fastifyCookie, fastifyCors, fastifyIp, fastifyMetrics, fastifyMultipart, fastifyStatic, fastifyUnderPressure, fastifyView, fp, isApiErrorDefinition, runApiKit };
@@ -1,6 +1,6 @@
1
1
  import "reflect-metadata";
2
+ import { Assembly, Awaitable, JSONSerializable, ScopeController, UnitFormatterController } from "@buildplease/core";
2
3
  import { BuildMetadata, ConfigDefinition, ConfigurationBinding, ConfigurationContract, ConfigurationInputFromSchema, ConfigurationSchema, EnvironmentConfig, EnvironmentRegistry, InferConfiguration, Logger, LoggerTransportOptions } from "@buildplease/core/node";
3
- import { Assembly, JSONSerializable, UnitFormatterController } from "@buildplease/core";
4
4
  import { InitOptions, TOptions } from "i18next";
5
5
  import fastifyCookie, { SerializeOptions } from "@fastify/cookie";
6
6
  import { Readable } from "stream";
@@ -17,8 +17,8 @@ import fastifyView from "@fastify/view";
17
17
  import { FastifyInstance, FastifyReply, FastifyRequest, FastifySchema, RouteOptions } from "fastify";
18
18
  import { ZodType, z } from "zod";
19
19
  import { IncomingHttpHeaders } from "http";
20
- export * from "@buildplease/core/node";
21
20
  export * from "@buildplease/core";
21
+ export * from "@buildplease/core/node";
22
22
  //#region src/request/request-log-metadata.d.ts
23
23
  declare class RequestLogMetadata {
24
24
  private readonly metadata;
@@ -497,13 +497,6 @@ declare class ApiKitControllerImpl implements ApiKitController {
497
497
  optional<T>(configuration: ConfigurationContract<T, any>): T | undefined;
498
498
  }
499
499
  //#endregion
500
- //#region src/configuration/load-context.d.ts
501
- interface LoadApiKitContextOptions {
502
- readonly environment: string;
503
- readonly config?: string;
504
- }
505
- declare function loadApiKitContext(options: LoadApiKitContextOptions): Promise<void>;
506
- //#endregion
507
500
  //#region src/configuration/define.d.ts
508
501
  declare function defineApiKitConfiguration<const Environments extends EnvironmentRegistry>(environments: Environments, input: DefineApiKitConfigInput): ApiKitConfig<Environments>;
509
502
  //#endregion
@@ -2647,6 +2640,106 @@ interface OpenAPISchemaResponse {
2647
2640
  headers?: OpenAPISchemaHeaders;
2648
2641
  }
2649
2642
  //#endregion
2643
+ //#region src/server/plugins/index.d.ts
2644
+ declare const FastifyPlugins: {
2645
+ readonly basicAuth: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2646
+ readonly cookie: import("fastify").FastifyPluginAsync;
2647
+ readonly cors: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2648
+ readonly health: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2649
+ readonly ip: import("fastify").FastifyPluginAsync;
2650
+ readonly metrics: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2651
+ readonly multipart: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2652
+ readonly requestLogger: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2653
+ readonly requestMetadata: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2654
+ readonly requestScope: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2655
+ readonly staticFiles: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2656
+ readonly view: import("fastify").FastifyPluginAsync;
2657
+ };
2658
+ //#endregion
2659
+ //#region src/server/endpoint.d.ts
2660
+ interface Endpoint {
2661
+ method: HttpMethod;
2662
+ url: string;
2663
+ schema(server: FastifyInstance): FastifySchema;
2664
+ handle: (request: FastifyRequest) => Promise<HttpResponse>;
2665
+ }
2666
+ //#endregion
2667
+ //#region src/server/server-controller.d.ts
2668
+ interface ServerPluginBaseOptions {
2669
+ i18nController: I18nController;
2670
+ logger: Logger;
2671
+ apikitController: ApiKitController;
2672
+ }
2673
+ type ServerPluginOptions<TExtras extends object = {}> = ServerPluginBaseOptions & TExtras;
2674
+ type ServerPluginExternalHook = (instance: FastifyInstance, options: ServerPluginOptions) => Promise<void>;
2675
+ interface ServerController {
2676
+ get instance(): FastifyInstance;
2677
+ preparePlugins(externalHook?: ServerPluginExternalHook): Promise<void>;
2678
+ prepare(shutdownHook?: () => Promise<void>): Promise<void>;
2679
+ start(): Promise<void>;
2680
+ }
2681
+ declare class ServerControllerImpl implements ServerController {
2682
+ private i18n;
2683
+ private logger;
2684
+ private configuration;
2685
+ private server;
2686
+ constructor(i18n: I18nController, logger: Logger, configuration: ApiKitController);
2687
+ get instance(): FastifyInstance;
2688
+ preparePlugins(externalHook?: ServerPluginExternalHook): Promise<void>;
2689
+ prepare(shutdownHook?: () => Promise<void>): Promise<void>;
2690
+ start(): Promise<void>;
2691
+ private configureErrorHandler;
2692
+ private configureShutdownHandler;
2693
+ }
2694
+ //#endregion
2695
+ //#region src/server/request-controller.d.ts
2696
+ type HttpReplyPromise = (request: FastifyRequest, options: object) => Promise<HttpResponse>;
2697
+ type HttpOrVoidReplyPromise = (request: FastifyRequest, options?: object) => Promise<HttpResponse | void>;
2698
+ interface RequestController {
2699
+ handler(controllerFn: HttpReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2700
+ preHandler(controllerFn: HttpOrVoidReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2701
+ }
2702
+ declare class RequestControllerImpl implements RequestController {
2703
+ private logger;
2704
+ private responseController;
2705
+ constructor(logger: Logger, responseController: ResponseController);
2706
+ handler(controllerFn: HttpReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2707
+ preHandler(controllerFn: HttpOrVoidReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2708
+ private logError;
2709
+ }
2710
+ //#endregion
2711
+ //#region src/server/response-controller.d.ts
2712
+ interface ResponseController {
2713
+ sendResponse(request: FastifyRequest, reply: FastifyReply, response: HttpResponse): Promise<void>;
2714
+ }
2715
+ declare class ResponseControllerImpl implements ResponseController {
2716
+ private logger;
2717
+ constructor(logger: Logger);
2718
+ sendResponse(request: FastifyRequest, reply: FastifyReply, response: HttpResponse): Promise<void>;
2719
+ private sendJSONResponse;
2720
+ private sendFileResponse;
2721
+ private createResponseHeaders;
2722
+ }
2723
+ //#endregion
2724
+ //#region src/runtime/run-apikit.d.ts
2725
+ interface ApiKitRuntimeHookContext {
2726
+ readonly scope: ScopeController;
2727
+ }
2728
+ interface ApiKitRuntimePluginHookContext extends ApiKitRuntimeHookContext {
2729
+ readonly server: FastifyInstance;
2730
+ readonly options: ServerPluginOptions;
2731
+ }
2732
+ interface ApiKitRuntimeHooks {
2733
+ readonly assemblies?: () => Assembly[];
2734
+ readonly plugins?: (context: ApiKitRuntimePluginHookContext) => Awaitable<void>;
2735
+ readonly prepare?: (context: ApiKitRuntimeHookContext) => Awaitable<void>;
2736
+ readonly close?: (context: ApiKitRuntimeHookContext) => Awaitable<void>;
2737
+ }
2738
+ interface RunApiKitOptions {
2739
+ readonly hooks?: ApiKitRuntimeHooks;
2740
+ }
2741
+ declare function runApiKit(options?: RunApiKitOptions): Promise<void>;
2742
+ //#endregion
2650
2743
  //#region src/security/cryptography-options.d.ts
2651
2744
  /**
2652
2745
  * @description Supported output encodings for cryptographic digest and MAC values.
@@ -2768,87 +2861,6 @@ declare class Token<T extends Record<string, unknown> = any> {
2768
2861
  getField<K extends keyof T>(key: K): T[K] | undefined;
2769
2862
  }
2770
2863
  //#endregion
2771
- //#region src/server/plugins/index.d.ts
2772
- declare const FastifyPlugins: {
2773
- readonly basicAuth: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2774
- readonly cookie: import("fastify").FastifyPluginAsync;
2775
- readonly cors: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2776
- readonly health: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2777
- readonly ip: import("fastify").FastifyPluginAsync;
2778
- readonly metrics: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2779
- readonly multipart: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2780
- readonly requestLogger: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2781
- readonly requestMetadata: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2782
- readonly requestScope: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2783
- readonly staticFiles: import("fastify").FastifyPluginAsync<ServerPluginBaseOptions>;
2784
- readonly view: import("fastify").FastifyPluginAsync;
2785
- };
2786
- //#endregion
2787
- //#region src/server/endpoint.d.ts
2788
- interface Endpoint {
2789
- method: HttpMethod;
2790
- url: string;
2791
- schema(server: FastifyInstance): FastifySchema;
2792
- handle: (request: FastifyRequest) => Promise<HttpResponse>;
2793
- }
2794
- //#endregion
2795
- //#region src/server/server-controller.d.ts
2796
- interface ServerPluginBaseOptions {
2797
- i18nController: I18nController;
2798
- logger: Logger;
2799
- apikitController: ApiKitController;
2800
- }
2801
- type ServerPluginOptions<TExtras extends object = {}> = ServerPluginBaseOptions & TExtras;
2802
- type ServerPluginExternalHook = (instance: FastifyInstance, options: ServerPluginOptions) => Promise<void>;
2803
- interface ServerController {
2804
- get instance(): FastifyInstance;
2805
- preparePlugins(externalHook?: ServerPluginExternalHook): Promise<void>;
2806
- prepare(shutdownHook?: () => Promise<void>): Promise<void>;
2807
- start(): Promise<void>;
2808
- }
2809
- declare class ServerControllerImpl implements ServerController {
2810
- private i18n;
2811
- private logger;
2812
- private configuration;
2813
- private server;
2814
- constructor(i18n: I18nController, logger: Logger, configuration: ApiKitController);
2815
- get instance(): FastifyInstance;
2816
- preparePlugins(externalHook?: ServerPluginExternalHook): Promise<void>;
2817
- prepare(shutdownHook?: () => Promise<void>): Promise<void>;
2818
- start(): Promise<void>;
2819
- private configureErrorHandler;
2820
- private configureShutdownHandler;
2821
- }
2822
- //#endregion
2823
- //#region src/server/request-controller.d.ts
2824
- type HttpReplyPromise = (request: FastifyRequest, options: object) => Promise<HttpResponse>;
2825
- type HttpOrVoidReplyPromise = (request: FastifyRequest, options?: object) => Promise<HttpResponse | void>;
2826
- interface RequestController {
2827
- handler(controllerFn: HttpReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2828
- preHandler(controllerFn: HttpOrVoidReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2829
- }
2830
- declare class RequestControllerImpl implements RequestController {
2831
- private logger;
2832
- private responseController;
2833
- constructor(logger: Logger, responseController: ResponseController);
2834
- handler(controllerFn: HttpReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2835
- preHandler(controllerFn: HttpOrVoidReplyPromise, options?: object): (request: FastifyRequest, reply: FastifyReply) => Promise<void>;
2836
- private logError;
2837
- }
2838
- //#endregion
2839
- //#region src/server/response-controller.d.ts
2840
- interface ResponseController {
2841
- sendResponse(request: FastifyRequest, reply: FastifyReply, response: HttpResponse): Promise<void>;
2842
- }
2843
- declare class ResponseControllerImpl implements ResponseController {
2844
- private logger;
2845
- constructor(logger: Logger);
2846
- sendResponse(request: FastifyRequest, reply: FastifyReply, response: HttpResponse): Promise<void>;
2847
- private sendJSONResponse;
2848
- private sendFileResponse;
2849
- private createResponseHeaders;
2850
- }
2851
- //#endregion
2852
2864
  //#region src/validation/dto-validation-controller.d.ts
2853
2865
  interface DtoValidationController {
2854
2866
  /**
@@ -2956,7 +2968,4 @@ declare class ValidationControllerImpl implements ValidationController {
2956
2968
  isValidDateThrowing(dateString?: string | null): Date;
2957
2969
  }
2958
2970
  //#endregion
2959
- //#region src/index.d.ts
2960
- declare function apikitAssembly(): Assembly[];
2961
- //#endregion
2962
- export { ApiError, ApiErrorCodes, ApiErrorDefinition, ApiErrorDetails, ApiErrorFactory, ApiErrorFactoryOptions, ApiErrorPath, ApiErrorProperties, ApiErrorTree, ApiKitConfig, ApiKitConfigInput, ApiKitController, ApiKitControllerImpl, ApiKitL10n, ApiKitL10nResource, ApiKitSymbols, AuthorizationErrors, BaseEmailTemplate, BasicAuthAuthenticate, BasicAuthConfig, BasicAuthConfiguration, BuildConfig, BuildConfiguration, CommonErrors, Cookie, CookieMutation, CookieOptions, CorsConfig, CorsConfiguration, CorsOptions, CryptographyController, CryptographyControllerImpl, CryptographyOutputEncoding, DEFAULT_GENERATE_STRING_OPTIONS, DefineApiKitConfigInput, DigestAlgorithm, DigestOptions, DtoValidationController, DtoValidationControllerImpl, EmailConfig, EmailConfiguration, EmailController, EmailControllerImpl, EmailTemplate, EmailTemplateInput, Endpoint, FastifyPlugins, FileHttpResponse, FormatErrors, FormatType, Formatter, FormatterController, FormatterControllerImpl, GenerateNumberOptions, GenerateStringOptions, HealthConfig, HealthConfiguration, HttpHeaderKey, HttpHeaderValues, HttpHeaders, HttpMethod, HttpResponse, I18nConfig, I18nConfiguration, I18nController, I18nControllerImpl, I18nDirectoryEntry, I18nFactory, I18nFactoryOptions, I18nFallbackLanguages, I18nFileEntry, I18nLoadMode, I18nOptions, I18nPreload, I18nProvider, IRequestScope, ImageErrors, ImageNormalizationController, ImageNormalizationControllerImpl, ImageOptions, JSONHttpResponse, LimitErrors, LoadApiKitContextOptions, LoggerConfig, LoggerConfiguration, LoggerConfigurationValue, LoggerRequestOptions, MacAlgorithm, MacOptions, MetricsConfig, MetricsConfiguration, MetricsDefaultConfig, MetricsEndpoint, MetricsRouteConfig, MongoDbComparisonOperators, MongoDbFieldQuery, MongoDbFieldValue, MongoDbLogicalOperators, MongoDbQuery, MongoDbQueryFormatter, MongoDbQueryFormatterImpl, MongoDbUpdateOptions, MultipartConfig, MultipartConfiguration, MultipartFormatterController, MultipartFormatterControllerImpl, MultipartOptions, NormalizationController, NormalizationControllerImpl, NotificationChannel, NotificationChannelRequest, NotificationChannelsConfig, NotificationConfig, NotificationConfiguration, NotificationConfigurationValue, NotificationController, NotificationDeliveryResult, NotificationDeliveryStatus, NotificationMessage, NotificationRequest, NotificationResult, NotificationSendOptions, OpenAPIMediaType, OpenAPISchemaController, OpenAPISchemaControllerImpl, OpenAPISchemaExample, OpenAPISchemaHeader, OpenAPISchemaHeaders, OpenAPISchemaMediaType, OpenAPISchemaResponse, ParseLocaleOptions, PasswordHashAlgorithm, PasswordHashOptions, RANDOM_VALUE_GENERATOR_LIMITS, RandomValueAlphabet, RandomValueAlphabetPreset, RandomValueCustomAlphabet, RandomValueGenerator, RandomValueGeneratorImpl, RequestController, RequestControllerImpl, RequestLogMetadata, RequestMetadata, RequestScope, RequestScopeData, ResponseController, ResponseControllerImpl, ResponseType, ServerConfig, ServerConfiguration, ServerController, ServerControllerImpl, ServerErrors, ServerPluginBaseOptions, ServerPluginExternalHook, ServerPluginOptions, SharpFormat, SharpInstance, StaticFilesConfig, StaticFilesConfiguration, StaticFilesDotfilesMode, TelegramNotificationConfig, TelegramNotificationRequest, TemporaryFileRepository, TemporaryFileRepositoryImpl, Token, TrustProxy, ValidationController, ValidationControllerImpl, ValidationErrors, apikitAssembly, defineApiKitConfiguration as defineConfig, defineErrors, fastifyBasicAuth, fastifyCookie, fastifyCors, fastifyIp, fastifyMetrics, fastifyMultipart, fastifyStatic, fastifyUnderPressure, fastifyView, fp, isApiErrorDefinition, loadApiKitContext };
2971
+ export { ApiError, ApiErrorCodes, ApiErrorDefinition, ApiErrorDetails, ApiErrorFactory, ApiErrorFactoryOptions, ApiErrorPath, ApiErrorProperties, ApiErrorTree, ApiKitConfig, ApiKitConfigInput, ApiKitController, ApiKitControllerImpl, ApiKitL10n, ApiKitL10nResource, ApiKitRuntimeHookContext, ApiKitRuntimeHooks, ApiKitRuntimePluginHookContext, ApiKitSymbols, AuthorizationErrors, BaseEmailTemplate, BasicAuthAuthenticate, BasicAuthConfig, BasicAuthConfiguration, BuildConfig, BuildConfiguration, CommonErrors, Cookie, CookieMutation, CookieOptions, CorsConfig, CorsConfiguration, CorsOptions, CryptographyController, CryptographyControllerImpl, CryptographyOutputEncoding, DEFAULT_GENERATE_STRING_OPTIONS, DefineApiKitConfigInput, DigestAlgorithm, DigestOptions, DtoValidationController, DtoValidationControllerImpl, EmailConfig, EmailConfiguration, EmailController, EmailControllerImpl, EmailTemplate, EmailTemplateInput, Endpoint, FastifyPlugins, FileHttpResponse, FormatErrors, FormatType, Formatter, FormatterController, FormatterControllerImpl, GenerateNumberOptions, GenerateStringOptions, HealthConfig, HealthConfiguration, HttpHeaderKey, HttpHeaderValues, HttpHeaders, HttpMethod, HttpResponse, I18nConfig, I18nConfiguration, I18nController, I18nControllerImpl, I18nDirectoryEntry, I18nFactory, I18nFactoryOptions, I18nFallbackLanguages, I18nFileEntry, I18nLoadMode, I18nOptions, I18nPreload, I18nProvider, IRequestScope, ImageErrors, ImageNormalizationController, ImageNormalizationControllerImpl, ImageOptions, JSONHttpResponse, LimitErrors, LoggerConfig, LoggerConfiguration, LoggerConfigurationValue, LoggerRequestOptions, MacAlgorithm, MacOptions, MetricsConfig, MetricsConfiguration, MetricsDefaultConfig, MetricsEndpoint, MetricsRouteConfig, MongoDbComparisonOperators, MongoDbFieldQuery, MongoDbFieldValue, MongoDbLogicalOperators, MongoDbQuery, MongoDbQueryFormatter, MongoDbQueryFormatterImpl, MongoDbUpdateOptions, MultipartConfig, MultipartConfiguration, MultipartFormatterController, MultipartFormatterControllerImpl, MultipartOptions, NormalizationController, NormalizationControllerImpl, NotificationChannel, NotificationChannelRequest, NotificationChannelsConfig, NotificationConfig, NotificationConfiguration, NotificationConfigurationValue, NotificationController, NotificationDeliveryResult, NotificationDeliveryStatus, NotificationMessage, NotificationRequest, NotificationResult, NotificationSendOptions, OpenAPIMediaType, OpenAPISchemaController, OpenAPISchemaControllerImpl, OpenAPISchemaExample, OpenAPISchemaHeader, OpenAPISchemaHeaders, OpenAPISchemaMediaType, OpenAPISchemaResponse, ParseLocaleOptions, PasswordHashAlgorithm, PasswordHashOptions, RANDOM_VALUE_GENERATOR_LIMITS, RandomValueAlphabet, RandomValueAlphabetPreset, RandomValueCustomAlphabet, RandomValueGenerator, RandomValueGeneratorImpl, RequestController, RequestControllerImpl, RequestLogMetadata, RequestMetadata, RequestScope, RequestScopeData, ResponseController, ResponseControllerImpl, ResponseType, RunApiKitOptions, ServerConfig, ServerConfiguration, ServerController, ServerControllerImpl, ServerErrors, ServerPluginBaseOptions, ServerPluginExternalHook, ServerPluginOptions, SharpFormat, SharpInstance, StaticFilesConfig, StaticFilesConfiguration, StaticFilesDotfilesMode, TelegramNotificationConfig, TelegramNotificationRequest, TemporaryFileRepository, TemporaryFileRepositoryImpl, Token, TrustProxy, ValidationController, ValidationControllerImpl, ValidationErrors, defineApiKitConfiguration as defineConfig, defineErrors, fastifyBasicAuth, fastifyCookie, fastifyCors, fastifyIp, fastifyMetrics, fastifyMultipart, fastifyStatic, fastifyUnderPressure, fastifyView, fp, isApiErrorDefinition, runApiKit };