import { ApiFile, Import, Enum, Interface, PropertySignature, InterfaceModule, ApiModule, ApiFunction } from "./apiInterface"; export declare function renderComment(comment: string, isNewline?: boolean): string; /** * list = [{ * importClause: ['A', 'B', 'C'], * moduleSpecifier: "./moduleA" * }] * => * import { A , B, C } from "./moduleA" * @param list * @returns */ export declare function renderImport(list: Import[], messageMap: { [key: string]: 1; }): string; /** * list = [{ * name: Status, * members: [{ * name: 'START', * initializer: 'start' * },{ * name: 'END', initializer: 'end' * }] * }] * => * export enum Status{ * START = 'start', * END = 'end' * } * @param list * @returns */ export declare function renderEnum(list: Enum[]): string; export declare function renderInterfaceModule(list: InterfaceModule[], messageMap: { [key: string]: 1; }): string; export declare const renderPropertySignature: (ps: PropertySignature[], messageMap: { [key: string]: 1; }) => string; export declare function renderInterface(list: Interface[], messageMap: { [key: string]: 1; }): string; /** * list = [{ * name: 'getStatus', * apiName: 'webapi', * req: 'GetStatusRequest', * res: 'GetResponse', * url: '/api/xxx', * method: 'get', * }] * * => * export function getStatus(req: GetStatusRequest){ * return webapi.get('/api/xxx', req) * } * @param list * @returns */ export declare function renderFunction(list: ApiFunction[], apiName: string, apiPrefixPath: string, messageMap: { [key: string]: 1; }): string; export declare function renderApiModule(list: ApiModule[], apiName: string, apiPrefixPath: string, messageMap: { [key: string]: 1; }): string; export declare function genApiFileCode(apiInfo: ApiFile, apiName: string, apiPrefixPath: string, messageMap: { [key: string]: 1; }): string; export declare type GenCodeOptions = { apiFileMap: { [fileName: string]: ApiFile; }; apiName: string; apiPath: string; apiPrefixPath: string; eslintDisable?: boolean; }; export declare function genCode(options: GenCodeOptions): { [apiFilePath: string]: [code: string]; };