/** * DevExtreme (data/custom_store.d.ts) * Version: 21.1.7 * Build date: Thu Aug 07 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import Store, { Options as StoreOptions, } from './abstract_store'; import { LoadOptions, } from './index'; /** @public */ export type Options = CustomStoreOptions; /** * @namespace DevExpress.data * @deprecated Use Options instead */ export interface CustomStoreOptions extends StoreOptions { /** * @docid * @type_function_param1 key:object|string|number * @type_function_return Promise * @public */ byKey?: ((key: any | string | number) => PromiseLike); /** * @docid * @default true * @public */ cacheRawData?: boolean; /** * @docid * @type_function_param1 values:object * @type_function_return Promise * @public */ insert?: ((values: any) => PromiseLike); /** * @docid * @type_function_return Promise|Array * @public */ load?: ((options: LoadOptions) => PromiseLike | Array); /** * @docid * @default 'processed' * @public */ loadMode?: 'processed' | 'raw'; /** * @docid * @type_function_param1 key:object|string|number * @type_function_return Promise * @public */ remove?: ((key: any | string | number) => PromiseLike); /** * @docid * @type_function_param1_field1 filter:object * @type_function_param1_field2 group:object * @type_function_return Promise * @public */ totalCount?: ((loadOptions: { filter?: any; group?: any }) => PromiseLike); /** * @docid * @type_function_param1 key:object|string|number * @type_function_param2 values:object * @type_function_return Promise * @public */ update?: ((key: any | string | number, values: any) => PromiseLike); /** * @docid * @default undefined * @public */ useDefaultSearch?: boolean; } /** * @docid * @inherits Store * @public */ export default class CustomStore extends Store { constructor(options?: Options) /** * @docid * @publicName clearRawDataCache() * @public */ clearRawDataCache(): void; }