import { Instance } from 'mobx-state-tree'; import type { IAnyModelType, IModelType } from 'mobx-state-tree/dist/types/complex-types/model'; import type { MSTGQLStore, Query } from 'mst-gql'; import { createNativeStackNavigator, NativeStackScreenProps } from '@react-navigation/native-stack'; import React, { Component, FC, ReactElement } from 'react'; import type { IAnyType } from 'mobx-state-tree/dist/internal'; import type { IOptionalIType } from 'mobx-state-tree/dist/types/utility-types/optional'; import type { StyledProps } from 'native-base/src/theme/types'; import type { GestureResponderEvent } from 'react-native'; import type BaseSchema from 'yup/lib/schema'; import type { ObjectSchema } from 'yup'; export declare enum QueryState { PENDING = "PENDING", DONE = "DONE", ERROR = "ERROR" } export declare enum AssocSelectionType { NONE = "NONE", SINGLE = "SINGLE", MULTIPLE = "MULTIPLE" } /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ export declare function createEntityModel(modelConfig: EntityConfig): IModelType<{ currentPage: IOptionalIType, [undefined]>; pageSize: IOptionalIType, [undefined]>; count: import("mobx-state-tree").IMaybeNull>; joinFields: import("mobx-state-tree").IMaybeNull>; baseWhere: import("mobx-state-tree").IMaybeNull>; where: import("mobx-state-tree").IMaybeNull>; orderBy: IOptionalIType, [undefined]>; listQueryState: import("mobx-state-tree").IMaybeNull>; listQueryError: import("mobx-state-tree").IMaybe>; updateMutationState: import("mobx-state-tree").IMaybeNull>; updateMutationError: import("mobx-state-tree").IMaybeNull>; createMutationState: import("mobx-state-tree").IMaybeNull>; createMutationError: import("mobx-state-tree").IMaybeNull>; deleteMutationState: import("mobx-state-tree").IMaybeNull>; deleteMutationError: import("mobx-state-tree").IMaybeNull>; associateMutationState: import("mobx-state-tree").IMaybeNull>; associateMutationError: import("mobx-state-tree").IMaybeNull>; canUnassociateAny: IOptionalIType, [undefined]>; unassociateMutationState: import("mobx-state-tree").IMaybeNull>; unassociateMutationError: import("mobx-state-tree").IMaybeNull>; pageResult: IOptionalIType>>, [undefined]>; editId: import("mobx-state-tree").IMaybeNull>; selectedId: import("mobx-state-tree").IMaybeNull>; defaultCreateFieldValues: import("mobx-state-tree").IMaybeNull>; defaultUpdateFieldValues: import("mobx-state-tree").IMaybeNull>; loadQueryState: import("mobx-state-tree").IMaybeNull>; loadQueryError: import("mobx-state-tree").IMaybeNull>; loadedItem: import("mobx-state-tree").IMaybeNull>>; selectedItems: IOptionalIType>>, [undefined]>; createdItem: import("mobx-state-tree").IMaybeNull>>; updatedItem: import("mobx-state-tree").IMaybeNull>>; relations: IOptionalIType, [undefined]>; }, { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: GqlStoreType; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: BoolExpType; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: BoolExpType | null, orderBy: OrderByType[] | null): void; setBaseQueryCondition(where: BoolExpType | null): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: Array): void; reloadList(): void; setLoadedItem(item?: ModelType | undefined): void; addSelectedItem(item: ModelType): void; removeSelectedItem(item: ModelType): void; clearSlectedItems(): void; isSelectedItem(item: ModelType): any; setCreatedItem(item?: ModelType | undefined): void; setUpdatedItem(item?: ModelType | undefined): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: UpdateParamType): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: CreateParamType): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: ModelType[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>; /** * Convenience function to declare types.optional(someType {}) --> initialized(someType) * @param type */ export declare function initialized(type: IT): IOptionalIType; export interface RelationModelConfig { fieldName: string; fieldModel: EntityModel; fieldModelConfigurator: (fieldModel: EntityModelType, rootEntityModel: EntityModelType, params: RouteConfig) => void; assocModel?: EntityModel; assocModelConfigurator?: (assocModel: EntityModelType, rootEntityModel: EntityModelType, params: RouteConfig) => void; associate?: (gqlStore: StoreType, loadedItem: any, field: string, associatedIds: string[]) => Query; unassociate?: (gqlStore: StoreType, loadedItem: any, field: string, associatedIds: string[]) => Query; canUnassociate?: (item: any, viewType: ViewType, fieldModel: EntityModelType) => boolean; allowCreatingNewRelated?: boolean; assocSelectionType?: AssocSelectionType; prepareNew?: (gqlStore: StoreType, rootEntityModel: EntityModelType, model: EntityModelType, formValues: any, field: string) => void; createNew?: (gqlStore: StoreType, rootEntityModel: EntityModelType, model: EntityModelType, formValues: any, field: string) => Query; } /** * Defines a RelationModel for a specific field of a root model. * @param args relation arguments, see below: * @param args.fieldName name of the relationship field * @param args.fieldModel model to display currently set related values * @param args.fieldModelConfigurator function to configure the fieldModel instance at runtime * @param args.assocModel the model used for displaying entities which ar associable for this relation. It must be the same type model as fieldModel * but configured for displaying associaable entities. * @param args.assocModelConfigurator function to configure the assocModel instance at runtime * @param args.associate function to do the association between the entities selected in assocModel and the root model * @param args.associate function to do the unassociation between the entities selected in assocModel and the root model * @param args.allowCreatingNewRelated if true, displays a form for creating a new associable entity and assign it with the root model. Default: false * @param args.assocSelectionType how many items can be associated from the assocModel? Default to NONE, in which case specifying assocModel is * not necessary * @param args.prepareNew called to allow making changed to the form values before doing the actual mutation * @param args.prepareNew Not supported yet. Would be used to execute creation mutation in its own. This is now done by EntityForm using * model.create(). A createNew() implementation should eventually call rootModel.create() as well. */ export declare function relation(rootEntityModel: EntityModel, args: RelationModelConfig): IOptionalIType>; fieldName: IOptionalIType, [undefined]>; fieldModel: IOptionalIType, [undefined]>; pageSize: IOptionalIType, [undefined]>; count: import("mobx-state-tree").IMaybeNull>; joinFields: import("mobx-state-tree").IMaybeNull>; baseWhere: import("mobx-state-tree").IMaybeNull>; where: import("mobx-state-tree").IMaybeNull>; orderBy: IOptionalIType, [undefined]>; listQueryState: import("mobx-state-tree").IMaybeNull>; listQueryError: import("mobx-state-tree").IMaybe>; updateMutationState: import("mobx-state-tree").IMaybeNull>; updateMutationError: import("mobx-state-tree").IMaybeNull>; createMutationState: import("mobx-state-tree").IMaybeNull>; createMutationError: import("mobx-state-tree").IMaybeNull>; deleteMutationState: import("mobx-state-tree").IMaybeNull>; deleteMutationError: import("mobx-state-tree").IMaybeNull>; associateMutationState: import("mobx-state-tree").IMaybeNull>; associateMutationError: import("mobx-state-tree").IMaybeNull>; canUnassociateAny: IOptionalIType, [undefined]>; unassociateMutationState: import("mobx-state-tree").IMaybeNull>; unassociateMutationError: import("mobx-state-tree").IMaybeNull>; pageResult: IOptionalIType>>, [undefined]>; editId: import("mobx-state-tree").IMaybeNull>; selectedId: import("mobx-state-tree").IMaybeNull>; defaultCreateFieldValues: import("mobx-state-tree").IMaybeNull>; defaultUpdateFieldValues: import("mobx-state-tree").IMaybeNull>; loadQueryState: import("mobx-state-tree").IMaybeNull>; loadQueryError: import("mobx-state-tree").IMaybeNull>; loadedItem: import("mobx-state-tree").IMaybeNull>>; selectedItems: IOptionalIType>>, [undefined]>; createdItem: import("mobx-state-tree").IMaybeNull>>; updatedItem: import("mobx-state-tree").IMaybeNull>>; relations: IOptionalIType, [undefined]>; }, never, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>; }, { readonly allowCreatingNewRelated: boolean; readonly assocSelectionType: AssocSelectionType; readonly associate: ((gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>, loadedItem: any, field: string, associatedIds: string[]) => Query) | undefined; readonly unassociate: ((gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>, loadedItem: any, field: string, associatedIds: string[]) => Query) | undefined; readonly canUnassociate: ((item: any, viewType: ViewType, fieldModel: { currentPage: number; pageSize: number; count: number | null; joinFields: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; baseWhere: unknown; where: unknown; orderBy: unknown[] & import("mobx-state-tree").IStateTreeNode, [undefined]>>; listQueryState: QueryState | null; listQueryError: string | undefined; updateMutationState: QueryState | null; updateMutationError: string | null; createMutationState: QueryState | null; createMutationError: string | null; deleteMutationState: QueryState | null; deleteMutationError: string | null; associateMutationState: QueryState | null; associateMutationError: string | null; canUnassociateAny: boolean; unassociateMutationState: QueryState | null; unassociateMutationError: string | null; pageResult: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; editId: string | number | null; selectedId: string | number | null; defaultCreateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; defaultUpdateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; loadQueryState: QueryState | null; loadQueryError: string | null; loadedItem: any; selectedItems: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; createdItem: any; updatedItem: any; relations: {} & import("mobx-state-tree/dist/internal").NonEmptyObject & import("mobx-state-tree").IStateTreeNode, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; } & import("mobx-state-tree").IStateTreeNode, [undefined]>; pageSize: IOptionalIType, [undefined]>; count: import("mobx-state-tree").IMaybeNull>; joinFields: import("mobx-state-tree").IMaybeNull>; baseWhere: import("mobx-state-tree").IMaybeNull>; where: import("mobx-state-tree").IMaybeNull>; orderBy: IOptionalIType, [undefined]>; listQueryState: import("mobx-state-tree").IMaybeNull>; listQueryError: import("mobx-state-tree").IMaybe>; updateMutationState: import("mobx-state-tree").IMaybeNull>; updateMutationError: import("mobx-state-tree").IMaybeNull>; createMutationState: import("mobx-state-tree").IMaybeNull>; createMutationError: import("mobx-state-tree").IMaybeNull>; deleteMutationState: import("mobx-state-tree").IMaybeNull>; deleteMutationError: import("mobx-state-tree").IMaybeNull>; associateMutationState: import("mobx-state-tree").IMaybeNull>; associateMutationError: import("mobx-state-tree").IMaybeNull>; canUnassociateAny: IOptionalIType, [undefined]>; unassociateMutationState: import("mobx-state-tree").IMaybeNull>; unassociateMutationError: import("mobx-state-tree").IMaybeNull>; pageResult: IOptionalIType>>, [undefined]>; editId: import("mobx-state-tree").IMaybeNull>; selectedId: import("mobx-state-tree").IMaybeNull>; defaultCreateFieldValues: import("mobx-state-tree").IMaybeNull>; defaultUpdateFieldValues: import("mobx-state-tree").IMaybeNull>; loadQueryState: import("mobx-state-tree").IMaybeNull>; loadQueryError: import("mobx-state-tree").IMaybeNull>; loadedItem: import("mobx-state-tree").IMaybeNull>>; selectedItems: IOptionalIType>>, [undefined]>; createdItem: import("mobx-state-tree").IMaybeNull>>; updatedItem: import("mobx-state-tree").IMaybeNull>>; relations: IOptionalIType, [undefined]>; }, { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => boolean) | undefined; readonly prepareNew: ((gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>, rootEntityModel: { currentPage: number; pageSize: number; count: number | null; joinFields: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; baseWhere: unknown; where: unknown; orderBy: unknown[] & import("mobx-state-tree").IStateTreeNode, [undefined]>>; listQueryState: QueryState | null; listQueryError: string | undefined; updateMutationState: QueryState | null; updateMutationError: string | null; createMutationState: QueryState | null; createMutationError: string | null; deleteMutationState: QueryState | null; deleteMutationError: string | null; associateMutationState: QueryState | null; associateMutationError: string | null; canUnassociateAny: boolean; unassociateMutationState: QueryState | null; unassociateMutationError: string | null; pageResult: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; editId: string | number | null; selectedId: string | number | null; defaultCreateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; defaultUpdateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; loadQueryState: QueryState | null; loadQueryError: string | null; loadedItem: any; selectedItems: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; createdItem: any; updatedItem: any; relations: {} & import("mobx-state-tree/dist/internal").NonEmptyObject & import("mobx-state-tree").IStateTreeNode, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; } & import("mobx-state-tree").IStateTreeNode, [undefined]>; pageSize: IOptionalIType, [undefined]>; count: import("mobx-state-tree").IMaybeNull>; joinFields: import("mobx-state-tree").IMaybeNull>; baseWhere: import("mobx-state-tree").IMaybeNull>; where: import("mobx-state-tree").IMaybeNull>; orderBy: IOptionalIType, [undefined]>; listQueryState: import("mobx-state-tree").IMaybeNull>; listQueryError: import("mobx-state-tree").IMaybe>; updateMutationState: import("mobx-state-tree").IMaybeNull>; updateMutationError: import("mobx-state-tree").IMaybeNull>; createMutationState: import("mobx-state-tree").IMaybeNull>; createMutationError: import("mobx-state-tree").IMaybeNull>; deleteMutationState: import("mobx-state-tree").IMaybeNull>; deleteMutationError: import("mobx-state-tree").IMaybeNull>; associateMutationState: import("mobx-state-tree").IMaybeNull>; associateMutationError: import("mobx-state-tree").IMaybeNull>; canUnassociateAny: IOptionalIType, [undefined]>; unassociateMutationState: import("mobx-state-tree").IMaybeNull>; unassociateMutationError: import("mobx-state-tree").IMaybeNull>; pageResult: IOptionalIType>>, [undefined]>; editId: import("mobx-state-tree").IMaybeNull>; selectedId: import("mobx-state-tree").IMaybeNull>; defaultCreateFieldValues: import("mobx-state-tree").IMaybeNull>; defaultUpdateFieldValues: import("mobx-state-tree").IMaybeNull>; loadQueryState: import("mobx-state-tree").IMaybeNull>; loadQueryError: import("mobx-state-tree").IMaybeNull>; loadedItem: import("mobx-state-tree").IMaybeNull>>; selectedItems: IOptionalIType>>, [undefined]>; createdItem: import("mobx-state-tree").IMaybeNull>>; updatedItem: import("mobx-state-tree").IMaybeNull>>; relations: IOptionalIType, [undefined]>; }, { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>, model: { currentPage: number; pageSize: number; count: number | null; joinFields: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; baseWhere: unknown; where: unknown; orderBy: unknown[] & import("mobx-state-tree").IStateTreeNode, [undefined]>>; listQueryState: QueryState | null; listQueryError: string | undefined; updateMutationState: QueryState | null; updateMutationError: string | null; createMutationState: QueryState | null; createMutationError: string | null; deleteMutationState: QueryState | null; deleteMutationError: string | null; associateMutationState: QueryState | null; associateMutationError: string | null; canUnassociateAny: boolean; unassociateMutationState: QueryState | null; unassociateMutationError: string | null; pageResult: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; editId: string | number | null; selectedId: string | number | null; defaultCreateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; defaultUpdateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; loadQueryState: QueryState | null; loadQueryError: string | null; loadedItem: any; selectedItems: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; createdItem: any; updatedItem: any; relations: {} & import("mobx-state-tree/dist/internal").NonEmptyObject & import("mobx-state-tree").IStateTreeNode, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; } & import("mobx-state-tree").IStateTreeNode, [undefined]>; pageSize: IOptionalIType, [undefined]>; count: import("mobx-state-tree").IMaybeNull>; joinFields: import("mobx-state-tree").IMaybeNull>; baseWhere: import("mobx-state-tree").IMaybeNull>; where: import("mobx-state-tree").IMaybeNull>; orderBy: IOptionalIType, [undefined]>; listQueryState: import("mobx-state-tree").IMaybeNull>; listQueryError: import("mobx-state-tree").IMaybe>; updateMutationState: import("mobx-state-tree").IMaybeNull>; updateMutationError: import("mobx-state-tree").IMaybeNull>; createMutationState: import("mobx-state-tree").IMaybeNull>; createMutationError: import("mobx-state-tree").IMaybeNull>; deleteMutationState: import("mobx-state-tree").IMaybeNull>; deleteMutationError: import("mobx-state-tree").IMaybeNull>; associateMutationState: import("mobx-state-tree").IMaybeNull>; associateMutationError: import("mobx-state-tree").IMaybeNull>; canUnassociateAny: IOptionalIType, [undefined]>; unassociateMutationState: import("mobx-state-tree").IMaybeNull>; unassociateMutationError: import("mobx-state-tree").IMaybeNull>; pageResult: IOptionalIType>>, [undefined]>; editId: import("mobx-state-tree").IMaybeNull>; selectedId: import("mobx-state-tree").IMaybeNull>; defaultCreateFieldValues: import("mobx-state-tree").IMaybeNull>; defaultUpdateFieldValues: import("mobx-state-tree").IMaybeNull>; loadQueryState: import("mobx-state-tree").IMaybeNull>; loadQueryError: import("mobx-state-tree").IMaybeNull>; loadedItem: import("mobx-state-tree").IMaybeNull>>; selectedItems: IOptionalIType>>, [undefined]>; createdItem: import("mobx-state-tree").IMaybeNull>>; updatedItem: import("mobx-state-tree").IMaybeNull>>; relations: IOptionalIType, [undefined]>; }, { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>, formValues: any, field: string) => void) | undefined; readonly createNew: ((gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>, rootEntityModel: { currentPage: number; pageSize: number; count: number | null; joinFields: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; baseWhere: unknown; where: unknown; orderBy: unknown[] & import("mobx-state-tree").IStateTreeNode, [undefined]>>; listQueryState: QueryState | null; listQueryError: string | undefined; updateMutationState: QueryState | null; updateMutationError: string | null; createMutationState: QueryState | null; createMutationError: string | null; deleteMutationState: QueryState | null; deleteMutationError: string | null; associateMutationState: QueryState | null; associateMutationError: string | null; canUnassociateAny: boolean; unassociateMutationState: QueryState | null; unassociateMutationError: string | null; pageResult: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; editId: string | number | null; selectedId: string | number | null; defaultCreateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; defaultUpdateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; loadQueryState: QueryState | null; loadQueryError: string | null; loadedItem: any; selectedItems: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; createdItem: any; updatedItem: any; relations: {} & import("mobx-state-tree/dist/internal").NonEmptyObject & import("mobx-state-tree").IStateTreeNode, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; } & import("mobx-state-tree").IStateTreeNode, [undefined]>; pageSize: IOptionalIType, [undefined]>; count: import("mobx-state-tree").IMaybeNull>; joinFields: import("mobx-state-tree").IMaybeNull>; baseWhere: import("mobx-state-tree").IMaybeNull>; where: import("mobx-state-tree").IMaybeNull>; orderBy: IOptionalIType, [undefined]>; listQueryState: import("mobx-state-tree").IMaybeNull>; listQueryError: import("mobx-state-tree").IMaybe>; updateMutationState: import("mobx-state-tree").IMaybeNull>; updateMutationError: import("mobx-state-tree").IMaybeNull>; createMutationState: import("mobx-state-tree").IMaybeNull>; createMutationError: import("mobx-state-tree").IMaybeNull>; deleteMutationState: import("mobx-state-tree").IMaybeNull>; deleteMutationError: import("mobx-state-tree").IMaybeNull>; associateMutationState: import("mobx-state-tree").IMaybeNull>; associateMutationError: import("mobx-state-tree").IMaybeNull>; canUnassociateAny: IOptionalIType, [undefined]>; unassociateMutationState: import("mobx-state-tree").IMaybeNull>; unassociateMutationError: import("mobx-state-tree").IMaybeNull>; pageResult: IOptionalIType>>, [undefined]>; editId: import("mobx-state-tree").IMaybeNull>; selectedId: import("mobx-state-tree").IMaybeNull>; defaultCreateFieldValues: import("mobx-state-tree").IMaybeNull>; defaultUpdateFieldValues: import("mobx-state-tree").IMaybeNull>; loadQueryState: import("mobx-state-tree").IMaybeNull>; loadQueryError: import("mobx-state-tree").IMaybeNull>; loadedItem: import("mobx-state-tree").IMaybeNull>>; selectedItems: IOptionalIType>>, [undefined]>; createdItem: import("mobx-state-tree").IMaybeNull>>; updatedItem: import("mobx-state-tree").IMaybeNull>>; relations: IOptionalIType, [undefined]>; }, { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>, model: { currentPage: number; pageSize: number; count: number | null; joinFields: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; baseWhere: unknown; where: unknown; orderBy: unknown[] & import("mobx-state-tree").IStateTreeNode, [undefined]>>; listQueryState: QueryState | null; listQueryError: string | undefined; updateMutationState: QueryState | null; updateMutationError: string | null; createMutationState: QueryState | null; createMutationError: string | null; deleteMutationState: QueryState | null; deleteMutationError: string | null; associateMutationState: QueryState | null; associateMutationError: string | null; canUnassociateAny: boolean; unassociateMutationState: QueryState | null; unassociateMutationError: string | null; pageResult: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; editId: string | number | null; selectedId: string | number | null; defaultCreateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; defaultUpdateFieldValues: ({ [key: string]: any; } & import("mobx-state-tree").IStateTreeNode>>) | null; loadQueryState: QueryState | null; loadQueryError: string | null; loadedItem: any; selectedItems: import("mobx-state-tree").IMSTArray>> & import("mobx-state-tree").IStateTreeNode>>, [undefined]>>; createdItem: any; updatedItem: any; relations: {} & import("mobx-state-tree/dist/internal").NonEmptyObject & import("mobx-state-tree").IStateTreeNode, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; } & import("mobx-state-tree").IStateTreeNode, [undefined]>; pageSize: IOptionalIType, [undefined]>; count: import("mobx-state-tree").IMaybeNull>; joinFields: import("mobx-state-tree").IMaybeNull>; baseWhere: import("mobx-state-tree").IMaybeNull>; where: import("mobx-state-tree").IMaybeNull>; orderBy: IOptionalIType, [undefined]>; listQueryState: import("mobx-state-tree").IMaybeNull>; listQueryError: import("mobx-state-tree").IMaybe>; updateMutationState: import("mobx-state-tree").IMaybeNull>; updateMutationError: import("mobx-state-tree").IMaybeNull>; createMutationState: import("mobx-state-tree").IMaybeNull>; createMutationError: import("mobx-state-tree").IMaybeNull>; deleteMutationState: import("mobx-state-tree").IMaybeNull>; deleteMutationError: import("mobx-state-tree").IMaybeNull>; associateMutationState: import("mobx-state-tree").IMaybeNull>; associateMutationError: import("mobx-state-tree").IMaybeNull>; canUnassociateAny: IOptionalIType, [undefined]>; unassociateMutationState: import("mobx-state-tree").IMaybeNull>; unassociateMutationError: import("mobx-state-tree").IMaybeNull>; pageResult: IOptionalIType>>, [undefined]>; editId: import("mobx-state-tree").IMaybeNull>; selectedId: import("mobx-state-tree").IMaybeNull>; defaultCreateFieldValues: import("mobx-state-tree").IMaybeNull>; defaultUpdateFieldValues: import("mobx-state-tree").IMaybeNull>; loadQueryState: import("mobx-state-tree").IMaybeNull>; loadQueryError: import("mobx-state-tree").IMaybeNull>; loadedItem: import("mobx-state-tree").IMaybeNull>>; selectedItems: IOptionalIType>>, [undefined]>; createdItem: import("mobx-state-tree").IMaybeNull>>; updatedItem: import("mobx-state-tree").IMaybeNull>>; relations: IOptionalIType, [undefined]>; }, { getParentField(field: string): any; } & { afterCreate: () => void; reset: () => void; } & { readonly numberOfPages: number; readonly gqlStore: { __queryCache: import("mobx-state-tree").IMSTMap> & import("mobx-state-tree").IStateTreeNode>, [undefined]>>; } & import("mobx-state-tree/dist/internal").NonEmptyObject & { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; } & import("mobx-state-tree").IStateTreeNode>, [undefined]>; }, { ssr: boolean; __promises: Map>; __afterInit: boolean; gqlHttpClient: import("mst-gql/dist/MSTGQLStore").RequestHandler; gqlWsClient: SubscriptionClient; } & { merge: (data: unknown) => any; deflate: (data: unknown) => any; mutate: (mutation: string | import("graphql").DocumentNode, variables?: any, optimisticUpdate?: (() => void) | undefined) => Query; query: (query: string | import("graphql").DocumentNode, variables?: any, options?: import("mst-gql").QueryOptions | undefined) => Query; subscribe: (query: string | import("graphql").DocumentNode, variables?: any, onData?: ((item: T_2) => void) | undefined, onError?: ((error: Error) => void) | undefined) => () => void; rawRequest: (query: string, variables: any) => Promise; setHttpClient: (value: import("mst-gql/dist/MSTGQLStore").RequestHandler) => void; setWsClient: (value: SubscriptionClient) => void; /** * Creates an MST model for listing, filtering, editing and creating records of type `ModelType`. * * As we basically want to provide the same kind of DataTable based visualisation for handling all our records it would be tedious to * generate a model, which basically always does the same but for different mst-gql generated model types. So, instead we have * createEntityModel to generate and MST model for any entity type we have providing as a configuration selection sets * for listing and loading an entity (`listOperationSelectionSet`, `loadOperationSelectionSet`) and functions for updating and creating these * entities (`updateMutation`, `createMutation`). * * Accompanying a model created by createEntityModel() there will be generic screens as well, which handle the common * functionality of listing these entities; creation and editing requires somewhat specific forms for each entity type, so these will * not be generalized. * * @param modelConfig */ __pushPromise(promise: Promise<{}>, queryKey: string): void; __runInStoreContext(fn: () => T_3): T_3; __cacheResponse(key: string, response: any): void; __onAfterInit(): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>; /** * Calculates the final where condition from self.baseWhere and self.where */ readonly finalWhere: unknown; } & { configureRelated(rootEntityModel: any, params: RouteConfig): void; readonly relatedFieldName: null; readonly rootEntityModel: null; readonly rootEntityModelName: null; createEntityNavigator(model: any): React.ComponentType<{}>; } & { /** * Internal. Calculate the number of all elements in list * Moved out of the ain actions so that it can be called as * yield self._count() otherwise typing of the model blows up */ _count(): Query; } & { readonly config: EntityConfig; setConfig(newConfig: EntityConfigAny): void; } & { setPageSize(pageSize: number): void; /** * Sets the query parameters for listing ServiceAccounts * @param where conditions for querying * @param orderBy sort specification for ordering result */ setQueryParams(where: unknown, orderBy: unknown[] | null): void; setBaseQueryCondition(where: unknown): void; /** * Internal. Set count of all elements we are about to display. * @param count */ _setCount(count: number | null): void; setListQueryState(state: QueryState, error?: string | undefined): void; setPageResult(pageResult: unknown[]): void; reloadList(): void; setLoadedItem(item?: unknown): void; addSelectedItem(item: unknown): void; removeSelectedItem(item: unknown): void; clearSlectedItems(): void; isSelectedItem(item: unknown): any; setCreatedItem(item?: unknown): void; setUpdatedItem(item?: unknown): void; setEditId(id?: string | number | null): void; setSelectedId(id?: string | number | null): void; /** * List elements on the given page * @param page page to display */ list: (page: number) => Promise>; setLoadQueryState(state: QueryState, error?: string | null): void; load(id: string): Query; setDefaultCreateFieldValues(values: { [key: string]: any; }): void; setDefaultUpdateFieldValues(values: { [key: string]: any; }): void; setUpdateMutationState(state: QueryState, error?: string | null): void; update(params: unknown): Query; setCreateMutationState(state: QueryState, error?: string | null): void; create(params: unknown): Query; setAssociateMutationState(state: QueryState, error?: string | null): void; associate(relation: any, associateIds: string[] | number[]): any; setCanUnassociateAny(flag: boolean): void; setUnassociateMutationState(state: QueryState, error?: string | null): void; unassociate(relation: any, associateIds: string[] | number[]): any; setDeleteMutationState(state: QueryState, error?: string | null): void; delete(items: unknown[]): Query; setJoinFields(joinFields: { [key: string]: any; }): void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>, formValues: any, field: string) => Query) | undefined; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>; /** * True if model is of type "RelationModel", ie. one that is created using the `relation()` function. * @param model */ export declare function isRelation(model: IAnyModelType): boolean; export declare type RelationModelType = Instance> & { assocModel?: EntityModelType; }; export declare type EntityModel = ReturnType; export declare type EntityModelType = Instance; /** * Creates stack navigator and defines screen for an EntityModelType with possible additional * screens generated by additionalScreens * @param rootEntityModel * @param additionalScreens */ export declare function createEntityNavigator(rootEntityModel: EntityModelType, initalRouteName?: string, additionalScreens?: (entityModel: EntityModelType, Stack: ReturnType, props: React.PropsWithChildren>) => JSX.Element): React.FC>; export declare class FieldConfigValues { name: string; displayName?: string | ((config: FieldConfig, viewType: ViewType, item?: any) => string); numeric?: boolean | ((config: FieldConfig) => boolean); listable?: boolean | ((config: FieldConfig) => boolean); listableInDetails?: boolean | ((config: FieldConfig) => boolean); searchable?: boolean | ((config: FieldConfig) => boolean); searchAccessor?: string | ((config: FieldConfig) => string); sortable?: boolean | ((config: FieldConfig) => boolean); sortAccessor?: string | ((config: FieldConfig) => string); editable?: boolean | ((config: FieldConfig) => boolean); fieldValueAccessor?: string | ((config: FieldConfig) => string); includeForRoles?: string[] | ((config: FieldConfig, item?: ModelType) => string[]); excludeForRoles?: string[] | ((config: FieldConfig, item?: ModelType) => string[]); _hidden?: boolean; fieldValue?: (config: FieldConfig, viewType: ViewType, item: ModelType) => string; editableAtCreation?: boolean | ((config: FieldConfig) => boolean); viewInForm?: boolean | ((config: FieldConfig) => boolean); viewInFormAtCreation?: boolean | ((config: FieldConfig) => boolean); validation?: BaseSchema | ((config: FieldConfig) => BaseSchema); validationCyclic?: [string, string] | ((config: FieldConfig) => [string, string]); createValidation?: BaseSchema | ((config: FieldConfig) => BaseSchema); editValidation?: BaseSchema | ((config: FieldConfig) => BaseSchema); inputType?: InputType | ((config: FieldConfig, item?: ModelType) => InputType); selectValues?: SelectValues | ((config: FieldConfig, item?: ModelType) => SelectValues); tableProps?: { columnWidthFlex?: number | ((config: FieldConfig) => number); titleComponent?: (config: FieldConfig) => Component; titleProps?: StyledProps | ((config: FieldConfig) => StyledProps); cellComponent?: (config: FieldConfig, item: ModelType) => Component; cellProps?: StyledProps | ((config: FieldConfig, item: ModelType) => StyledProps); textProps?: StyledProps | ((config: FieldConfig, item: ModelType) => StyledProps); }; inForm?: { inputComponent?: (config: FieldConfig, item: ModelType, validationSchema: ObjectSchema) => Component; }; inData?: { cellComponent?: (config: FieldConfig, item: ModelType, model: any) => Component; }; assocSingle?: { modelKey: string | ((config: FieldConfig, item: ModelType) => string); screenRoute: string | ((config: FieldConfig, item: ModelType) => string); assocFieldValue: (config: FieldConfig, viewType: ViewType, item: ModelType, formValues: any, gqlStore: StoreType) => string; baseWhere?: object | ((config: FieldConfig, item: ModelType, formValues: any) => any); }; constructor(args: FieldConfigValues); } export declare class FieldConfig extends FieldConfigValues { valueOrDefault(val: T | ((config: FieldConfig, item: any) => T), def: T, fieldConfig: FieldConfig, item?: any): T; displayNameVal(viewType?: ViewType, item?: any): any; numericVal(): boolean | undefined; listableVal(): boolean | undefined; listableInDetailsVal(): boolean | undefined; searchableVal(): boolean | undefined; searchAccessorVal(): string | undefined; sortableVal(): boolean | undefined; sortAccessorVal(): string; editableVal(): boolean | undefined; fieldValueAccessorVal(): string | null | undefined; editableAtCreationVal(): boolean | undefined; viewInFormVal(): boolean | undefined; viewInFormAtCreationVal(): boolean | undefined; validationVal(): BaseSchema | null | undefined; validationCyclicVal(): [string, string] | null | undefined; editValidationVal(): BaseSchema | null | undefined; createValidationVal(): BaseSchema | null | undefined; columnWidthFlexVal(): number | undefined; titleComponentVal(): React.Component<{}, {}, any> | null | undefined; titlePropsVal(): StyledProps | null | undefined; cellComponentVal(): React.Component<{}, {}, any> | null | undefined; cellPropsVal(item: any): StyledProps | null | undefined; textPropsVal(item: any): StyledProps | null | undefined; inputTypeVal(item?: any): "select" | "text" | "date" | "password" | "datetime" | "assocSingle" | undefined; selectValuesVal(item?: any): SelectValues; includeForRolesVal(item?: any): string[] | undefined; excludeForRolesVal(item?: any): string[] | undefined; hiddenVal(): boolean | undefined; assocSingleModelKeyVal(item: any): string; assocSingleScreenRouteVal(item: any): string; assocSingleBaseWhereVal(item: any, fieldValues: object): any; } export declare type StoreType = Instance; export declare class EntityConfigValues { _randomId?: number | undefined; modelName: string; handledModel: IModelType; handledModelBaseName: string; listOperation: string; listOperationSelectionSet: string; loadOperation: string; loadOperationSelectionSet: string; updateMutation?: (gqlStore: StoreType, loadedItem: ModelType, params: UpdateParamType) => Query; updateMutationResultPath?: string; createMutation?: (gqlStore: StoreType, params: CreateParamType) => Query; createMutationResultPath?: string; deleteMutation?: (gqlStore: StoreType, items: ModelType[]) => Query; associateMutation?: (gqlStore: StoreType, loadedItem: ModelType, field: string, associatedIds: string[]) => Query; unassociateMutation?: (gqlStore: StoreType, loadedItem: ModelType, field: string, associatedIds: string[]) => Query; title: string; navigationRootName?: string; listScreen?: (config: EntityConfig) => FC>; entityListScreenConfig: { title?: string | ((config: EntityConfig) => string); routeTitle?: string | ((config: EntityConfig) => string); routeName?: string | ((config: EntityConfig) => string); tableComponent?: (config: EntityConfig) => Component; headerProps?: StyledProps | ((config: EntityConfig) => StyledProps); rowComponent?: (config: EntityConfig, item: ModelType) => Component; rowProps?: StyledProps | ((config: EntityConfig, item: ModelType) => StyledProps); selectionType?: TableSelectionType; onSelection?: null | ((event: GestureResponderEvent, item: ModelType | ModelType[], config: EntityConfig) => void) | undefined; onRowPress?: null | ((event: GestureResponderEvent, item: ModelType, config: EntityConfig) => void) | undefined; onRowHoverIn?: null | ((event: GestureResponderEvent, item: ModelType, config: EntityConfig) => void) | undefined; onRowHoverOut?: null | ((event: GestureResponderEvent, item: ModelType, config: EntityConfig) => void) | undefined; onNewPress?: null | ((event: GestureResponderEvent, config: EntityConfig) => void) | undefined; onAssocPress?: null | ((event: GestureResponderEvent, config: EntityConfig) => void) | undefined; onDeletePress?: null | ((event: GestureResponderEvent, item: ModelType, config: EntityConfig) => void) | undefined; onUnassocPress?: null | ((event: GestureResponderEvent, item: ModelType, config: EntityConfig) => void) | undefined; simpleFilters?: SimpleFilter[]; generateActionComponent?: (config: EntityConfig, item: ModelType) => ReactElement; }; detailsScreen?: (config: EntityConfig, item: ModelType) => FC>; entityDetailScreenConfig?: { title?: string | ((config: EntityConfig, item: ModelType) => string); routeTitle?: string | ((config: EntityConfig, item: ModelType) => string); dataTitle?: string | ((config: EntityConfig, item: ModelType) => string); routeName?: string | ((config: EntityConfig) => string); }; dataComponent?: (config: EntityConfig, item: ModelType) => FC; entityDataConfig?: { dataRowGenerator?: (field: FieldConfig, obj: ModelType, model: any) => JSX.Element; dataCellGenerator?: (field: FieldConfig, obj: ModelType, model: any) => JSX.Element; }; assocScreen?: (config: EntityConfig, item: ModelType) => FC>; assocScreenConfig?: { title?: string | ((config: EntityConfig, item: ModelType) => string); routeTitle?: string | ((config: EntityConfig, item: ModelType) => string); routeName?: string | ((config: EntityConfig) => string); }; createFormScreen?: (config: EntityConfig) => FC>; entityCreateFormScreenConfig?: { title?: string | ((config: EntityConfig) => string); routeTitle?: string | ((config: EntityConfig) => string); routeName?: string | ((config: EntityConfig) => string); fieldOrder?: string[]; sections?: { start: string; title: string; }[]; }; editFormScreen?: (config: EntityConfig, item: ModelType) => FC>; entityEditFormScreenConfig?: { title?: string | ((config: EntityConfig, item: ModelType) => string); routeTitle?: string | ((config: EntityConfig, item: ModelType) => string); routeName?: string | ((config: EntityConfig) => string); fieldOrder?: string[]; sections?: { start: string; title: string; }[]; }; canDelete?: (item: ModelType, viewType: ViewType, config: EntityConfig) => boolean; canUnassociate?: (item: ModelType, viewType: ViewType, config: EntityConfig) => boolean; calcFilterCond?: null | undefined | ((filter: string, stringFields: string[], numFields: string[]) => any); fields?: FieldConfig[] | ((config: EntityConfig) => FieldConfig[]); ignoreRelations?: boolean; relations?: () => RelationModelConfig[]; form?: { fieldOrder?: string[]; sections?: { start: string; title: string; }[]; }; create?: {}; edit?: {}; delete?: {}; constructor(args: EntityConfigValues); } export declare type EntityConfigValuesAny = EntityConfigValues; export declare type OverridableEntityConfigValues = Partial; export declare class EntityConfig extends EntityConfigValues { entityModel: any; setEntityModel(entityModel: any): void; valueOrDefault(val: T | ((config: EntityConfig, item: any) => T), def: T, fieldConfig: EntityConfig, item?: any): T; headerPropsVal(): StyledProps | undefined; rowPropsVal(item: any): StyledProps | undefined; fieldsVal(): any; listScreenVal(): React.FC<{ navigation: import("@react-navigation/native-stack").NativeStackNavigationProp; route: import("@react-navigation/core").RouteProp; }> | undefined; listScreenTitleVal(): string | undefined; listScreenRouteNameVal(): string; listScreenSelectionTypeVal(): TableSelectionType | undefined; detailsScreenVal(item?: any): React.FC<{ navigation: import("@react-navigation/native-stack").NativeStackNavigationProp; route: import("@react-navigation/core").RouteProp; }> | undefined; detailsScreenTitleVal(item: any): string | undefined; detailsScreenDataTitleVal(item: any): string | undefined; detailsScreenRouteTitleVal(item: any): string | undefined; detailsScreenRouteNameVal(): string; dataComponentVal(item?: any): React.FC; dataRowGeneratorVal(): ((field: FieldConfig, obj: ModelType, model: any) => JSX.Element) | undefined; dataCellVal(): ((field: FieldConfig, obj: ModelType, model: any) => JSX.Element) | undefined; assocScreenVal(): React.FC<{ navigation: import("@react-navigation/native-stack").NativeStackNavigationProp; route: import("@react-navigation/core").RouteProp; }> | undefined; assocScreenTitleVal(item: any): string | undefined; assocScreenRouteTitleVal(item: any): string | undefined; assocScreenRouteNameVal(): string; createFormScreenVal(): React.FC<{ navigation: import("@react-navigation/native-stack").NativeStackNavigationProp; route: import("@react-navigation/core").RouteProp; }> | undefined; createFormScreenTitleVal(): string | undefined; createFormScreenRouteTitleVal(): string | undefined; createFormScreenRouteNameVal(): string; editFormScreenVal(): React.FC<{ navigation: import("@react-navigation/native-stack").NativeStackNavigationProp; route: import("@react-navigation/core").RouteProp; }> | undefined; editFormScreenTitleVal(item: any): string | undefined; editFormScreenRouteTitleVal(item: any): string | undefined; editFormScreenRouteNameVal(): string; constructor(args: EntityConfigValues); } export declare type EntityConfigAny = EntityConfig; export declare type InputType = 'text' | 'password' | 'select' | 'date' | 'datetime' | 'assocSingle'; export declare type SelectValues = { [key: string]: string; }; export declare type SimpleFilter = CheckboxFilter | RadioButtonFilter; export declare type BaseFilter = { label: string; checked?: boolean; condition: BoolExpType; id?: string; }; export declare type CheckboxFilter = BaseFilter & { type: 'checkbox'; }; export declare type RadioButtonFilter = { type: 'radio'; name: string; ariaLabel: string; label?: string; filters: BaseFilter[]; }; export declare enum TableSelectionType { SINGLE = "SINGLE", MULTIPLE = "MULTIPLE" } /** * Helper function to resolve actual value of config.fields, which could be a static array or a function returning the * array. * @param config */ export declare function emptyValues(config: EntityConfig, defaultEmptyValues?: { [key: string]: any; } | null): any; export declare function loadedValues(config: EntityConfig, loadedItem: ModelType): any; export declare function validationSchema(config: EntityConfig, isCreateForm?: boolean | null): ObjectSchema, import("yup/lib/object").AssertsShape>; /** * Calculates whether the input for this field should be marked as required or not. * * Note: This uses yup internal structure, so it may fails with newer yup versions. * @param field * @param validationShema */ export declare function isRequiredField(field: FieldConfig, validationShema: ObjectSchema): any; /** * Retunrs value of field `f` on `item`. Field maybe dotted path accessing joined value. * @param f * @param item */ export declare function fieldValue(f: FieldConfig | string, viewType: ViewType | undefined, item: any): any; /** * Builds a Hasura query or sort expression for the field, which maybe a dotted path accessing a joined value. * eg: user.data.email --> * user: { * data: { * email: exp * } * } * @param field * @param exp */ export declare function buildFieldExp(field: string, exp: any): { [key: string]: any; }; /** * Creates a where condition which searches for the existence of all words in filter in at leaast one of the * stringFields or numFields * @param filter filter string * @param stringFields fields with string values * @param numFields fields with numeric values */ export declare function calcFilterCond(filter: string, stringFields: string[], numFields: string[]): { _and: any[]; }; /** * View types where field values are to be displayed. The actual field value may be different based on the current view type */ export declare enum ViewType { LISTING = "LISTING", DETAILS = "DETAILS", FORM = "FORM", ASSOC_LISTING = "ASSOC_LISTING", ASSOC_INPUT = "ASSOC_INPUT", RAW = "RAW" } export declare type RouteConfig = { title?: string; parentRoute: string; rootEntityModel?: EntityModelType; assocEntityModel?: EntityModelType; entityModel?: EntityModelType; relation?: RelationModelType; isRootModelCreateEdit?: boolean; screenModel?: any; assocField?: FieldConfig; setAssocFieldValue?: (assocField: FieldConfig, value: any) => void; setAssocFieldValues?: (assocField: FieldConfig, value: any[]) => void; [key: string]: any; }; export declare type RouteConfigs = { [key: string]: RouteConfig; };