import ts from 'typescript';
export interface RestApiRenderOptions {
    readonly apiName: string;
    readonly exportedFunctionName: string;
    readonly paths: Record<string, any>;
    readonly gen1ApiId: string;
    readonly gen1RootResourceId: string;
}
export declare class RestApiRenderer {
    private readonly hasAuth;
    constructor(hasAuth: boolean);
    render(restApi: RestApiRenderOptions): ts.NodeArray<ts.Node>;
    private renderImports;
    private renderBackendTypeImport;
    private renderDefineApi;
    private renderApi;
    private extractMethods;
    private mapPermissionsToMethods;
    private renderStack;
    private renderRestApiConstruct;
    private renderGatewayResponses;
    private renderGatewayResponse;
    private renderLambdaIntegrations;
    private renderGen1ApiReference;
    private renderGen1Policy;
    private renderGen1PolicyAttachment;
    private renderPaths;
    private renderCorsPreflightOptions;
    private renderPathPolicies;
    private renderAuthPathPolicy;
    private renderGroupPathPolicy;
    private renderGen1GroupPathPolicy;
    private renderOutput;
    private hasPathAuth;
}
//# sourceMappingURL=rest-api.renderer.d.ts.map