/**
 * Angular wrapper for Bryntum ProjectModel
 */
import { ElementRef, SimpleChanges, OnDestroy, OnInit } from '@angular/core';
import { AssignmentModel, AssignmentModelConfig, AssignmentStore, AssignmentStoreConfig, DependencyModel, DependencyModelConfig, DependencyStore, DependencyStoreConfig, EventModel, EventModelConfig, EventStore, EventStoreConfig, Model, ModelConfig, ProjectModel, ResourceModel, ResourceModelConfig, ResourceStore, ResourceStoreConfig, ResourceTimeRangeModel, ResourceTimeRangeModelConfig, ResourceTimeRangeStore, ResourceTimeRangeStoreConfig, SchedulerTimeRangeModel, StateTrackingManager, StateTrackingManagerConfig, Store, StoreConfig, TimeRangeModel, TimeRangeModelConfig, TimeSpan } from '@bryntum/calendar';
import * as i0 from "@angular/core";
export declare type BryntumCalendarProjectModelProps = {
    /**
     * A flag, indicating whether the dates and duration calculations should adjust the result to DST time shift.
     */
    adjustDurationToDST?: boolean;
    /**
     * The constructor of the assignment model class, to be used in the project. Will be set as the
     * [modelClass](https://bryntum.com/products/calendar/docs/api/Core/data/Store#config-modelClass) property of the [assignmentStore](#Scheduler/model/ProjectModel#property-assignmentStore)
     */
    assignmentModelClass?: typeof AssignmentModel;
    /**
     * Data use to fill the [assignmentStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-assignmentStore). Should be an array of
     * [AssignmentModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/AssignmentModel) or its configuration objects.
     */
    assignments?: AssignmentModel[] | AssignmentModelConfig[];
    /**
     * The initial data, to fill the [assignmentStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-assignmentStore) with.
     * Should be an array of [AssignmentModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/AssignmentModel) or its configuration
     * objects.
     * @deprecated 6.3.0 Use [assignments](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#config-assignments) instead
     */
    assignmentsData?: AssignmentModel[] | AssignmentModelConfig[];
    /**
     * An [AssignmentStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/AssignmentStore) instance or a config object.
     */
    assignmentStore?: AssignmentStore | AssignmentStoreConfig;
    /**
     * The constructor to create an assignment store instance with. Should be a class, subclassing the
     * [AssignmentStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/AssignmentStore)
     */
    assignmentStoreClass?: typeof AssignmentStore | object;
    /**
     * Child nodes. To allow loading children on demand, specify `children : true` in your data. Omit the field for leaf
     * tasks.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-children)
     */
    children?: boolean | object[] | Model[] | ModelConfig[];
    /**
     * Data use to fill the [dependencyStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-dependencyStore). Should be an array of
     * [DependencyModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/DependencyModel) or its configuration objects.
     */
    dependencies?: DependencyModel[] | DependencyModelConfig[];
    /**
     * The initial data, to fill the [dependencyStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-dependencyStore) with.
     * Should be an array of [DependencyModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/DependencyModel) or its configuration
     * objects.
     * @deprecated 6.3.0 Use [dependencies](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#config-dependencies) instead
     */
    dependenciesData?: DependencyModel[] | DependencyModelConfig[];
    /**
     * The constructor of the dependency model class, to be used in the project. Will be set as the
     * [modelClass](https://bryntum.com/products/calendar/docs/api/Core/data/Store#config-modelClass) property of the [dependencyStore](#Scheduler/model/ProjectModel#property-dependencyStore)
     */
    dependencyModelClass?: typeof DependencyModel;
    /**
     * A [DependencyStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/DependencyStore) instance or a config object.
     */
    dependencyStore?: DependencyStore | DependencyStoreConfig;
    /**
     * The constructor to create a dependency store instance with. Should be a class, subclassing the
     * [DependencyStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/DependencyStore)
     */
    dependencyStoreClass?: typeof DependencyStore | object;
    /**
     * The constructor of the event model class, to be used in the project. Will be set as the
     * [modelClass](https://bryntum.com/products/calendar/docs/api/Core/data/Store#config-modelClass) property of the [eventStore](#Scheduler/model/ProjectModel#property-eventStore)
     */
    eventModelClass?: typeof EventModel;
    /**
     * Data use to fill the [eventStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-eventStore). Should be an array of
     * [EventModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/EventModel) or its configuration objects.
     */
    events?: EventModel[] | EventModelConfig[];
    /**
     * The initial data, to fill the [eventStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-eventStore) with.
     * Should be an array of [EventModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/EventModel) or its configuration objects.
     * @deprecated 6.3.0 Use [events](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#config-events) instead
     */
    eventsData?: EventModel[] | EventModelConfig[];
    /**
     * An [EventStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/EventStore) instance or a config object.
     */
    eventStore?: EventStore | EventStoreConfig;
    /**
     * The constructor to create an event store instance with. Should be a class, subclassing the
     * [EventStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/EventStore)
     */
    eventStoreClass?: typeof EventStore | object;
    /**
     * Start expanded or not (only valid for tree data)
     */
    expanded?: boolean;
    /**
     * Unique identifier for the record. Might be mapped to another dataSource using idField, but always exposed as
     * record.id. Will get a generated value if none is specified in records data.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-id)
     */
    id?: string | number;
    /**
     * Whether to include legacy data properties in the JSON / inlineData output. The legacy data properties are
     * the `xxData` (`eventsData`, `resourcesData` etc.) properties that are deprecated and will be removed in
     * the future.
     * @deprecated 6.3.0 This config will be removed when the eventsData, resourcesData etc. properties are removed in a future release.
     */
    includeLegacyDataProperties?: boolean;
    /**
     * This field is added to the class at runtime when the Store is configured with
     * [lazyLoad](https://bryntum.com/products/calendar/docs/api/Core/data/Store#config-lazyLoad). If set on a parent record at load time, that parent will not cause any
     * more child load requests. If omitted, it will be automatically set to `true` when a load request receives fewer
     * child records than requested.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-isFullyLoaded)
     */
    isFullyLoaded?: boolean;
    /**
     * Project data as a JSON string, used to populate its stores.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-json)
     */
    json?: string;
    /**
     * This is a read-only field provided in server synchronization packets to specify
     * which position the node takes in the parent's ordered children array.
     * This index is set on load and gets updated on reordering nodes in tree. Sorting and filtering
     * have no effect on it.
     */
    orderedParentIndex?: number;
    /**
     * This is a read-only field provided in server synchronization packets to specify
     * which record id is the parent of the record.
     */
    parentId?: string | number | null;
    /**
     * This is a read-only field provided in server synchronization packets to specify
     * which position the node takes in the parent's children array.
     * This index is set on load and gets updated automatically after row reordering, sorting, etc.
     * To save the order, need to persist the field on the server and when data is fetched to be loaded,
     * need to sort by this field.
     */
    parentIndex?: number;
    /**
     * Flag the record as read-only on the UI level, preventing the end user from manipulating it using editing
     * features such as cell editing and event dragging.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-readOnly)
     */
    readOnly?: boolean;
    /**
     * This field is added to the class at runtime when the Store is configured with
     * [lazyLoad](https://bryntum.com/products/calendar/docs/api/Core/data/Store#config-lazyLoad). The
     * number specified should reflect the <strong>total</strong> amount of children of a parent node, including nested descendants.
     * @deprecated This field has been deprecated. Please read the [guide](https://bryntum.com/products/calendar/docs/api/Grid/guides/data/lazyloading.md) to find out if your app needs to use the new [isFullyLoaded](https://bryntum.com/products/calendar/docs/api/Core/data/mixin/TreeNode#field-isFullyLoaded) field.
     */
    remoteChildCount?: number;
    /**
     * The constructor of the resource model class, to be used in the project. Will be set as the
     * [modelClass](https://bryntum.com/products/calendar/docs/api/Core/data/Store#config-modelClass) property of the [resourceStore](#Scheduler/model/ProjectModel#property-resourceStore)
     */
    resourceModelClass?: typeof ResourceModel;
    /**
     * Data use to fill the [resourceStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-resourceStore). Should be an array of
     * [ResourceModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ResourceModel) or its configuration objects.
     */
    resources?: ResourceModel[] | ResourceModelConfig[];
    /**
     * The initial data, to fill the [resourceStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-resourceStore) with.
     * Should be an array of [ResourceModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ResourceModel) or its configuration objects.
     * @deprecated 6.3.0 Use [resources](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#config-resources) instead
     */
    resourcesData?: ResourceModel[] | ResourceModelConfig[];
    /**
     * A [ResourceStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/ResourceStore) instance or a config object.
     */
    resourceStore?: ResourceStore | ResourceStoreConfig;
    /**
     * The constructor to create a resource store instance with. Should be a class, subclassing the
     * [ResourceStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/ResourceStore)
     */
    resourceStoreClass?: typeof ResourceStore | object;
    /**
     * Data use to fill the [resourceTimeRangeStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-resourceTimeRangeStore). Should be an array
     * of [ResourceTimeRangeModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ResourceTimeRangeModel) or its configuration objects.
     */
    resourceTimeRanges?: ResourceTimeRangeModel[] | ResourceTimeRangeModelConfig[];
    /**
     * The initial data, to fill the [resourceTimeRangeStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/mixin/ProjectModelMixin#property-resourceTimeRangeStore) with.
     * Should be an array of [ResourceTimeRangeModel](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ResourceTimeRangeModel) or it's
     * configuration objects.
     * @deprecated 6.3.0 Use resourceTimeRanges instead
     */
    resourceTimeRangesData?: ResourceTimeRangeModel[];
    /**
     * A [ResourceTimeRangeStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/ResourceTimeRangeStore) instance or a config object.
     */
    resourceTimeRangeStore?: ResourceTimeRangeStore | ResourceTimeRangeStoreConfig;
    /**
     * The constructor to create a resource time range store instance with. Should be a class subclassing the
     * [ResourceTimeRangeStore](https://bryntum.com/products/calendar/docs/api/Scheduler/data/ResourceTimeRangeStore)
     */
    resourceTimeRangeStoreClass?: typeof ResourceTimeRangeStore | object;
    /**
     * Experimental hook that lets the app determine if a bound dataset needs syncing with the store or not, and
     * if it does - which records that should be processed. Only called for stores that are configured with
     * `syncDataOnLoad: true` (which is the default in the React, Angular and Vue wrappers).
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-shouldSyncDataOnLoad)
     * @param {object} options Options passed by the store to this hook
     * @param {Core.data.Store} options.store Store about to be synced
     * @param {Core.data.Model} options.records Records currently in the store
     * @param {object[]} options.data Incoming data
     * @returns {Set<any>,boolean} Return `false` to prevent the store from syncing, or a set of record ids that need further processing (for records that has some kind of change, eg. an update, removal or addition)
     */
    shouldSyncDataOnLoad?: (options: {
        store: Store;
        records: Model;
        data: object[];
    }) => Set<any> | boolean;
    /**
     * Silences propagations caused by the project loading.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-silenceInitialCommit)
     */
    silenceInitialCommit?: boolean;
    /**
     * Configuration options to provide to the STM manager
     */
    stm?: StateTrackingManagerConfig | StateTrackingManager;
    /**
     * The constructor of the time range model class, to be used in the project. Will be set as the
     * [modelClass](https://bryntum.com/products/calendar/docs/api/Core/data/Store#config-modelClass) property of the [timeRangeStore](#Calendar/model/ProjectModel#property-timeRangeStore)
     */
    timeRangeModelClass?: typeof TimeRangeModel;
    /**
     * Data use to fill the [timeRangeStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/ProjectModel#property-timeRangeStore). Should be an array of
     * [TimeRangeModels](https://bryntum.com/products/calendar/docs/api/Scheduler/model/TimeRangeModel) or its configuration objects.
     */
    timeRanges?: SchedulerTimeRangeModel[] | TimeRangeModelConfig[];
    /**
     * The initial data, to fill the [timeRangeStore](https://bryntum.com/products/calendar/docs/api/Scheduler/model/mixin/ProjectModelMixin#property-timeRangeStore) with.
     * Should be an array of [TimeSpan](https://bryntum.com/products/calendar/docs/api/Scheduler/model/TimeSpan) or its configuration objects.
     * @deprecated 6.3.0 Use timeRanges instead
     */
    timeRangesData?: TimeSpan[];
    /**
     * A [Store](https://bryntum.com/products/calendar/docs/api/Core/data/Store) instance or a config object.
     */
    timeRangeStore?: Store | StoreConfig;
    /**
     * The constructor to create an timeRange store instance with. Should be a class, subclassing the
     * [Store](https://bryntum.com/products/calendar/docs/api/Core/data/Store)
     */
    timeRangeStoreClass?: typeof Store | object;
    /**
     * Set to a IANA time zone (i.e. `Europe/Stockholm`) or a UTC offset in minutes (i.e. `-120`). This will
     * convert all events, tasks and time ranges to the specified time zone or offset. It will also affect the
     * displayed timeline's headers as well at the start and end date of it.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-timeZone)
     */
    timeZone?: string | number;
    /**
     * Specifies the output format of [toJSON](https://bryntum.com/products/calendar/docs/api/Scheduler/model/mixin/ProjectModelCommon#function-toJSON).
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-toJSONResultFormat)
     */
    toJSONResultFormat?: 'inlineData' | 'model';
    /**
     * By default, the stores of a project use the raw data objects passed to them as the data source for their
     * records if data is loaded remotely (using an `AjaxStore` or a `CrudManager`). For data supplied inline,
     * the data objects are instead by default cloned to avoid the original data object being modified by the
     * store.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#config-useRawData)
     */
    useRawData?: boolean;
};
export declare class BryntumCalendarProjectModelComponent implements OnInit, OnDestroy {
    static instanceClass: typeof ProjectModel;
    static instanceName: string;
    private static bryntumEvents;
    private static bryntumFeatureNames;
    private static bryntumConfigs;
    private static bryntumConfigsOnly;
    private static bryntumProps;
    private elementRef;
    instance: ProjectModel;
    private bryntumConfig;
    constructor(element: ElementRef);
    adjustDurationToDST: boolean;
    assignmentModelClass: typeof AssignmentModel;
    assignmentsData: AssignmentModel[] | AssignmentModelConfig[];
    assignmentStoreClass: typeof AssignmentStore | object;
    children: boolean | object[] | Model[] | ModelConfig[];
    dependenciesData: DependencyModel[] | DependencyModelConfig[];
    dependencyModelClass: typeof DependencyModel;
    dependencyStoreClass: typeof DependencyStore | object;
    eventModelClass: typeof EventModel;
    eventsData: EventModel[] | EventModelConfig[];
    eventStoreClass: typeof EventStore | object;
    expanded: boolean;
    orderedParentIndex: number;
    parentIndex: number;
    resourceModelClass: typeof ResourceModel;
    resourcesData: ResourceModel[] | ResourceModelConfig[];
    resourceStoreClass: typeof ResourceStore | object;
    resourceTimeRangesData: ResourceTimeRangeModel[];
    resourceTimeRangeStoreClass: typeof ResourceTimeRangeStore | object;
    silenceInitialCommit: boolean;
    timeRangeModelClass: typeof TimeRangeModel;
    timeRangesData: TimeSpan[];
    timeRangeStoreClass: typeof Store | object;
    toJSONResultFormat: 'inlineData' | 'model';
    useRawData: boolean;
    assignments: AssignmentModel[] | AssignmentModelConfig[];
    assignmentStore: AssignmentStore | AssignmentStoreConfig;
    dependencies: DependencyModel[] | DependencyModelConfig[];
    dependencyStore: DependencyStore | DependencyStoreConfig;
    events: EventModel[] | EventModelConfig[];
    eventStore: EventStore | EventStoreConfig;
    id: string | number;
    includeLegacyDataProperties: boolean;
    isFullyLoaded: boolean;
    json: string;
    parentId: number | string | null;
    readOnly: boolean;
    remoteChildCount: number;
    resources: ResourceModel[] | ResourceModelConfig[];
    resourceStore: ResourceStore | ResourceStoreConfig;
    resourceTimeRanges: ResourceTimeRangeModel[] | ResourceTimeRangeModelConfig[];
    resourceTimeRangeStore: ResourceTimeRangeStore | ResourceTimeRangeStoreConfig;
    shouldSyncDataOnLoad: (options: {
        store: Store;
        records: Model;
        data: object[];
    }) => Set<any> | boolean;
    stm: StateTrackingManager | StateTrackingManagerConfig;
    timeRanges: SchedulerTimeRangeModel[] | TimeRangeModelConfig[];
    timeRangeStore: Store | StoreConfig;
    timeZone: string | number;
    descendantCount: number;
    inlineData: object;
    isCreating: boolean;
    visibleDescendantCount: number;
    /**
     * Fired when data in any of the projects stores changes.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#event-change)
     * @param {object} event Event object
     * @param {Scheduler.model.SchedulerProjectModel,any} event.source This project
     * @param {Core.data.Store} event.store Affected store
     * @param {'remove','removeAll','add','clearchanges','filter','update','dataset','replace'} event.action Name of action which triggered the change. May be one of:  * `'remove'` * `'removeAll'` * `'add'` * `'clearchanges'` * `'filter'` * `'update'` * `'dataset'` * `'replace'`
     * @param {Core.data.Model} event.record Changed record, for actions that affects exactly one record (`'update'`)
     * @param {Core.data.Model[]} event.records Changed records, passed for all actions except `'removeAll'`
     * @param {object} event.changes Passed for the `'update'` action, info on which record fields changed
     */
    onChange: any;
    /**
     * Fired when the engine has finished its calculations and the results has been written back to the records.
     * [More...](https://bryntum.com/products/calendar/docs/api/Calendar/model/ProjectModel#event-dataReady)
     * @param {object} event Event object
     * @param {Scheduler.model.SchedulerProjectModel,any} event.source The project
     * @param {boolean} event.isInitialCommit Flag that shows if this commit is initial
     * @param {Set<any>} event.records Set of all [Model](https://bryntum.com/products/calendar/docs/api/Core/data/Model)s that were modified in the completed transaction. Use the [modifications](https://bryntum.com/products/calendar/docs/api/Core/data/Model#property-modifications) property of each Model to identify modified fields.
     */
    onDataReady: any;
    /**
     * Create and append the underlying widget
     */
    ngOnInit(): void;
    /**
     * Extracts all @font-face declarations from a shadow root's stylesheets and adds them to
     * document.head as a single <style> element. This is needed because @font-face rules inside
     * a shadow root are not reliably included in document.fonts across all browsers, causing
     * Bryntum's CSS compatibility check to incorrectly report missing fonts.
     * Safe to call multiple times — the extraction runs only once per page.
     */
    private static ensureFontsInDocument;
    /**
     * Watch for changes
     * @param changes
     */
    ngOnChanges(changes: SimpleChanges): void;
    /**
     * Destroy the component
     */
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<BryntumCalendarProjectModelComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<BryntumCalendarProjectModelComponent, "bryntum-calendar-project-model", never, { "adjustDurationToDST": "adjustDurationToDST"; "assignmentModelClass": "assignmentModelClass"; "assignmentsData": "assignmentsData"; "assignmentStoreClass": "assignmentStoreClass"; "children": "children"; "dependenciesData": "dependenciesData"; "dependencyModelClass": "dependencyModelClass"; "dependencyStoreClass": "dependencyStoreClass"; "eventModelClass": "eventModelClass"; "eventsData": "eventsData"; "eventStoreClass": "eventStoreClass"; "expanded": "expanded"; "orderedParentIndex": "orderedParentIndex"; "parentIndex": "parentIndex"; "resourceModelClass": "resourceModelClass"; "resourcesData": "resourcesData"; "resourceStoreClass": "resourceStoreClass"; "resourceTimeRangesData": "resourceTimeRangesData"; "resourceTimeRangeStoreClass": "resourceTimeRangeStoreClass"; "silenceInitialCommit": "silenceInitialCommit"; "timeRangeModelClass": "timeRangeModelClass"; "timeRangesData": "timeRangesData"; "timeRangeStoreClass": "timeRangeStoreClass"; "toJSONResultFormat": "toJSONResultFormat"; "useRawData": "useRawData"; "assignments": "assignments"; "assignmentStore": "assignmentStore"; "dependencies": "dependencies"; "dependencyStore": "dependencyStore"; "events": "events"; "eventStore": "eventStore"; "id": "id"; "includeLegacyDataProperties": "includeLegacyDataProperties"; "isFullyLoaded": "isFullyLoaded"; "json": "json"; "parentId": "parentId"; "readOnly": "readOnly"; "remoteChildCount": "remoteChildCount"; "resources": "resources"; "resourceStore": "resourceStore"; "resourceTimeRanges": "resourceTimeRanges"; "resourceTimeRangeStore": "resourceTimeRangeStore"; "shouldSyncDataOnLoad": "shouldSyncDataOnLoad"; "stm": "stm"; "timeRanges": "timeRanges"; "timeRangeStore": "timeRangeStore"; "timeZone": "timeZone"; "descendantCount": "descendantCount"; "inlineData": "inlineData"; "isCreating": "isCreating"; "visibleDescendantCount": "visibleDescendantCount"; }, { "onChange": "onChange"; "onDataReady": "onDataReady"; }, never, never>;
}
