UNPKG

@magicbe/api-generator

Version:

api 生成器

182 lines (181 loc) 4.25 kB
export interface ResBodyOtherRootProperty { type: string; items?: ResBodyOtherRoot; description: string; example?: string; } export interface ResBodyOtherRoot { $schema: string; type: string; properties: Record<string, ResBodyOtherRootProperty>; required: string[]; $$ref: string; } /** 接口详情数据路径参数 */ export interface ApiDetailsRootDataQueryPath { path: string; params: any[]; } /** 接口详情数据请求头 */ export interface ApiDetailsRootDataReqHeader { required: string; _id: string; name: string; value: string; } export interface ApiDetailsRootDataReqBodyRoot { required: string; _id: string; name: string; desc: string; } /** 接口详情数据 */ export interface ApiDetailsRootData { query_path: ApiDetailsRootDataQueryPath; edit_uid: number; status: string; type: string; req_body_is_json_schema: boolean; res_body_is_json_schema: boolean; api_opened: boolean; index: number; tag: string[]; _id: number; method: string; catid: number; title: string; path: string; project_id: number; res_body_type: string; res_body: string; req_body_other: string; req_params: ApiDetailsRootDataReqBodyRoot[]; req_query: ApiDetailsRootDataReqBodyRoot[]; req_headers: ApiDetailsRootDataReqBodyRoot[]; req_body_form: any[]; desc: string; markdown: string; req_body_type: string; uid: number; add_time: number; up_time: number; __v: number; username: string; } /** 接口详情数据 */ export interface ApiDetailsRoot { errcode: number; errmsg: string; data: ApiDetailsRootData; } /** 接口菜单列数据列表 */ export interface ListMenuRootDataList { edit_uid: number; status: string; index: number; tag: any[]; _id: number; method: string; catid: number; title: string; path: string; project_id: number; uid: number; add_time: number; up_time: number; } /** 接口菜单列数据 */ export interface ListMenuRootData { index: number; _id: number; name: string; project_id: number; desc: string; uid: number; add_time: number; up_time: number; __v: number; list: ListMenuRootDataList[]; } /** 项目基本信息对象环境头 */ export interface ProjectRootDataEnvHeader { name: string; value: string; } /** 项目基本信息对象环境 */ export interface ProjectRootDataEnv { header: ProjectRootDataEnvHeader[]; global: any[]; _id: string; name: string; domain: string; } /** 项目基本信息对象标签 */ export interface ProjectRootDataTag { _id: string; name: string; desc: string; } /** 项目基本信息对象数据 */ export interface ProjectRootData { switch_notice: boolean; is_mock_open: boolean; strice: boolean; is_json5: boolean; _id: number; name: string; basepath: string; project_type: string; uid: number; group_id: number; icon: string; color: string; add_time: number; up_time: number; env: ProjectRootDataEnv[]; tag: ProjectRootDataTag[]; cat: any[]; role: boolean; } /** 项目基本信息对象 */ export interface ProjectRoot { errcode: number; errmsg: string; data: ProjectRootData; } /** 接口菜单列数据 */ export interface ListMenuRoot { errcode: number; errmsg: string; data: ListMenuRootData[]; } export interface GeneratorYapiV3Options { service: string; target: string; output: string; function: string; token: string; cats?: number[]; } declare class GeneratorYapiV3 { private options; constructor(options: GeneratorYapiV3Options); gen(): Promise<void>; private genJavascript; private genTypescript; private parseQueryParams; private parsePathParams; private parseBodyParams; private parseResponseBody; private getTypeFromSchema; private generateNestedInterfaceName; private generateNestedInterface; private getInterfaceName; private getFunctionName; private buildUrl; /** * 创建目录 */ private static mkDir; } export default GeneratorYapiV3;