Home / File/ hooks.d.ts — fastify Source File

hooks.d.ts — fastify Source File

Architecture documentation for hooks.d.ts, a typescript file in the fastify codebase. 12 imports, 0 dependents.

File typescript CoreKernel InstanceFactory 12 imports 1 functions

Entity Profile

Dependency Diagram

graph LR
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad["hooks.d.ts"]
  531c9fc1_aab6_113a_24da_d449700fa629["./instance"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> 531c9fc1_aab6_113a_24da_d449700fa629
  6a6fa08e_3d60_0520_25ea_dea35398fc8f["./route"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> 6a6fa08e_3d60_0520_25ea_dea35398fc8f
  36d8862b_caf4_88a2_ba4d_4f7ed0738291["./utils"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> 36d8862b_caf4_88a2_ba4d_4f7ed0738291
  4285dbb5_245d_95e1_f339_579e1aa1d358["./request"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> 4285dbb5_245d_95e1_f339_579e1aa1d358
  da3dc06e_ef04_319a_fff5_e5211e80e482["./reply"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> da3dc06e_ef04_319a_fff5_e5211e80e482
  ee998eba_0ed8_8b67_66d6_d2f80d980a41["./logger"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> ee998eba_0ed8_8b67_66d6_d2f80d980a41
  0ec7ea98_0ca5_a578_7447_eb9a7fa7cc31["./type-provider"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> 0ec7ea98_0ca5_a578_7447_eb9a7fa7cc31
  e80980b2_9d58_285b_22f1_f985aaec3d65["./register"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> e80980b2_9d58_285b_22f1_f985aaec3d65
  79072a34_3222_2b87_85da_7f07094af121["./schema"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> 79072a34_3222_2b87_85da_7f07094af121
  ef0b4019_4e15_bb8c_0e07_0575207a4dcc["./plugin"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> ef0b4019_4e15_bb8c_0e07_0575207a4dcc
  a9742f1f_b12f_ce70_5a05_b76377999368["node:stream"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> a9742f1f_b12f_ce70_5a05_b76377999368
  473a42a8_a580_301b_42c4_5215be78511b["error"]
  f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad --> 473a42a8_a580_301b_42c4_5215be78511b
  style f0d1ac66_cb60_3d2a_ebcc_1faa11c21aad fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { Readable } from 'node:stream'
import { FastifyInstance } from './instance'
import { RouteOptions, RouteGenericInterface } from './route'
import { RawServerBase, RawServerDefault, RawRequestDefaultExpression, RawReplyDefaultExpression, ContextConfigDefault } from './utils'
import { FastifyRequest } from './request'
import { FastifyReply } from './reply'
import { FastifyError } from '@fastify/error'
import { FastifyBaseLogger } from './logger'
import {
  FastifyTypeProvider,
  FastifyTypeProviderDefault
} from './type-provider'
import { RegisterOptions } from './register'
import { FastifySchema } from './schema'
import { FastifyPluginOptions } from './plugin'

type HookHandlerDoneFunction = <TError extends Error = FastifyError>(err?: TError) => void

interface RequestPayload extends Readable {
  receivedEncodedLength?: number;
}

// Lifecycle Hooks

/**
 * `onRequest` is the first hook to be executed in the request lifecycle. There was no previous hook, the next hook will be `preParsing`.
 *  Notice: in the `onRequest` hook, request.body will always be null, because the body parsing happens before the `preHandler` hook.
 */
export interface onRequestHookHandler<
  RawServer extends RawServerBase = RawServerDefault,
  RawRequest extends RawRequestDefaultExpression<RawServer> = RawRequestDefaultExpression<RawServer>,
  RawReply extends RawReplyDefaultExpression<RawServer> = RawReplyDefaultExpression<RawServer>,
  RouteGeneric extends RouteGenericInterface = RouteGenericInterface,
  ContextConfig = ContextConfigDefault,
  SchemaCompiler extends FastifySchema = FastifySchema,
  TypeProvider extends FastifyTypeProvider = FastifyTypeProviderDefault,
  Logger extends FastifyBaseLogger = FastifyBaseLogger
> {
  (
    this: FastifyInstance<RawServer, RawRequest, RawReply, Logger, TypeProvider>,
    request: FastifyRequest<RouteGeneric, RawServer, RawRequest, SchemaCompiler, TypeProvider, ContextConfig, Logger>,
    reply: FastifyReply<RouteGeneric, RawServer, RawRequest, RawReply, ContextConfig, SchemaCompiler, TypeProvider>,
    done: HookHandlerDoneFunction
  ): void;
}

export interface onRequestAsyncHookHandler<
  RawServer extends RawServerBase = RawServerDefault,
  RawRequest extends RawRequestDefaultExpression<RawServer> = RawRequestDefaultExpression<RawServer>,
  RawReply extends RawReplyDefaultExpression<RawServer> = RawReplyDefaultExpression<RawServer>,
  RouteGeneric extends RouteGenericInterface = RouteGenericInterface,
  ContextConfig = ContextConfigDefault,
  SchemaCompiler extends FastifySchema = FastifySchema,
  TypeProvider extends FastifyTypeProvider = FastifyTypeProviderDefault,
  Logger extends FastifyBaseLogger = FastifyBaseLogger
> {
  (
    this: FastifyInstance<RawServer, RawRequest, RawReply, Logger, TypeProvider>,
    request: FastifyRequest<RouteGeneric, RawServer, RawRequest, SchemaCompiler, TypeProvider, ContextConfig, Logger>,
    reply: FastifyReply<RouteGeneric, RawServer, RawRequest, RawReply, ContextConfig, SchemaCompiler, TypeProvider>,
// ... (816 more lines)

Domain

Subdomains

Functions

Dependencies

  • ./instance
  • ./logger
  • ./plugin
  • ./register
  • ./reply
  • ./request
  • ./route
  • ./schema
  • ./type-provider
  • ./utils
  • error
  • node:stream

Frequently Asked Questions

What does hooks.d.ts do?
hooks.d.ts is a source file in the fastify codebase, written in typescript. It belongs to the CoreKernel domain, InstanceFactory subdomain.
What functions are defined in hooks.d.ts?
hooks.d.ts defines 1 function(s): err.
What does hooks.d.ts depend on?
hooks.d.ts imports 12 module(s): ./instance, ./logger, ./plugin, ./register, ./reply, ./request, ./route, ./schema, and 4 more.
Where is hooks.d.ts in the architecture?
hooks.d.ts is located at types/hooks.d.ts (domain: CoreKernel, subdomain: InstanceFactory, directory: types).

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free