UNPKG

@pulzar/core

Version:

Next-generation Node.js framework for ultra-fast web applications with zero-reflection DI, GraphQL, WebSockets, events, and edge runtime support

85 lines 2.72 kB
export declare const CORE_TOKENS: { readonly APP_CONFIG: symbol; readonly APP_LOGGER: symbol; readonly HTTP_SERVER: symbol; readonly HTTP_ROUTER: symbol; readonly HTTP_MIDDLEWARE: symbol; readonly DATABASE_CONNECTION: symbol; readonly DATABASE_CLIENT: symbol; readonly CACHE_CLIENT: symbol; readonly REDIS_CLIENT: symbol; readonly EVENT_BUS: symbol; readonly EVENT_PUBLISHER: symbol; readonly EVENT_SUBSCRIBER: symbol; readonly TASK_SCHEDULER: symbol; readonly TASK_QUEUE: symbol; readonly WS_GATEWAY: symbol; readonly WS_SERVER: symbol; readonly GRAPHQL_SCHEMA: symbol; readonly GRAPHQL_RESOLVERS: symbol; readonly TRACER: symbol; readonly METRICS: symbol; readonly AUTH_SERVICE: symbol; readonly AUTH_GUARD: symbol; readonly I18N_SERVICE: symbol; readonly PLUGIN_MANAGER: symbol; readonly PLUGIN_REGISTRY: symbol; }; declare class TokenRegistry { private customTokens; create<T = any>(description: string): symbol; has(description: string): boolean; get(description: string): symbol | undefined; list(): Array<{ description: string; token: symbol; }>; clear(): void; } export declare const tokenRegistry: TokenRegistry; export declare const DI_TOKENS: { readonly create: any; readonly has: any; readonly get: any; readonly APP_CONFIG: symbol; readonly APP_LOGGER: symbol; readonly HTTP_SERVER: symbol; readonly HTTP_ROUTER: symbol; readonly HTTP_MIDDLEWARE: symbol; readonly DATABASE_CONNECTION: symbol; readonly DATABASE_CLIENT: symbol; readonly CACHE_CLIENT: symbol; readonly REDIS_CLIENT: symbol; readonly EVENT_BUS: symbol; readonly EVENT_PUBLISHER: symbol; readonly EVENT_SUBSCRIBER: symbol; readonly TASK_SCHEDULER: symbol; readonly TASK_QUEUE: symbol; readonly WS_GATEWAY: symbol; readonly WS_SERVER: symbol; readonly GRAPHQL_SCHEMA: symbol; readonly GRAPHQL_RESOLVERS: symbol; readonly TRACER: symbol; readonly METRICS: symbol; readonly AUTH_SERVICE: symbol; readonly AUTH_GUARD: symbol; readonly I18N_SERVICE: symbol; readonly PLUGIN_MANAGER: symbol; readonly PLUGIN_REGISTRY: symbol; }; export type CoreToken = (typeof CORE_TOKENS)[keyof typeof CORE_TOKENS]; export type Token<T = any> = CoreToken | symbol | string | (new (...args: any[]) => T); export interface TokenProvider<T = any> { token: Token; value: T; } export interface TokenFactory<T = any> { token: Token; factory: () => T; } export interface TokenClass<T = any> { token: Token; class: new (...args: any[]) => T; } export {}; //# sourceMappingURL=tokens.d.ts.map