/// import { API } from '@makeflow/types'; import { OperationTokenToken } from '@makeflow/types-nominal'; import { Dict } from 'tslang'; export interface IModel = Dict> extends API.PowerApp.Source { type: TType; storage: TStorage | undefined; } export declare type Model = InstallationModel | PowerItemModel | PowerNodeModel | PowerGlanceModel | PowerCustomCheckableItemModel; export declare type Definition = InstallationDefinition | PowerItemDefinition | PowerNodeDefinition | PowerGlanceDefinition | PowerCustomCheckableItemDefinition; declare type __Definition> | 'installation'> = TModel extends IModel ? { type: Type; primaryField: TPrimaryField; allowedFields: Exclude>, TPrimaryField>[]; } : never; export interface InstallationModel extends IModel<'installation'> { configs: Dict; resources: API.PowerApp.ResourcesMapping; users: API.PowerApp.UserInfo[]; accessToken?: string | undefined; } export declare type InstallationDefinition = __Definition; export interface IPowerAppResourceModel extends IModel { resourceToken: OperationTokenToken; } export interface PowerItemModel extends IPowerAppResourceModel<'power-item'> { } export declare type PowerItemDefinition = __Definition; export interface PowerNodeModel extends IPowerAppResourceModel<'power-node'> { } export declare type PowerNodeDefinition = __Definition; export interface PowerGlanceModel extends IPowerAppResourceModel<'power-glance'> { clock: number; disposed: boolean | undefined; } export declare type PowerGlanceDefinition = __Definition; export interface PowerCustomCheckableItemModel extends IPowerAppResourceModel<'power-custom-checkable-item'> { } export declare type PowerCustomCheckableItemDefinition = __Definition; declare type ModelTypeToDefinition = Extract; export declare const typeToModelDefinitionDict: { [TKey in Model['type']]: ModelTypeToDefinition; }; export declare type ModelToDefinition = ModelTypeToDefinition; export {};