import type { AnalyzedRoute, HandlerInfo, RouteTransformer, TransformContext } from './types.js';
/**
 * Built-in transformer that adds request validation using TypeBox
 */
export declare const validationTransformer: RouteTransformer;
/**
 * Transformer that adds OpenAPI documentation
 */
export declare const openApiTransformer: RouteTransformer;
/**
 * Transformer that optimizes catch-all routes
 */
export declare const catchAllTransformer: RouteTransformer;
/**
 * Code transformer utility class
 */
export declare class CodeTransformer {
    private project;
    constructor();
    /**
     * Transform handler code to use Elysia context
     */
    transformHandler(sourceCode: string, handler: HandlerInfo): string;
    /**
     * Extract response type from handler
     */
    extractResponseType(sourceCode: string, handler: HandlerInfo): string | undefined;
    /**
     * Check if handler uses specific imports
     */
    checkImports(sourceCode: string, importNames: string[]): Map<string, boolean>;
    /**
     * Inline simple utility imports
     */
    inlineUtilityImports(sourceCode: string): string;
    /**
     * Generate TypeBox schema from TypeScript interface
     */
    generateTypeBoxSchema(interfaceCode: string): string;
    /**
     * Map TypeScript type to TypeBox type
     */
    private mapTypeToTypeBox;
}
/**
 * Apply transformers to a route
 */
export declare function applyTransformers(route: AnalyzedRoute, transformers: RouteTransformer[], allRoutes: AnalyzedRoute[], options: TransformContext['options']): Promise<string[]>;
/**
 * Create a composite transformer from multiple transformers
 */
export declare function composeTransformers(...transformers: RouteTransformer[]): RouteTransformer;
//# sourceMappingURL=transformer.d.ts.map