/// import type { AdapterAnnotation } from '../../intermediate/adapter-annotation'; import type { NodeShapeDefinition, ShapeDefinition } from '../../intermediate/definitions'; import type { ModelInfo } from '../../intermediate/model-info'; import type { Resource, RestResource } from '../../intermediate/resource'; import type path from 'path'; import type { CompilerPlugin } from '../../plugin'; export interface ConfigShape { name: string; shape: NodeShapeDefinition; } export declare enum ResourceParamType { UrlParameter = 0, QueryParameter = 1, Body = 2, Header = 3 } export interface ResourceParamInfo { name: string; isRequired: boolean; shape: ShapeDefinition; resourceParamType: ResourceParamType; } export declare function buildConfigParamInfos(resource: Resource): ResourceParamInfo[]; export declare function generateGetAdapter(typescriptFilePath: path.ParsedPath, compilerBaseOutputDir: path.ParsedPath, adapterAnnotation: AdapterAnnotation, resource: RestResource, modelInfo: ModelInfo, plugin?: CompilerPlugin): string; export declare function generatePatchAdapter(typescriptFilePath: path.ParsedPath, compilerBaseOutputDir: path.ParsedPath, adapterAnnotation: AdapterAnnotation, resource: RestResource, modelInfo: ModelInfo, plugin?: CompilerPlugin): string; export declare function generateDeleteAdapter(typescriptFilePath: path.ParsedPath, compilerBaseOutputDir: path.ParsedPath, adapterAnnotation: AdapterAnnotation, resource: RestResource, modelInfo: ModelInfo, plugin?: CompilerPlugin): string; export declare function generatePostAdapter(typescriptFilePath: path.ParsedPath, compilerBaseOutputDir: path.ParsedPath, adapterAnnotation: AdapterAnnotation, resource: RestResource, modelInfo: ModelInfo, plugin?: CompilerPlugin): string;