import { BaseFieldType } from './types/objects'; import { RecordDetail } from './components/desktop/recordDetail'; import { List as DesktopList } from './components/desktop/list'; import { List as MobileList } from './components/mobile/list'; interface IMetaData { /** * 操作指定对象的元数据信息 * @param objectApiName 指定对象的 ApiName * @example * ``` * application.metadata.object('test').getFields() * ``` */ object(objectApiName: T): IKObject; } interface IKObject { /** * 读取对象的字段列表 */ getFields(): Promise; /** * 读取某字段的元数据信息 * @param fieldApiName 字段的 ApiName */ getField(fieldApiName: K): Promise; } interface IPage { getRecordDetail(componentName: string): Promise; getList(componentName: string): Promise; getId(): Promise; getMobileList(componentName: string): Promise; updateMobileList(componentName: string, params: any): Promise; } declare class MetaData implements IMetaData { constructor(ctx: any); object(objectApiName: keyof mt): IKObject; page(apiName: string, objectApiName: string, type: string): Page; } declare function metadata(ctx: any): IMetaData; declare class MetaDataV3 implements IMetaData { constructor(ctx: any); object(objectApiName: keyof mt): IKObject; } declare function metadataV3(ctx: any): IMetaData; declare class Page implements IPage { pageApiName: string; objectApiName: string; type: 'app' | 'record_page'; /** * * @param pageApiName: 页面apiName * @param objectApiName:对象apiName * @param type:app 或 record_page */ constructor(pageApiName: string, objectApiName: string, type: string); getRecordDetail(componentName: string): Promise; getList(componentName: string): Promise; getId(): Promise; getMobileList(componentName: string): Promise; updateMobileList(componentName: string, params: any): Promise; } declare function metaType(): any; export { IMetaData, IKObject, IPage, MetaData, metadata, metaType, MetaDataV3, metadataV3, };