winterspec
Version:
Write Winter-CG compatible routes with filesystem routing and tons of features
27 lines (26 loc) • 1.62 kB
TypeScript
/// <reference types="node" resolution-mode="require"/>
import { NodeHandler } from "@edge-runtime/node-utils";
import http from "node:http";
import type { Middleware } from "../middleware/index.js";
import type { WinterSpecAdapter, MakeRequestOptions } from "../types/winter-spec.js";
import { createRoutePathMapFromDirectory } from "../routes/create-route-map-from-directory.js";
import { getDefaultContext } from "../types/context.js";
import { createWinterSpecBundleFromDir } from "../serve/create-winter-spec-bundle-from-dir.js";
import { createWinterSpecFromRouteMap } from "../serve/create-winter-spec-from-route-map.js";
export interface WinterSpecNodeAdapterOptions {
middleware?: Middleware[];
port?: number;
}
export interface WinterSpecFetchOptions {
middleware?: Middleware[];
}
export declare const getNodeHandler: WinterSpecAdapter<[
WinterSpecNodeAdapterOptions
], NodeHandler>;
export declare const startServer: WinterSpecAdapter<[
WinterSpecNodeAdapterOptions
], Promise<http.Server>>;
export declare const startServerFromRoutesDir: (routesDirPath: string, opts: WinterSpecNodeAdapterOptions) => Promise<http.Server<typeof http.IncomingMessage, typeof http.ServerResponse>>;
export declare const createMakeRequestFromDir: (dirPath: string) => Promise<(request: Request, options?: MakeRequestOptions | undefined) => Promise<Response>>;
export declare const createFetchHandlerFromDir: (dirPath: string, opts?: WinterSpecFetchOptions) => Promise<typeof fetch>;
export { createRoutePathMapFromDirectory, getDefaultContext, createWinterSpecFromRouteMap, createWinterSpecBundleFromDir, };