import { Map, List, OrderedMap } from "immutable"; import { CollectionReference, EnumReference } from "../../collection/domains/reference/state"; import { CollectionSelection } from "../../collection/domains/selection/state"; import { BasicFun } from "../../../../fun/state"; import { ValueOrErrors } from "../../../../collections/domains/valueOrErrors/state"; import { PredicateValue, Sum, Unit, DispatchInfiniteStreamSources, DispatchInjectedPrimitives, DispatchLookupSources, DispatchTableApiSources, ValueOption, BasicUpdater, Option, EnumMultiselectAbstractRendererView, RecordAbstractRendererView, SearchableInfiniteStreamMultiselectAbstractRendererView, OneAbstractRendererView, ReadOnlyAbstractRendererView, TableAbstractRendererView, UnionAbstractRendererView, DispatchInjectablesTypes, SpecificationApis, ValueFilterContains, ValueFilterEqualsTo, ValueFilterGreaterThanOrEqualsTo, ValueFilterGreaterThan, ValueFilterIsNotNull, ValueFilterIsNull, ValueFilterSmallerThanOrEqualsTo, ValueFilterSmallerThan, ValueFilterStartsWith, ValueSumN, ValueFilterNotEqualsTo } from "../../../../../main"; import { DispatchDelta } from "../runner/domains/deltas/dispatch-delta/state"; import { DispatchParsedType, DispatchTypeName } from "../deserializer/domains/specification/domains/types/state"; import { UnitAbstractRendererView } from "../runner/domains/abstract-renderers/unit/state"; import { StringAbstractRendererView } from "../runner/domains/abstract-renderers/string/state"; import { NumberAbstractRendererView } from "../runner/domains/abstract-renderers/number/state"; import { BoolAbstractRendererView } from "../runner/domains/abstract-renderers/boolean/state"; import { DateAbstractRendererView } from "../runner/domains/abstract-renderers/date/state"; import { Base64FileAbstractRendererView } from "../runner/domains/abstract-renderers/base-64-file/state"; import { SecretAbstractRendererView } from "../runner/domains/abstract-renderers/secret/state"; import { MapAbstractRendererView } from "../runner/domains/abstract-renderers/map/state"; import { TupleAbstractRendererView } from "../runner/domains/abstract-renderers/tuple/state"; import { SumAbstractRendererView } from "../runner/domains/abstract-renderers/sum/state"; import { EnumAbstractRendererView } from "../runner/domains/abstract-renderers/enum/state"; import { ListAbstractRendererView } from "../runner/domains/abstract-renderers/list/state"; import { SearchableInfiniteStreamAbstractRendererView } from "../runner/domains/abstract-renderers/searchable-infinite-stream/state"; import { Renderer } from "../deserializer/domains/specification/domains/forms/domains/renderer/state"; export type VoidCallbackWithOptionalFlags = (flags: Flags | undefined) => void; export type ValueCallbackWithOptionalFlags = (value: Value, flags: Flags | undefined) => void; export type DispatchOnChangeResult = { comparand: string; }; export type DispatchOnChange = (updater: Option>, delta: DispatchDelta) => Promise; type ApiConverter = { fromAPIRawValue: BasicFun; toAPIRawValue: BasicFun<[T, boolean], any>; }; export type DispatchApiConverters> = { [key in keyof T]: ApiConverter; } & BuiltInApiConverters; type RawUnion = { caseName: string; fields: Record; }; type Table = { data: Map; hasMoreValues: boolean; from: number; to: number; defaultRow: Row; }; export declare const DispatchGenericTypes: readonly ["SingleSelection", "MultiSelection", "List", "Map", "Union", "Tuple", "Option", "Sum", "KeyOf", "Table", "One", "ReadOnly"]; export type DispatchGenericType = (typeof DispatchGenericTypes)[number]; type BuiltInApiConverters = { unit?: ApiConverter; string: ApiConverter; number: ApiConverter; boolean: ApiConverter; base64File: ApiConverter; secret: ApiConverter; Date: ApiConverter; union: ApiConverter; SingleSelection: ApiConverter>; MultiSelection: ApiConverter>; List: ApiConverter>; Map: ApiConverter>; Tuple: ApiConverter>; Sum: ApiConverter>; SumN: ApiConverter; SumUnitDate: ApiConverter>; Table: ApiConverter>; One: ApiConverter; ReadOnly: ApiConverter; Contains: ApiConverter; "=": ApiConverter; "!=": ApiConverter; ">=": ApiConverter; ">": ApiConverter; "!=null": ApiConverter; "=null": ApiConverter; "<=": ApiConverter; "<": ApiConverter; StartsWith: ApiConverter; Record: ApiConverter>; }; export type ConcreteRenderers, Flags = Unit, CustomPresentationContext = Unit, ExtraContext = Unit> = { unit: { [_: string]: () => UnitAbstractRendererView | React.MemoExoticComponent>; }; boolean: { [_: string]: () => BoolAbstractRendererView | React.MemoExoticComponent>; }; number: { [_: string]: () => NumberAbstractRendererView | React.MemoExoticComponent>; }; string: { [_: string]: () => StringAbstractRendererView | React.MemoExoticComponent>; }; base64File: { [_: string]: () => Base64FileAbstractRendererView | React.MemoExoticComponent>; }; secret: { [_: string]: () => SecretAbstractRendererView | React.MemoExoticComponent>; }; date: { [_: string]: () => DateAbstractRendererView | React.MemoExoticComponent>; }; enumSingleSelection: { [_: string]: () => EnumAbstractRendererView | React.MemoExoticComponent>; }; enumMultiSelection: { [_: string]: () => EnumMultiselectAbstractRendererView | React.MemoExoticComponent>; }; streamSingleSelection: { [_: string]: () => SearchableInfiniteStreamAbstractRendererView | React.MemoExoticComponent>; }; streamMultiSelection: { [_: string]: () => SearchableInfiniteStreamMultiselectAbstractRendererView | React.MemoExoticComponent>; }; list: { [_: string]: () => ListAbstractRendererView | React.MemoExoticComponent>; }; map: { [_: string]: () => MapAbstractRendererView | React.MemoExoticComponent>; }; tuple: { [_: string]: () => TupleAbstractRendererView | React.MemoExoticComponent>; }; sum: { [_: string]: () => SumAbstractRendererView | React.MemoExoticComponent>; }; sumUnitDate: { [_: string]: () => SumAbstractRendererView | React.MemoExoticComponent>; }; record: { [_: string]: () => RecordAbstractRendererView | React.MemoExoticComponent>; }; table: { [_: string]: () => TableAbstractRendererView | React.MemoExoticComponent>; }; union: { [_: string]: () => UnionAbstractRendererView | React.MemoExoticComponent>; }; one: { [_: string]: () => OneAbstractRendererView | React.MemoExoticComponent>; }; readOnly: { [_: string]: () => ReadOnlyAbstractRendererView | React.MemoExoticComponent>; }; } & { [key in keyof T]: { [_: string]: () => T[key]["view"]; }; }; export type ConcreteRenderer = Base64FileAbstractRendererView | BoolAbstractRendererView | DateAbstractRendererView | EnumAbstractRendererView | EnumMultiselectAbstractRendererView | ListAbstractRendererView | MapAbstractRendererView | NumberAbstractRendererView | OneAbstractRendererView | ReadOnlyAbstractRendererView | RecordAbstractRendererView | SearchableInfiniteStreamAbstractRendererView | SearchableInfiniteStreamMultiselectAbstractRendererView | SecretAbstractRendererView | StringAbstractRendererView | SumAbstractRendererView | TableAbstractRendererView | TupleAbstractRendererView | UnionAbstractRendererView | UnitAbstractRendererView; export declare const concreteRendererToKind: , Flags, CustomPresentationContext, ExtraContext = Unit>(concreteRenderers: ConcreteRenderers) => (name: string) => ValueOrErrors; export declare const tryGetConcreteRenderer: , Flags, CustomPresentationContext, ExtraContext>(concreteRenderers: ConcreteRenderers) => >(kind: K, name: keyof ConcreteRenderers[K]) => ValueOrErrors[K][keyof ConcreteRenderers[K]]>, string>; export declare const getDefaultRecordRenderer: (isNested: boolean, defaultRecordRenderer: () => RecordAbstractRendererView, defaultNestedRecordRenderer: () => RecordAbstractRendererView) => RecordAbstractRendererView; export declare const dispatchDefaultState: >(infiniteStreamSources: DispatchInfiniteStreamSources, injectedPrimitives: DispatchInjectedPrimitives | undefined, types: Map>, forms: Map>, converters: DispatchApiConverters, lookupSources: DispatchLookupSources | undefined, tableApiSources: DispatchTableApiSources | undefined, specApis: SpecificationApis) => (t: DispatchParsedType, renderer: Renderer) => ValueOrErrors; export declare const dispatchDefaultValue: >(injectedPrimitives: DispatchInjectedPrimitives | undefined, types: Map>, forms: Map>) => (t: DispatchParsedType, renderer: Renderer) => ValueOrErrors; export declare const dispatchFromAPIRawValue: >(t: DispatchParsedType, types: Map>, converters: DispatchApiConverters, injectedPrimitives?: DispatchInjectedPrimitives) => (raw: any) => ValueOrErrors; export declare const dispatchToAPIRawValue: >(t: DispatchParsedType, types: Map>, converters: DispatchApiConverters, injectedPrimitives?: DispatchInjectedPrimitives) => (raw: PredicateValue, formState: any) => ValueOrErrors; export {}; //# sourceMappingURL=state.d.ts.map