/** * Normalize path to forward slashes. */ export declare function normalizePath(p: string): string; /** * Generate a short hash for an ID. * Uses first 8 chars of SHA-256 hash for uniqueness while keeping IDs short. * Appends export name for easier debugging in production: "abc123#ExportName" */ export declare function hashId(filePath: string, exportName: string): string; /** * Generate an 8-char hex hash for an inline static handler call site. * Uses file path and line number (plus optional index for same-line collisions). */ export declare function hashInlineId(filePath: string, lineNumber: number, index?: number): string; export interface DetectedImports { loader: boolean; handle: boolean; locationState: boolean; prerenderHandler: boolean; staticHandler: boolean; router: boolean; any: boolean; } /** * Build a map from local binding name to exported names by walking * ExportNamedDeclaration nodes. Handles `export const X`, `export { X }`, * and `export { X as Y }`. Skips re-exports (`export { X } from "..."`). */ export declare function buildExportMap(program: any): Map; /** * Single-pass detection of all create* imports from @rangojs/router. * Returns which create functions are imported so we can skip unnecessary transforms. */ export declare function detectImports(code: string): DetectedImports; /** * Skip past a string literal, template literal, or comment starting at pos. * Returns the index after the closing delimiter, or pos if not at a * string/comment start. Handles escape sequences and nested ${} in templates. */ export declare function skipStringOrComment(code: string, pos: number): number; /** * Find the matching closing paren starting after an already-opened paren. * Skips strings, template literals, and comments so parens inside them * don't affect depth tracking. Returns the index after the closing paren. */ export declare function findMatchingParen(code: string, startPos: number): number; /** * Count the number of top-level arguments in a function call. * Skips nested parens, brackets, braces, strings, and comments. */ export declare function countArgs(code: string, startPos: number, endPos: number): number; /** * Find the end of a statement: skip whitespace and optional semicolon after * a closing paren position. */ export declare function findStatementEnd(code: string, pos: number): number; /** * Simple depth-counter paren matching. Does NOT skip strings/comments. * Used by loader and handle transforms where the simpler approach suffices. * Returns the index after the closing paren. */ export declare function findClosingParen(code: string, startPos: number): number; /** * Count arguments using simple depth counting (no string/comment awareness). * Used by the loader transform where the original code used this simpler approach. */ export declare function countArgsSimple(code: string, startPos: number, endPos: number): number; //# sourceMappingURL=expose-id-utils.d.ts.map