devextreme
Version:
HTML5 JavaScript Component Suite for Responsive Web Development
1,052 lines • 475 kB
TypeScript
/*!
* DevExtreme (dx.all.legacy.d.ts)
* Version: 18.1.3
* Build date: Tue May 15 2018
*
* Copyright (c) 2012 - 2018 Developer Express Inc. ALL RIGHTS RESERVED
* Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/
*/
interface JQuery {
dxAccordion(): JQuery;
dxAccordion(options: "instance"): DevExpress.ui.dxAccordion;
dxAccordion(options: string): any;
dxAccordion(options: string, ...params: any[]): any;
dxAccordion(options: DevExpress.ui.dxAccordionOptions): JQuery;
}
interface JQuery {
dxActionSheet(): JQuery;
dxActionSheet(options: "instance"): DevExpress.ui.dxActionSheet;
dxActionSheet(options: string): any;
dxActionSheet(options: string, ...params: any[]): any;
dxActionSheet(options: DevExpress.ui.dxActionSheetOptions): JQuery;
}
interface JQuery {
dxAutocomplete(): JQuery;
dxAutocomplete(options: "instance"): DevExpress.ui.dxAutocomplete;
dxAutocomplete(options: string): any;
dxAutocomplete(options: string, ...params: any[]): any;
dxAutocomplete(options: DevExpress.ui.dxAutocompleteOptions): JQuery;
}
interface JQuery {
dxBox(): JQuery;
dxBox(options: "instance"): DevExpress.ui.dxBox;
dxBox(options: string): any;
dxBox(options: string, ...params: any[]): any;
dxBox(options: DevExpress.ui.dxBoxOptions): JQuery;
}
interface JQuery {
dxButton(): JQuery;
dxButton(options: "instance"): DevExpress.ui.dxButton;
dxButton(options: string): any;
dxButton(options: string, ...params: any[]): any;
dxButton(options: DevExpress.ui.dxButtonOptions): JQuery;
}
interface JQuery {
dxCalendar(): JQuery;
dxCalendar(options: "instance"): DevExpress.ui.dxCalendar;
dxCalendar(options: string): any;
dxCalendar(options: string, ...params: any[]): any;
dxCalendar(options: DevExpress.ui.dxCalendarOptions): JQuery;
}
interface JQuery {
dxCheckBox(): JQuery;
dxCheckBox(options: "instance"): DevExpress.ui.dxCheckBox;
dxCheckBox(options: string): any;
dxCheckBox(options: string, ...params: any[]): any;
dxCheckBox(options: DevExpress.ui.dxCheckBoxOptions): JQuery;
}
interface JQuery {
dxColorBox(): JQuery;
dxColorBox(options: "instance"): DevExpress.ui.dxColorBox;
dxColorBox(options: string): any;
dxColorBox(options: string, ...params: any[]): any;
dxColorBox(options: DevExpress.ui.dxColorBoxOptions): JQuery;
}
interface JQuery {
dxContextMenu(): JQuery;
dxContextMenu(options: "instance"): DevExpress.ui.dxContextMenu;
dxContextMenu(options: string): any;
dxContextMenu(options: string, ...params: any[]): any;
dxContextMenu(options: DevExpress.ui.dxContextMenuOptions): JQuery;
}
interface JQuery {
dxDataGrid(): JQuery;
dxDataGrid(options: "instance"): DevExpress.ui.dxDataGrid;
dxDataGrid(options: string): any;
dxDataGrid(options: string, ...params: any[]): any;
dxDataGrid(options: DevExpress.ui.dxDataGridOptions): JQuery;
}
interface JQuery {
dxDateBox(): JQuery;
dxDateBox(options: "instance"): DevExpress.ui.dxDateBox;
dxDateBox(options: string): any;
dxDateBox(options: string, ...params: any[]): any;
dxDateBox(options: DevExpress.ui.dxDateBoxOptions): JQuery;
}
interface JQuery {
dxDeferRendering(): JQuery;
dxDeferRendering(options: "instance"): DevExpress.ui.dxDeferRendering;
dxDeferRendering(options: string): any;
dxDeferRendering(options: string, ...params: any[]): any;
dxDeferRendering(options: DevExpress.ui.dxDeferRenderingOptions): JQuery;
}
interface JQuery {
dxDropDownBox(): JQuery;
dxDropDownBox(options: "instance"): DevExpress.ui.dxDropDownBox;
dxDropDownBox(options: string): any;
dxDropDownBox(options: string, ...params: any[]): any;
dxDropDownBox(options: DevExpress.ui.dxDropDownBoxOptions): JQuery;
}
interface JQuery {
dxFileUploader(): JQuery;
dxFileUploader(options: "instance"): DevExpress.ui.dxFileUploader;
dxFileUploader(options: string): any;
dxFileUploader(options: string, ...params: any[]): any;
dxFileUploader(options: DevExpress.ui.dxFileUploaderOptions): JQuery;
}
interface JQuery {
dxFilterBuilder(): JQuery;
dxFilterBuilder(options: "instance"): DevExpress.ui.dxFilterBuilder;
dxFilterBuilder(options: string): any;
dxFilterBuilder(options: string, ...params: any[]): any;
dxFilterBuilder(options: DevExpress.ui.dxFilterBuilderOptions): JQuery;
}
interface JQuery {
dxForm(): JQuery;
dxForm(options: "instance"): DevExpress.ui.dxForm;
dxForm(options: string): any;
dxForm(options: string, ...params: any[]): any;
dxForm(options: DevExpress.ui.dxFormOptions): JQuery;
}
interface JQuery {
dxGallery(): JQuery;
dxGallery(options: "instance"): DevExpress.ui.dxGallery;
dxGallery(options: string): any;
dxGallery(options: string, ...params: any[]): any;
dxGallery(options: DevExpress.ui.dxGalleryOptions): JQuery;
}
interface JQuery {
dxList(): JQuery;
dxList(options: "instance"): DevExpress.ui.dxList;
dxList(options: string): any;
dxList(options: string, ...params: any[]): any;
dxList(options: DevExpress.ui.dxListOptions): JQuery;
}
interface JQuery {
dxLoadIndicator(): JQuery;
dxLoadIndicator(options: "instance"): DevExpress.ui.dxLoadIndicator;
dxLoadIndicator(options: string): any;
dxLoadIndicator(options: string, ...params: any[]): any;
dxLoadIndicator(options: DevExpress.ui.dxLoadIndicatorOptions): JQuery;
}
interface JQuery {
dxLoadPanel(): JQuery;
dxLoadPanel(options: "instance"): DevExpress.ui.dxLoadPanel;
dxLoadPanel(options: string): any;
dxLoadPanel(options: string, ...params: any[]): any;
dxLoadPanel(options: DevExpress.ui.dxLoadPanelOptions): JQuery;
}
interface JQuery {
dxLookup(): JQuery;
dxLookup(options: "instance"): DevExpress.ui.dxLookup;
dxLookup(options: string): any;
dxLookup(options: string, ...params: any[]): any;
dxLookup(options: DevExpress.ui.dxLookupOptions): JQuery;
}
interface JQuery {
dxMap(): JQuery;
dxMap(options: "instance"): DevExpress.ui.dxMap;
dxMap(options: string): any;
dxMap(options: string, ...params: any[]): any;
dxMap(options: DevExpress.ui.dxMapOptions): JQuery;
}
interface JQuery {
dxMenu(): JQuery;
dxMenu(options: "instance"): DevExpress.ui.dxMenu;
dxMenu(options: string): any;
dxMenu(options: string, ...params: any[]): any;
dxMenu(options: DevExpress.ui.dxMenuOptions): JQuery;
}
interface JQuery {
dxMultiView(): JQuery;
dxMultiView(options: "instance"): DevExpress.ui.dxMultiView;
dxMultiView(options: string): any;
dxMultiView(options: string, ...params: any[]): any;
dxMultiView(options: DevExpress.ui.dxMultiViewOptions): JQuery;
}
interface JQuery {
dxNavBar(): JQuery;
dxNavBar(options: "instance"): DevExpress.ui.dxNavBar;
dxNavBar(options: string): any;
dxNavBar(options: string, ...params: any[]): any;
dxNavBar(options: DevExpress.ui.dxNavBarOptions): JQuery;
}
interface JQuery {
dxNumberBox(): JQuery;
dxNumberBox(options: "instance"): DevExpress.ui.dxNumberBox;
dxNumberBox(options: string): any;
dxNumberBox(options: string, ...params: any[]): any;
dxNumberBox(options: DevExpress.ui.dxNumberBoxOptions): JQuery;
}
interface JQuery {
dxPanorama(): JQuery;
dxPanorama(options: "instance"): DevExpress.ui.dxPanorama;
dxPanorama(options: string): any;
dxPanorama(options: string, ...params: any[]): any;
dxPanorama(options: DevExpress.ui.dxPanoramaOptions): JQuery;
}
interface JQuery {
dxPivot(): JQuery;
dxPivot(options: "instance"): DevExpress.ui.dxPivot;
dxPivot(options: string): any;
dxPivot(options: string, ...params: any[]): any;
dxPivot(options: DevExpress.ui.dxPivotOptions): JQuery;
}
interface JQuery {
dxPivotGrid(): JQuery;
dxPivotGrid(options: "instance"): DevExpress.ui.dxPivotGrid;
dxPivotGrid(options: string): any;
dxPivotGrid(options: string, ...params: any[]): any;
dxPivotGrid(options: DevExpress.ui.dxPivotGridOptions): JQuery;
}
interface JQuery {
dxPivotGridFieldChooser(): JQuery;
dxPivotGridFieldChooser(options: "instance"): DevExpress.ui.dxPivotGridFieldChooser;
dxPivotGridFieldChooser(options: string): any;
dxPivotGridFieldChooser(options: string, ...params: any[]): any;
dxPivotGridFieldChooser(options: DevExpress.ui.dxPivotGridFieldChooserOptions): JQuery;
}
interface JQuery {
dxPopover(): JQuery;
dxPopover(options: "instance"): DevExpress.ui.dxPopover;
dxPopover(options: string): any;
dxPopover(options: string, ...params: any[]): any;
dxPopover(options: DevExpress.ui.dxPopoverOptions): JQuery;
}
interface JQuery {
dxPopup(): JQuery;
dxPopup(options: "instance"): DevExpress.ui.dxPopup;
dxPopup(options: string): any;
dxPopup(options: string, ...params: any[]): any;
dxPopup(options: DevExpress.ui.dxPopupOptions): JQuery;
}
interface JQuery {
dxProgressBar(): JQuery;
dxProgressBar(options: "instance"): DevExpress.ui.dxProgressBar;
dxProgressBar(options: string): any;
dxProgressBar(options: string, ...params: any[]): any;
dxProgressBar(options: DevExpress.ui.dxProgressBarOptions): JQuery;
}
interface JQuery {
dxRadioGroup(): JQuery;
dxRadioGroup(options: "instance"): DevExpress.ui.dxRadioGroup;
dxRadioGroup(options: string): any;
dxRadioGroup(options: string, ...params: any[]): any;
dxRadioGroup(options: DevExpress.ui.dxRadioGroupOptions): JQuery;
}
interface JQuery {
dxRangeSlider(): JQuery;
dxRangeSlider(options: "instance"): DevExpress.ui.dxRangeSlider;
dxRangeSlider(options: string): any;
dxRangeSlider(options: string, ...params: any[]): any;
dxRangeSlider(options: DevExpress.ui.dxRangeSliderOptions): JQuery;
}
interface JQuery {
dxResizable(): JQuery;
dxResizable(options: "instance"): DevExpress.ui.dxResizable;
dxResizable(options: string): any;
dxResizable(options: string, ...params: any[]): any;
dxResizable(options: DevExpress.ui.dxResizableOptions): JQuery;
}
interface JQuery {
dxResponsiveBox(): JQuery;
dxResponsiveBox(options: "instance"): DevExpress.ui.dxResponsiveBox;
dxResponsiveBox(options: string): any;
dxResponsiveBox(options: string, ...params: any[]): any;
dxResponsiveBox(options: DevExpress.ui.dxResponsiveBoxOptions): JQuery;
}
interface JQuery {
dxScheduler(): JQuery;
dxScheduler(options: "instance"): DevExpress.ui.dxScheduler;
dxScheduler(options: string): any;
dxScheduler(options: string, ...params: any[]): any;
dxScheduler(options: DevExpress.ui.dxSchedulerOptions): JQuery;
}
interface JQuery {
dxScrollView(): JQuery;
dxScrollView(options: "instance"): DevExpress.ui.dxScrollView;
dxScrollView(options: string): any;
dxScrollView(options: string, ...params: any[]): any;
dxScrollView(options: DevExpress.ui.dxScrollViewOptions): JQuery;
}
interface JQuery {
dxSelectBox(): JQuery;
dxSelectBox(options: "instance"): DevExpress.ui.dxSelectBox;
dxSelectBox(options: string): any;
dxSelectBox(options: string, ...params: any[]): any;
dxSelectBox(options: DevExpress.ui.dxSelectBoxOptions): JQuery;
}
interface JQuery {
dxSlideOut(): JQuery;
dxSlideOut(options: "instance"): DevExpress.ui.dxSlideOut;
dxSlideOut(options: string): any;
dxSlideOut(options: string, ...params: any[]): any;
dxSlideOut(options: DevExpress.ui.dxSlideOutOptions): JQuery;
}
interface JQuery {
dxSlideOutView(): JQuery;
dxSlideOutView(options: "instance"): DevExpress.ui.dxSlideOutView;
dxSlideOutView(options: string): any;
dxSlideOutView(options: string, ...params: any[]): any;
dxSlideOutView(options: DevExpress.ui.dxSlideOutViewOptions): JQuery;
}
interface JQuery {
dxSlider(): JQuery;
dxSlider(options: "instance"): DevExpress.ui.dxSlider;
dxSlider(options: string): any;
dxSlider(options: string, ...params: any[]): any;
dxSlider(options: DevExpress.ui.dxSliderOptions): JQuery;
}
interface JQuery {
dxSwitch(): JQuery;
dxSwitch(options: "instance"): DevExpress.ui.dxSwitch;
dxSwitch(options: string): any;
dxSwitch(options: string, ...params: any[]): any;
dxSwitch(options: DevExpress.ui.dxSwitchOptions): JQuery;
}
interface JQuery {
dxTabPanel(): JQuery;
dxTabPanel(options: "instance"): DevExpress.ui.dxTabPanel;
dxTabPanel(options: string): any;
dxTabPanel(options: string, ...params: any[]): any;
dxTabPanel(options: DevExpress.ui.dxTabPanelOptions): JQuery;
}
interface JQuery {
dxTabs(): JQuery;
dxTabs(options: "instance"): DevExpress.ui.dxTabs;
dxTabs(options: string): any;
dxTabs(options: string, ...params: any[]): any;
dxTabs(options: DevExpress.ui.dxTabsOptions): JQuery;
}
interface JQuery {
dxTagBox(): JQuery;
dxTagBox(options: "instance"): DevExpress.ui.dxTagBox;
dxTagBox(options: string): any;
dxTagBox(options: string, ...params: any[]): any;
dxTagBox(options: DevExpress.ui.dxTagBoxOptions): JQuery;
}
interface JQuery {
dxTextArea(): JQuery;
dxTextArea(options: "instance"): DevExpress.ui.dxTextArea;
dxTextArea(options: string): any;
dxTextArea(options: string, ...params: any[]): any;
dxTextArea(options: DevExpress.ui.dxTextAreaOptions): JQuery;
}
interface JQuery {
dxTextBox(): JQuery;
dxTextBox(options: "instance"): DevExpress.ui.dxTextBox;
dxTextBox(options: string): any;
dxTextBox(options: string, ...params: any[]): any;
dxTextBox(options: DevExpress.ui.dxTextBoxOptions): JQuery;
}
interface JQuery {
dxTileView(): JQuery;
dxTileView(options: "instance"): DevExpress.ui.dxTileView;
dxTileView(options: string): any;
dxTileView(options: string, ...params: any[]): any;
dxTileView(options: DevExpress.ui.dxTileViewOptions): JQuery;
}
interface JQuery {
dxToast(): JQuery;
dxToast(options: "instance"): DevExpress.ui.dxToast;
dxToast(options: string): any;
dxToast(options: string, ...params: any[]): any;
dxToast(options: DevExpress.ui.dxToastOptions): JQuery;
}
interface JQuery {
dxToolbar(): JQuery;
dxToolbar(options: "instance"): DevExpress.ui.dxToolbar;
dxToolbar(options: string): any;
dxToolbar(options: string, ...params: any[]): any;
dxToolbar(options: DevExpress.ui.dxToolbarOptions): JQuery;
}
interface JQuery {
dxTooltip(): JQuery;
dxTooltip(options: "instance"): DevExpress.ui.dxTooltip;
dxTooltip(options: string): any;
dxTooltip(options: string, ...params: any[]): any;
dxTooltip(options: DevExpress.ui.dxTooltipOptions): JQuery;
}
interface JQuery {
dxTreeList(): JQuery;
dxTreeList(options: "instance"): DevExpress.ui.dxTreeList;
dxTreeList(options: string): any;
dxTreeList(options: string, ...params: any[]): any;
dxTreeList(options: DevExpress.ui.dxTreeListOptions): JQuery;
}
interface JQuery {
dxTreeView(): JQuery;
dxTreeView(options: "instance"): DevExpress.ui.dxTreeView;
dxTreeView(options: string): any;
dxTreeView(options: string, ...params: any[]): any;
dxTreeView(options: DevExpress.ui.dxTreeViewOptions): JQuery;
}
interface JQuery {
dxValidationGroup(): JQuery;
dxValidationGroup(options: "instance"): DevExpress.ui.dxValidationGroup;
dxValidationGroup(options: string): any;
dxValidationGroup(options: string, ...params: any[]): any;
dxValidationGroup(options: DevExpress.ui.dxValidationGroupOptions): JQuery;
}
interface JQuery {
dxValidationSummary(): JQuery;
dxValidationSummary(options: "instance"): DevExpress.ui.dxValidationSummary;
dxValidationSummary(options: string): any;
dxValidationSummary(options: string, ...params: any[]): any;
dxValidationSummary(options: DevExpress.ui.dxValidationSummaryOptions): JQuery;
}
interface JQuery {
dxValidator(): JQuery;
dxValidator(options: "instance"): DevExpress.ui.dxValidator;
dxValidator(options: string): any;
dxValidator(options: string, ...params: any[]): any;
dxValidator(options: DevExpress.ui.dxValidatorOptions): JQuery;
}
interface JQuery {
dxBarGauge(): JQuery;
dxBarGauge(options: "instance"): DevExpress.viz.dxBarGauge;
dxBarGauge(options: string): any;
dxBarGauge(options: string, ...params: any[]): any;
dxBarGauge(options: DevExpress.viz.gauges.dxBarGaugeOptions): JQuery;
}
interface JQuery {
dxBullet(): JQuery;
dxBullet(options: "instance"): DevExpress.viz.dxBullet;
dxBullet(options: string): any;
dxBullet(options: string, ...params: any[]): any;
dxBullet(options: DevExpress.viz.sparklines.dxBulletOptions): JQuery;
}
interface JQuery {
dxChart(): JQuery;
dxChart(options: "instance"): DevExpress.viz.dxChart;
dxChart(options: string): any;
dxChart(options: string, ...params: any[]): any;
dxChart(options: DevExpress.viz.charts.dxChartOptions): JQuery;
}
interface JQuery {
dxCircularGauge(): JQuery;
dxCircularGauge(options: "instance"): DevExpress.viz.dxCircularGauge;
dxCircularGauge(options: string): any;
dxCircularGauge(options: string, ...params: any[]): any;
dxCircularGauge(options: DevExpress.viz.gauges.dxCircularGaugeOptions): JQuery;
}
interface JQuery {
dxFunnel(): JQuery;
dxFunnel(options: "instance"): DevExpress.viz.dxFunnel;
dxFunnel(options: string): any;
dxFunnel(options: string, ...params: any[]): any;
dxFunnel(options: DevExpress.viz.funnel.dxFunnelOptions): JQuery;
}
interface JQuery {
dxLinearGauge(): JQuery;
dxLinearGauge(options: "instance"): DevExpress.viz.dxLinearGauge;
dxLinearGauge(options: string): any;
dxLinearGauge(options: string, ...params: any[]): any;
dxLinearGauge(options: DevExpress.viz.gauges.dxLinearGaugeOptions): JQuery;
}
interface JQuery {
dxPieChart(): JQuery;
dxPieChart(options: "instance"): DevExpress.viz.dxPieChart;
dxPieChart(options: string): any;
dxPieChart(options: string, ...params: any[]): any;
dxPieChart(options: DevExpress.viz.charts.dxPieChartOptions): JQuery;
}
interface JQuery {
dxPolarChart(): JQuery;
dxPolarChart(options: "instance"): DevExpress.viz.dxPolarChart;
dxPolarChart(options: string): any;
dxPolarChart(options: string, ...params: any[]): any;
dxPolarChart(options: DevExpress.viz.charts.dxPolarChartOptions): JQuery;
}
interface JQuery {
dxRangeSelector(): JQuery;
dxRangeSelector(options: "instance"): DevExpress.viz.dxRangeSelector;
dxRangeSelector(options: string): any;
dxRangeSelector(options: string, ...params: any[]): any;
dxRangeSelector(options: DevExpress.viz.rangeSelector.dxRangeSelectorOptions): JQuery;
}
interface JQuery {
dxSparkline(): JQuery;
dxSparkline(options: "instance"): DevExpress.viz.dxSparkline;
dxSparkline(options: string): any;
dxSparkline(options: string, ...params: any[]): any;
dxSparkline(options: DevExpress.viz.sparklines.dxSparklineOptions): JQuery;
}
interface JQuery {
dxTreeMap(): JQuery;
dxTreeMap(options: "instance"): DevExpress.viz.dxTreeMap;
dxTreeMap(options: string): any;
dxTreeMap(options: string, ...params: any[]): any;
dxTreeMap(options: DevExpress.viz.treeMap.dxTreeMapOptions): JQuery;
}
interface JQuery {
dxVectorMap(): JQuery;
dxVectorMap(options: "instance"): DevExpress.viz.dxVectorMap;
dxVectorMap(options: string): any;
dxVectorMap(options: string, ...params: any[]): any;
dxVectorMap(options: DevExpress.viz.map.dxVectorMapOptions): JQuery;
}
declare module DevExpress {
/** Specifies settings that affect all DevExtreme widgets. */
export interface GlobalConfguration {
/** Specifies whether the widgets support a right-to-left representation. */
rtlEnabled?: boolean;
/** Specifies the default currency the widgets use. */
defaultCurrency?: String;
/** The decimal separator that is used when submitting a value to the server. */
serverDecimalSeparator?: String;
/** A decimal separator. Applies only if you do not use the Globalize or Intl library. */
decimalSeparator?: String;
/** A group separator. Applies only if you do not use the Globalize or Intl library. */
thousandsSeparator?: String;
/** Specifies whether dates are parsed and serialized according to the ISO 8601 standard in all browsers. */
forceIsoDateParsing?: boolean;
/** Specifies whether DevExtreme widgets use jQuery. */
useJQuery?: boolean;
}
/** Formats values. */
export interface Format {
/** Specifies a predefined format. Does not apply if you have specified the formatter function. */
type?: String;
/** Specifies the currency code for the 'currency' format. */
currency?: String;
/** Specifies a precision for values of a numeric format. */
precision?: number;
/** Parses string values into numeric or date-time values. Always used with formatter. */
parser?: (value: any) => any;
/** Specifies a custom format. */
formatter?: (value: any) => any;
}
/** A mixin that provides a capability to fire and subscribe to events. */
export interface EventsMixin<T> {
/** Subscribes to a specified event. */
on(eventName: string, eventHandler: Function): T;
/** Subscribes to the specified events. */
on(events: { [eventName: string]: Function; }): T;
/** Detaches all event handlers from the specified event. */
off(eventName: string): Object;
/** Detaches a particular event handler from the specified event. */
off(eventName: string, eventHandler: Function): T;
}
/** An object that serves as a namespace for the methods required to perform validation. */
export module validationEngine {
export interface IValidator {
validate(): ValidatorValidationResult;
reset(): void;
}
export interface ValidatorValidationResult {
isValid: boolean;
name?: string;
value: any;
brokenRule: any;
validationRules: any[];
}
export interface ValidationGroupValidationResult {
isValid: boolean;
brokenRules: any[];
validators: IValidator[];
}
export interface GroupConfig extends EventsMixin<GroupConfig> {
group: any;
validators: IValidator[];
validate(): ValidationGroupValidationResult;
reset(): void;
}
/** Provides access to the object that represents the specified validation group. */
export function getGroupConfig(group: any): GroupConfig
/** Provides access to the object that represents the default validation group. */
export function getGroupConfig(): GroupConfig
/** Validates rules of the validators that belong to the specified validation group. */
export function validateGroup(group: any): ValidationGroupValidationResult;
/** Validates rules of the validators that belong to the default validation group. */
export function validateGroup(): ValidationGroupValidationResult;
/** Resets the values and validation result of the editors that belong to the specified validation group. */
export function resetGroup(group: any): void;
/** Resets the values and validation result of the editors that belong to the default validation group. */
export function resetGroup(): void;
/** Validates the rules that are defined within the dxValidator objects that are registered for the specified ViewModel. */
export function validateModel(model: Object): ValidationGroupValidationResult;
/** Registers all the Validator objects extending fields of the specified ViewModel. */
export function registerModelForValidation(model: Object): void;
/** Unregisters all the Validator objects extending fields of the specified ViewModel. */
export function unregisterModelForValidation(model: Object): void;
}
export var hardwareBackButton: JQueryCallback;
/** Processes the hardware back button click. */
export function processHardwareBackButton(): void;
/** Hides the last displayed overlay widget. */
export function hideTopOverlay(): boolean;
/**
* Specifies whether or not the entire application/site supports right-to-left representation.
* @deprecated Use the config(config) method instead.
*/
export var rtlEnabled: boolean;
/** Gets the current global configuration object. */
export function config(): Object;
/** Sets the global configuration object. */
export function config(config: GlobalConfguration): void;
/** Registers a new component in the DevExpress.ui namespace. */
export function registerComponent(name: string, componentClass: Object): void;
/** Registers a new component in the specified namespace. */
export function registerComponent(name: string, namespace: Object, componentClass: Object): void;
export function requestAnimationFrame(callback: Function): number;
export function cancelAnimationFrame(requestID: number): void;
/** Custom Knockout binding that links an HTML element with a specific action. */
export class Action { }
/** An object used to manage OData endpoints in your application. */
export class EndpointSelector {
constructor(options: {
[key: string]: {
local?: string;
production?: string;
}
});
/** Returns an endpoint for the specified key. */
urlFor(key: string): string;
}
/** An object that serves as a namespace for the methods that are used to animate UI elements. */
export module fx {
/** Defines animation options. */
export interface AnimationOptions {
/** A function called after animation is completed. */
complete?: (element: JQuery, config: AnimationOptions) => void;
/** A number specifying wait time before animation execution. */
delay?: number;
/** A number specifying the time period to wait before the animation of the next stagger item starts. */
staggerDelay?: number;
/** A number specifying the time in milliseconds spent on animation. */
duration?: number;
/** A string specifying the easing function for animation. */
easing?: string;
/** Specifies the initial animation state. */
from?: any;
/** A function called before animation is started. */
start?: (element: JQuery, config: AnimationOptions) => void;
/** Specifies a final animation state. */
to?: any;
/** A string value specifying the animation type. */
type?: string;
/** Specifies the animation direction for the "slideIn" and "slideOut" animation types. */
direction?: string;
}
/** Animates the specified element. */
export function animate(element: HTMLElement, config: AnimationOptions): JQueryPromise<void>;
/** Returns a value indicating whether the specified element is being animated. */
export function isAnimating(element: HTMLElement): boolean;
/** Stops the animation. */
export function stop(element: HTMLElement, jumpToEnd: boolean): void;
}
/** The manager that performs several specified animations at a time. */
export class TransitionExecutor {
/** Deletes all the animations registered in the Transition Executor by using the enter(elements, animation) and leave(elements, animation) methods. */
reset(): void;
/** Registers a set of elements that should be animated as "entering" using the specified animation configuration. */
enter(elements: JQuery, animation: any): void;
/** Registers a set of elements that should be animated as "leaving" using the specified animation configuration. */
leave(elements: JQuery, animation: any): void;
/** Starts all the animations registered using the enter(elements, animation) and leave(elements, animation) methods beforehand. */
start(config: Object): JQueryPromise<void>;
/** Stops all started animations. */
stop(): void;
}
export class AnimationPresetCollection {
/** Resets all the changes made in the animation repository. */
resetToDefaults(): void;
/** Deletes the specified animation or clears all the animation repository, if an animation name is not passed. */
clear(name: string): void;
/** Adds the specified animation preset to the animation repository by the specified name. */
registerPreset(name: string, config: any): void;
/** Applies the changes made in the animation repository. */
applyChanges(): void;
/** Returns the configuration of the animation found in the animation repository by the specified name for the current device. */
getPreset(name: string): void;
/** Registers predefined animations in the animation repository. */
registerDefaultPresets(): void;
}
/** A repository of animations. */
export var animationPresets: AnimationPresetCollection;
/** The device object defines the device on which the application is running. */
export interface Device {
/** Indicates whether or not the device platform is Android. */
android?: boolean;
/** Specifies the type of the device on which the application is running. */
deviceType?: string;
/** Indicates whether or not the device platform is generic, which means that the application will look and behave according to a generic "light" or "dark" theme. */
generic?: boolean;
/** Indicates whether or not the device platform is iOS. */
ios?: boolean;
/** Indicates whether or not the device type is 'phone'. */
phone?: boolean;
/** Specifies the platform of the device on which the application is running. */
platform?: string;
/** Indicates whether or not the device type is 'tablet'. */
tablet?: boolean;
/** Specifies an array with the major and minor versions of the device platform. */
version?: Array<number>;
/** Indicates whether or not the device platform is Windows. */
win?: boolean;
/** Specifies a performance grade of the current device. */
grade?: string;
}
/** An object that serves as a namespace for the methods and events specifying information on the current device. */
export class Devices implements EventsMixin<Devices> {
constructor(options: { window: Window });
/** Overrides actual device information to force the application to operate as if it was running on a specified device. */
current(deviceName: any): void;
/** Returns information about the current device. */
current(): Device;
orientationChanged: JQueryCallback;
/** Returns the current device orientation. */
orientation(): string;
/** Returns real information about the current device regardless of the value passed to the devices.current(deviceName) method. */
real(): Device;
on(eventName: "orientationChanged", eventHandler: (e: { orientation: string }) => void): Devices;
on(eventName: string, eventHandler: Function): Devices;
on(events: { [eventName: string]: Function; }): Devices;
off(eventName: "orientationChanged"): Devices;
off(eventName: string): Devices;
off(eventName: "orientationChanged", eventHandler: (e: { orientation: string }) => void): Devices;
off(eventName: string, eventHandler: Function): Devices;
}
export var devices: Devices;
/** The position object specifies the widget positioning options. */
export interface PositionOptions {
/** The target element position that the widget is positioned against. */
at?: any;
/** The element within which the widget is positioned. */
boundary?: any;
/** Specifies the horizontal and vertical offset from the window's boundaries. */
boundaryOffset?: any;
/** Specifies how to move the widget if it overflows the screen. */
collision?: any;
/** The position of the widget to align against the target element. */
my?: any;
/** The target element that the widget is positioned against. */
of?: any;
/** Specifies horizontal and vertical offset in pixels. */
offset?: any;
}
export interface ComponentOptions {
/** A handler for the initialized event. Executed only once, after the widget is initialized. */
onInitialized?: Function;
/** A handler for the optionChanged event. Executed after an option of the widget is changed. */
onOptionChanged?: Function;
/** A handler for the disposing event. Executed when the widget is removed from the DOM using the remove(), empty(), or html() jQuery methods only. */
onDisposing?: Function;
}
/** A base class for all components and widgets. */
export class Component implements EventsMixin<Component> {
constructor(options?: ComponentOptions)
/** Prevents the widget from refreshing until the endUpdate() method is called. */
beginUpdate(): void;
/** Refreshes the widget after a call of the beginUpdate() method. */
endUpdate(): void;
/** Returns this widget's instance. Use it to access other methods of the widget. */
instance(): Component;
/** Gets the widget's options. */
option(): {
[optionKey: string]: any;
};
/** Sets one or more options. */
option(options: {
[optionKey: string]: any;
}): void;
/** Gets a specific option value. */
option(optionName: string): any;
/** Assigns a new value to a specific option. */
option(optionName: string, optionValue: any): void;
on(eventName: string, eventHandler: Function): Component;
on(events: { [eventName: string]: Function; }): Component;
off(eventName: string): Component;
off(eventName: string, eventHandler: Function): Component;
}
export interface DOMComponentOptionsBase extends ComponentOptions {
/** Switches the widget to a right-to-left representation. */
rtlEnabled?: boolean;
/** Specifies the attributes to be attached to the widget's root element. */
elementAttr?: Object;
/** A bag for holding any options that require two-way binding (Angular approach specific) */
bindingOptions?: { [key: string]: any; };
}
export interface DOMComponentOptions extends DOMComponentOptionsBase {
/** Specifies the widget's height. */
height?: any;
/** Specifies the widget's width. */
width?: any;
}
/** A base class for all components. */
export class DOMComponent extends Component {
constructor(element: JQuery, options?: DOMComponentOptions);
constructor(element: HTMLElement, options?: DOMComponentOptions);
/** Gets the root element of the widget. */
element(): JQuery;
/** Removes the widget from the DOM. */
dispose(): void;
/** Specifies the device-dependent default configuration options for this component. */
static defaultOptions(rule: {
device?: any;
options?: any;
}): void;
/** Gets the widget's instance using a DOM element. */
static getInstance(element: JQuery): DOMComponent;
}
export module data {
export interface ODataError extends Error {
httpStatus?: number;
errorDetails?: any;
}
export interface StoreOptions {
/** A handler for the modified event. */
onModified?: () => void;
/** A handler for the modifying event. */
onModifying?: () => void;
/** A handler for the removed event. */
onRemoved?: (key: any) => void;
/** A handler for the removing event. */
onRemoving?: (key: any) => void;
/** A handler for the updated event. */
onUpdated?: (key: any, values: Object) => void;
/** A handler for the updating event. */
onUpdating?: (key: any, values: Object) => void;
/** A handler for the loaded event. */
onLoaded?: (result: Array<any>) => void;
/** A handler for the loading event. */
onLoading?: (loadOptions: LoadOptions) => void;
/** A handler for the inserted event. */
onInserted?: (values: Object, key: any) => void;
/** A handler for the inserting event. */
onInserting?: (values: Object) => void;
/** Specifies the function called when the Store causes an error. */
errorHandler?: (e: Error) => void;
/** Specifies the key properties within the data associated with the Store. */
key?: any;
}
/** This section describes the loadOptions object's fields. */
export interface LoadOptions {
/** The current search value. */
searchValue?: any;
/** A data field or an expression whose value is compared to the search value. */
searchExpr?: any;
/** A comparison operation. One of the following: "=", "<>", ">", ">=", "<", "<=", "startswith", "endswith", "contains", "notcontains", "isblank" and "isnotblank". */
searchOperation?: string;
/** A filter expression. */
filter?: Object;
/** A sort expression. */
sort?: Object;
/** A select expression. */
select?: Object;
/** An array of strings that represent the names of navigation properties to be loaded simultaneously with the ODataStore. */
expand?: Object;
/** A group expression. */
group?: Object;
/** The number of data objects to be skipped from the result set's start. In conjunction with take, used to implement paging. */
skip?: number;
/** The number of data objects to be loaded. In conjunction with skip, used to implement paging. */
take?: number;
/** An object for storing additional settings that should be sent to the server. */
userData?: Object;
/** Indicates whether the total count of data objects is needed. */
requireTotalCount?: boolean;
customQueryParams?: Object;
}
export interface DataGridLoadOptions extends LoadOptions {
totalSummary?: Object;
groupSummary?: Object;
requireGroupCount?: boolean;
}
export interface PivotGridLoadOptions extends LoadOptions {
totalSummary?: Object;
groupSummary?: Object;
}
/** The base class for all Stores. */
export class Store implements EventsMixin<Store> {
constructor(options?: StoreOptions);
/** Returns the data item specified by the key. */
byKey(key: any): JQueryPromise<any>;
/** Adds an item to the data associated with this Store. */
insert(values: Object): JQueryPromise<any>;
/** Returns the key expression specified via the key configuration option. */
key(): any;
/** Returns the key of the Store item that matches the specified object. */
keyOf(obj: Object): any;
/** Starts loading data. */
load(): JQueryPromise<any[]>;
/** Starts loading data. */
load(options?: LoadOptions): JQueryPromise<any[]>;
/** Removes the data item specified by the key. */
remove(key: any): JQueryPromise<any>;
/** Obtains the total count of items that will be returned by the load() function. */
totalCount(options?: {
filter?: Object;
group?: Object;
}): JQueryPromise<any>;
/** Updates the data item specified by the key. */
update(key: any, values: Object): JQueryPromise<any>;
on(eventName: "removing", eventHandler: (key: any) => void): Store;
on(eventName: "removed", eventHandler: (key: any) => void): Store;
on(eventName: "updating", eventHandler: (key: any, values: Object) => void): Store;
on(eventName: "updated", eventHandler: (key: any, values: Object) => void): Store;
on(eventName: "inserting", eventHandler: (values: Object) => void): Store;
on(eventName: "inserted", eventHandler: (values: Object, key: any) => void): Store;
on(eventName: "modifying", eventHandler: () => void): Store;
on(eventName: "modified", eventHandler: () => void): Store;
on(eventName: "loading", eventHandler: (loadOptions: LoadOptions) => void): Store;
on(eventName: "loaded", eventHandler: (result: Array<any>) => void): Store;
on(eventName: string, eventHandler: Function): Store;
on(events: { [eventName: string]: Function; }): Store;
off(eventName: "removing"): Store;
off(eventName: "removed"): Store;
off(eventName: "updating"): Store;
off(eventName: "updated"): Store;
off(eventName: "inserting"): Store;
off(eventName: "inserted"): Store;
off(eventName: "modifying"): Store;
off(eventName: "modified"): Store;
off(eventName: "loading"): Store;
off(eventName: "loaded"): Store;
off(eventName: string): Store;
off(eventName: "removing", eventHandler: (key: any) => void): Store;
off(eventName: "removed", eventHandler: (key: any) => void): Store;
off(eventName: "updating", eventHandler: (key: any, values: Object) => void): Store;
off(eventName: "updated", eventHandler: (key: any, values: Object) => void): Store;
off(eventName: "inserting", eventHandler: (values: Object) => void): Store;
off(eventName: "inserted", eventHandler: (values: Object, key: any) => void): Store;
off(eventName: "modifying", eventHandler: () => void): Store;
off(eventName: "modified", eventHandler: () => void): Store;
off(eventName: "loading", eventHandler: (loadOptions: LoadOptions) => void): Store;
off(eventName: "loaded", eventHandler: (result: Array<any>) => void): Store;
off(eventName: string, eventHandler: Function): Store;
}
export interface ArrayStoreOptions extends StoreOptions {
/** Specifies the array associated with this Store. */
data?: Array<any>;
}
/** A Store accessing an in-memory array. */
export class ArrayStore extends Store {
constructor(options?: ArrayStoreOptions);
/** Clears all data associated with the current ArrayStore. */
clear(): void;
/** Creates the Query object for the underlying array. */
createQuery(): Query;
}
interface Promise {
then(doneFn?: any, failFn?: any, progressFn?: any): Promise;
}
export interface CustomStoreOptions extends StoreOptions {
/** Specifies whether or not the store combines the search expression with the filter expression. */
useDefaultSearch?: boolean;
/** Specifies how data returned by the load function is treated. */
loadMode?: string;
/** Specifies whether raw data should be saved in the cache. Applies only if loadMode is "raw". */
cacheRawData?: boolean;
/** The user implementation of the byKey(key, extraOptions) method. */
byKey?: (key: any) => Promise;
/** The user implementation of the insert(values) method. */
insert?: (values: Object) => Promise;
/** The user implementation of the load(options) method. */
load?: (options?: LoadOptions) => Promise;
/** The user implementation of the remove(key) method. */
remove?: (key: any) => Promise;
/** The user implementation of the totalCount(options) method. */
totalCount?: (options?: {
filter?: Object;
group?: Object;
}) => Promise;
/** The user implementation of the update(key, values) method. */
update?: (key: any, values: Object) => Promise;
}
/** A Store object that enables you to implement your own data access logic. */
export class CustomStore extends Store {
constructor(options: CustomStoreOptions);
/** Deletes data from the cache. Takes effect only if the cacheRawData option is true. */
clearRawDataCache(): void;
}
export interface DataSourceOptions {
/** Specifies data filtering conditions. */
filter?: Object;
/** Specifies data grouping conditions. */
group?: Object;
/** The item mapping function. */
map?: (record: any) => any;
/** Specifies the maximum number of items the page can contain. */
pageSize?: number;
/** Specifies whether a DataSource loads data by pages, or all items at once. */
paginate?: boolean;
/** The data post processing function. */
postProcess?: (data: any[]) => any[];
/** Specifies a value by which the required items are searched. */
searchExpr?: any;
/** Specifies the comparison operation used to search for the required items. One of "=", "<>", ">", ">=", "<", "<=", "startswith", "endswith", "contains", "notcontains". */
searchOperation?: string;
/** Specifies the value to which the search expression is compared. */
searchValue?: any;
/** Specifies the initial select option value. */
select?: Object;
/** An array of the strings that represent the names of the navigation properties to be loaded simultaneously with the OData store's entity. */
expand?: Object;
/** The bag of custom parameters passed to the query executed when the DataSource load operation is invoked. */
customQueryParams?: Object;
/** Specifies whether or not the DataSource instance requests the total count of items available in the storage. */
requireTotalCount?: boolean;
/** Specifies the initial sort option value. */
sort?: Object;
/** Specifies the underlying Store instance used to access data. */
store?: any;
/** A handler for the changed event. */
onChanged?: () => void;
/** A handler for the loadingChanged event. */
onLoadingChanged?: (isLoading: boolean) => void;
/** A handler for the loadError event. */
onLoadError?: (e?: Error) => void;
}
export interface OperationPromise<T> extends JQueryPromise<T> {
operationId: number;
}
/** An object that provides access to a data web service or local data storage for collection container widgets. */
export class DataSource implements EventsMixin<DataSource> {
constructor(url: string);
constructor(data: Array<any>);
constructor(options: CustomStoreOptions);
constructor(options: DataSourceOptions);
/** Disposes all resources associated with this DataSource. */
dispose(): void;
/** Returns the current filter option value. */
filter(): Object;
/** Sets the filter option value. */
filter(filterExpr: Object): void;
/** Returns the current group option value. */
group(): Object;
/** Sets the group option value. */
group(groupExpr: Object): void;
/** Indicates whether or not the current page contains fewer items than the number of items specified by the pageSize configuration option. */
isLastPage(): boolean;
/** Indicates whether or not at least one load() method execution has successfully finished. */
isLoaded(): boolean;
/** Indicates whether or not the DataSource is currently being loaded. */
isLoading(): boolean;
/** Returns the array of items currently operated by the DataSource. */
items(): Array<any>;
/** Returns the key expression specified by the key configuration option of the underlying Store. */
key(): any;
/** Starts loading data. */
load(): OperationPromise<Array<any>>;
/** Clears currently loaded DataSource items and calls the load() method. */
reload(): OperationPromise<Array<any>>;
/** Returns an object that would be passed to the load() method of the underlying Store according to the current data shaping option values of the current DataSource instance. */
loadOptions(): Object;
/** Returns the current pageSize option value. */
pageSize(): number;
/** Sets the pageSize option value. */
pageSize(value: number): void;
/** Specifies the index of the currently loaded page. */
pageIndex()