webix
Version:
Webix UI
2,030 lines (2,017 loc) • 504 kB
TypeScript
// Type definitions for Webix UI 11.0
// Project: https://webix.com
type obj = { [key: string]: any };
type WebixDataMap = { [key: string]: string };
type WebixTemplate = (...args: any[]) => string;
type WebixCallback = (...args: any[]) => any;
type WebixProxy = {
$proxy:boolean;
init?():void;
load(view:webix.ui.baseview, params:obj):Promise<any>|any[]|obj;
save?(view:webix.ui.baseview, params:obj, dp:webix.DataProcessor):Promise<any>|obj;
saveAll?(view:webix.ui.baseview, params:obj, dp:webix.DataProcessor):Promise<any>|any[];
result?(state:obj, view:webix.ui.baseview, dp:webix.DataProcessor, text:string, data:obj, loader:XMLHttpRequest):void;
};
type EventHash = { [id: string] : WebixCallback };
type PositionInfo = { x: number, y: number };
type SizeInfo = { width: number, height: number };
type WebixDataStorage = DataCollection | TreeCollection | DataStore | TreeStore;
type WebixDataMoveTarget = webix.ui.baseview | WebixDataStorage;
type WebixBindSource = webix.ui.baseview | WebixDataStorage;
type WebixAnimate = {
type?: "flip" | "slide" | "flipback" | "fade" | "show";
direction?: "right" | "left" | "top" | "bottom";
subtype?: "out" | "in" | "together" | "horizontal" | "vertical";
x?: number;
y?: number;
delay?: number;
timing?: string;
callback?: WebixCallback;
master?: obj;
}
type WebixValidationRule = "isNotEmpty" | "isEmail" | "isNumber" | "isChecked";
type WebixValidationRules = {
[key: string]: ((...args: any[]) => boolean) | WebixValidationRule;
}
type WebixEventContext = {
bind?: obj;
capture?: boolean;
id?: string | number;
}
type WebixSortConfig = {
by: string;
dir?: string;
as?: string;
}
type WebixSortingType = "int" | "date" | "string" | "string_strict" | "text" | "string_locale" | "string_locale_strict" | "text_locale" | "server" | "raw";
type WebixSorting = {
create(config: WebixSortConfig | WebixSortConfig[]): any;
as: {
[key in WebixSortingType]: (a?: any, b?: any) => number;
} & { [key: string]: (a?: any, b?: any) => number | boolean }
}
type WebixGroupConfig = {
by: string | WebixCallback;
map?: {
[key: string]: any[];
};
missing?: boolean | string;
footer?: {
[key: string]: any[];
} & { row?: string | WebixTemplate; };
row?: string | WebixTemplate;
}
type WebixDragConfig = {
$drag?(source: HTMLElement, event: Event, pointer: string): string;
$dragPos?: WebixCallback;
$dragCreate?(source: HTMLElement, event:Event, pointer: string): HTMLElement;
$dragDestroy?: WebixCallback;
move?(source: HTMLElement, tindex:number, tobj: webix.ui.baseview, details: obj): void;
}
type WebixDropConfig = {
$dragIn?(source: HTMLElement, target: HTMLElement, event: Event): void;
$dragOut?(source: HTMLElement, target: HTMLElement, drop: HTMLElement, event: Event): void;
$drop?(source: HTMLElement, target: HTMLElement, event: Event): void;
}
type WebixDnDContext = {
from?: any;
to?: any;
source?: any;
target?: any;
start?: any;
parent?: string | number;
index?: number;
x_offset?: number;
y_offset?: number;
}
type WebixNumberFormat = {
decimalSize?: number;
groupSize?: number;
decimalDelimiter?: string;
groupDelimiter?: string;
decimalOptional?: boolean;
prefix?: string;
sufix?: string;
minusSign?: string | string[];
minusPosition?: string;
}
type WebixPrintSettings = {
paper?: string;
mode?: "portrait" | "landscape";
margin?: number | WebixMarginConfig;
docHeader?: string;
docFooter?: string;
scroll?: boolean;
fit?: "page" | "data";
header?: boolean;
skiprows?: boolean;
borderless?: boolean;
trim?: boolean;
data?: string;
footer?: boolean;
sheets?: boolean | string | string[];
sheetnames?: boolean;
external?: boolean;
}
type WebixProgressBarConfig = {
type?: "top" | "bottom" | "icon";
icon?: string;
delay?: number;
hide?: boolean;
position?: number;
}
type WebixItemType = {
css?: string;
height?: number | "auto";
template?: string | WebixTemplate;
width?: number | "auto";
[key: string]: any;
}
type WebixItemTypes = {
[key: string]: WebixItemType;
}
type WebixScrollState = {
x: number;
y: number;
}
type WebixMarginConfig = {
top?: number;
bottom?: number;
left?: number;
right?: number;
}
type WebixPaddingConfig = {
top?: number;
bottom?: number;
left?: number;
right?: number;
}
type WebixAutoTooltipConfig = {
template?: string | WebixTemplate;
dx?: number;
dy?: number;
delay?: number;
overflow?: boolean;
css?: string | obj;
}
type WebixDynamicTooltipConfig = {
$tooltipIn?(target: HTMLElement, event: Event): any;
$tooltipOut?(target: HTMLElement, node: HTMLElement, event: Event): any;
$tooltipMove?(target: HTMLElement, event: Event, details: { first?: string | null; overflow?: string | null }): any;
overflow?: boolean;
}
type WebixTouchConfig = {
longTouchDelay: number;
scrollDelay: number;
gravity: number;
deltaStep: number;
speed: string;
finish: number;
elastic: boolean;
}
type WebixPagerConfig = {
container?: string;
size?: number;
group?: number;
page?: number;
}
type WebixEventMap = {
[eventId: string]: webix.ui.baseview;
}
type WebixOnClickConfig = {
[key: string]: WebixCallback;
}
type WebixCalendarIcon = {
template: WebixTemplate;
on_click: WebixOnClickConfig;
}
type WebixCalendarIconConfig = WebixCalendarIcon[];
type WebixSparklineType = "area" | "bar" | "line" | "pie" | "spline" | "splineArea" | "radar";
type WebixSparklineOptions = {
paddingX?: number;
paddingY?: number;
radius?: number;
eventRadius?: number;
minHeight?: number;
css?: string;
itemCss?: string | WebixCallback;
origin?: number;
scale?: number;
color?: string;
horizontal?: boolean;
donut?: boolean;
innerRadius?: number;
}
type WebixSparklines = {
[key in WebixSparklineType]: WebixCallback;
}
type WebixSpan = [ string | number, string, number, number, string?, string? ];
type WebixSpanConfig = WebixSpan[];
type WebixHeaderMenuConfig = {
width?: number;
height?: number;
autoheight?: boolean;
autowidth?: boolean;
yCount?: number;
scroll?: boolean;
spans?: boolean;
data?: any[];
template?: string | WebixTemplate;
}
type WebixDatatableHeaderConfig = {
autoheight?: boolean;
text?: string;
batch?: number | string;
colspan?: number;
closed?: boolean;
rowspan?: number;
rotate?: boolean;
collect?: { visible?: boolean };
compare?: WebixCallback;
content?: string;
contentId?: number | string;
placeholder?: string;
prepare?: WebixCallback;
inputConfig?: obj;
tooltip?: boolean | string | WebixTemplate;
mode?: string;
height?: number;
css?: string | obj;
groupText?: string;
}
type WebixDatatableColumn = {
id?: number | string;
adjust?: boolean | "data" | "header";
adjustBatch?: number;
batch?: number | string;
css?: string | obj;
cssFormat?: WebixCallback;
collection?: any;
checkValue?: number | string;
editor?: string;
editParse?: WebixCallback;
editFormat?: WebixCallback;
header?: string | WebixDatatableHeaderConfig | (string | null | WebixDatatableHeaderConfig)[];
headermenu?: boolean;
hidden?: boolean;
footer?: string | WebixDatatableHeaderConfig | (string | null | WebixDatatableHeaderConfig)[];
numberFormat?: string;
format?: WebixCallback;
sort?: string | WebixCallback;
suggest?: any;
fillspace?: boolean | number;
options?: any;
optionslist?: boolean;
popup?: any;
template?: string | WebixTemplate;
liveEdit?: boolean;
math?: string;
map?: string;
maxWidth?: number;
minWidth?: number;
tooltip?: boolean | string | WebixTemplate;
uncheckValue?: number | string;
width?: number;
}
type WebixDatatableFilterConfig = {
columnId?: string;
compare?: WebixCallback;
prepare?: WebixCallback;
}
type WebixDatatableFilterController = {
getValue: WebixCallback;
setValue?: WebixCallback;
$server?: boolean;
}
type WebixShowColumnConfig = {
spans?: boolean;
}
type WebixResizeRowColConfig = {
size?: number;
headerOnly?: boolean;
}
type WebixFormatConfig = {
parse: WebixCallback;
edit: WebixCallback;
}
type WebixCellObject = {
row: string | number;
column: string | number;
}
type WebixTimeboardValue = {
day_part: string;
hours?: string;
minutes: string;
seconds?: string;
shours?: number;
sminutes: number;
sseconds?: number;
}
type WebixFileObject = {
name?: string;
size?: number;
file?: File;
}
type WebixWindowPosConfig = {
pos?: "top" | "left" | "right" | "bottom";
x?: number;
y?: number;
}
type WebixMessageBaseConfig = {
text: string;
id?: string | number;
}
type WebixMessageType = "info" | "success" | "error" | "debug";
type WebixConfirmType = "confirm-warning" | "confirm-error";
type WebixAlertType = "alert-warning" | "alert-error";
type WebixPromptType = "prompt-warning" | "prompt-error";
type WebixMessageConfig = WebixMessageBaseConfig & {
expire?: number;
type?: WebixMessageType | WebixAlertType | WebixConfirmType;
}
type WebixMessageboxConfig = WebixMessageBaseConfig & {
title?: string;
width?: number;
height?: number;
container?: HTMLElement;
callback?: WebixCallback
css?: string;
};
type WebixAlertConfig = WebixMessageboxConfig & {
ok?: string;
type?: WebixAlertType | WebixConfirmType;
}
type WebixConfirmConfig = WebixMessageboxConfig & {
ok?: string;
cancel?: string;
type?: WebixAlertType | WebixConfirmType;
}
type WebixModalboxConfig = WebixMessageboxConfig & {
buttons?: string[];
type?: WebixAlertType | WebixConfirmType;
}
type WebixPromptConfig = WebixMessageboxConfig & {
ok?: string;
cancel?: string;
type?: WebixPromptType | WebixAlertType | WebixConfirmType;
}
type WebixFieldParams = {
hidden?: boolean;
disabled?: boolean;
}
type WebixRenderType = "paint" | "update" | "add" | "delete" | "move";
type WebixTreeRenderType = "branch" | WebixRenderType;
type WebixLocaleConfig = {
lang?: string;
webix?: { [key: string]: string };
}
type WebixDataScheme = {
$init?: WebixCallback;
$update?: WebixCallback;
$save?: WebixCallback;
$change?: WebixCallback;
$serialize?: WebixCallback;
$export?: WebixCallback;
$group?: WebixCallback;
$sort?: WebixCallback;
[key: string]: any;
}
type WebixCommentsDataScheme = {
$init?: WebixCallback;
}
type WebixGridlayoutPosConfig = {
x?: number;
y?: number;
dx?: number;
dy?: number;
}
type WebixDelimiterConfig = {
rows?: string;
cols?: string;
}
type WebixSpreadsheetButton = "undo" | "redo" | "font-family" | "font-size" | "font-weight" | "font-style" | "underline" | "color" | "background" | "borders" | "span" | "text-align" | "vertical-align" | "wrap" | "format" | "increase-indent" | "decrease-indent" | "text-decoration";
type WebixSpreadsheetButtonConfig = {
[key: string]: WebixSpreadsheetButton[];
}
type WebixSpreadsheetSheetContent = {
data: [ number | string, number | string, string | number ][];
}
type WebixSpreadsheetSparklineConfig = {
type: string;
range: string;
color?: string;
negativeColor?: string;
}
type WebixSpreadsheetStyle = {
id?: string;
props?: WebixSpreadsheetStyleProps;
text?: string;
}
type WebixSpreadsheetStyleProps = {
background?: string;
borders?: string;
"border-bottom"?: string;
"border-left"?: string;
"border-right"?: string;
"border-top"?: string;
color?: string;
"font-family"?: string;
"font-size"?: string;
"font-style"?: string;
"font-weight"?: string;
format?: string;
indent?: string;
strike?: string;
"text-align"?: string;
"underline"?: string;
"vertical-align"?: string;
wrap?: string;
}
type WebixSpreadsheetSerializeConfig = {
sheets?: boolean;
math?: boolean;
compactStyle?: boolean;
}
type WebixSpreadsheetComments = {
add: WebixCallback;
get: WebixCallback;
remove: WebixCallback;
}
type WebixSpreadsheetAlertConfig = {
text: string;
type?: string;
}
type WebixSpreadsheetConfirmConfig = {
text: string;
}
type WebixSpreadsheetRangeClearConfig = {
values?: boolean;
styles?: boolean;
}
type WebixSpreadsheetCellRangeConfig = {
cell: { row: number; column: number; };
x?: number;
y?: number;
}
type WebixSpreadsheetCellEditorConfig = {
editor: string;
options?: string | any[];
empty?: boolean;
}
type WebixSpreadsheetCellFilterConfig = {
options: string | any[];
mode?: string;
value?: obj;
lastRow?: number;
}
type WebixSpreadsheetCellFilterExtendedConfig = WebixSpreadsheetCellFilterConfig & {
row: number;
column: number;
}
type WebixDataMoveOptions = {
newId?: string | number;
}
type WebixTreeDataMoveOptions = WebixDataMoveOptions & {
parent?: string | number;
}
type WebixTextPattern = {
mask: string;
allow?: RegExp;
}
type WebixTabviewCellConfig = {
header: string;
body: webix.ui.baseviewConfig;
close?: boolean;
icon?: string;
}
type WebixTreeFilterMode = {
showSubItems?: boolean;
openParents?: boolean;
level?: number;
}
type WebixTreeState = {
open: string[];
select: string;
}
type WebixContext = {
id?: string | number;
obj?: webix.ui.baseview;
}
type WebixCanvasContext = CanvasRenderingContext2D;
type WebixDatatableType = {
[key: string]: string | WebixTemplate;
}
type WebixDatatableCollectValuesConfig = {
visible?: boolean;
}
type WebixDatatableAreaSelection = {
start: WebixCellObject;
end: WebixCellObject;
handle: boolean;
preserve?: boolean;
area_name?: string;
css?: string;
}
type WebixDatatableSelectAreas = {
[areaId: number]: WebixDatatableAreaSelection;
}
type WebixDatatableHideColumnConfig = {
spans?: boolean;
}
type WebixDatatableCellPos = {
row: string | number;
column: string | number;
rind: number;
cind: number;
span: number;
}
type WebixDatatableItemPos = Omit<Partial<WebixDatatableCellPos>, "span">;
type WebixDataProcessorFullConfig = {
id?: string | number;
master?: string | webix.ui.baseview;
} & WebixDataProcessorConfig
type WebixDataProcessorConfig = {
$proxy?: boolean;
url?: string | WebixDataProcessorConfig & { saveAll?(view:obj, params:obj, dp:any):Promise<any>|obj; };
autoupdate?: boolean;
updateFromResponse?: boolean;
trackMove?: boolean;
insert?: string | WebixCallback;
update?: string | WebixCallback;
delete?: string | WebixCallback;
save?(view:obj, params:obj, dp:any):Promise<any>|obj;
}
type WebixDataLoaderInfo = {
size: number;
from: number;
parent: number;
config: any;
}
type WebixDataDriver = {
toObject(data: any): any;
getRecords(data: any): any[];
getDetails(data: any): obj;
getOptions(): any;
getInfo(): any;
[key: string]: any;
}
type WebixCSVDataDriver = {
toObject(data: string): string;
getRecords(data: string): string[];
getDetails(data: string): obj;
getOptions(): boolean;
getInfo(): { size: 0 };
stringToArray(data: string): string[];
idColumn: string | number;
row: string;
cell: string;
}
type WebixExcelDataDriver = {
toObject(data: string): string;
getRecords(data: string): string[];
getDetails(data: string): obj;
getOptions(): false;
getInfo(): { size: 0 };
stringToArray(data: string): string[];
idColumn: string | number;
row: string;
cell: string;
}
type WebixHTMLDataDriver = {
toObject(data: string): HTMLElement;
getRecords(data: HTMLElement): HTMLCollection;
getDetails(data: string): obj;
getOptions(): false;
getInfo(): { size: 0 };
tag: string;
}
type WebixHTMLTableDataDriver = {
toObject(elementId: string): HTMLCollection;
getRecords(data: any[]): any[];
getDetails(data: HTMLElement): obj;
getOptions(): void;
getInfo(): { size: 0 };
}
type WebixJSArrayDataDriver = {
toObject(data: string): obj;
getRecords(data: obj): any[];
getDetails(data: any[]): obj;
getOptions(): false;
getInfo(): { size: 0 };
idColumn: string | number;
}
type WebixJSONDataDriver = {
toObject(data: string): obj;
getRecords(data: obj): any[];
getDetails(data: string): obj;
getOptions(): any;
getInfo(): WebixDataLoaderInfo;
child: string;
parseDates: boolean;
}
type WebixXMLDataDriver = {
toObject(data: string): obj;
getRecords(data: obj): any[];
getDetails(data: string): obj;
getOptions(): any;
getInfo(): WebixDataLoaderInfo;
child: string;
parseDates: boolean;
}
type WebixDataProcessorState = "saving" | boolean;
type WebixDataProcessorItemStateObject = {
id: string | number;
operation: "update" | "insert" | "delete";
data: obj;
}
type WebixDataProcessorResultObject = {
id?: string | number;
newId?: string | number;
status?: "update" | "insert" | "delete" | "error" | "invalid";
[key: string]: any;
}
type WebixNavigationConfig = {
items?: boolean;
buttons?: boolean;
type?: string;
}
type WebixBulletScaleConfig = {
step?: number;
template?: string | WebixTemplate;
}
type WebixChartItemType = "s" | "square" | "t" | "triangle" | "d" | "diamond" | "r" | "round";
type WebixChartItemConfig = {
alpha?: number;
borderColor?: string | WebixTemplate;
borderWidth?: number;
color?: string | WebixTemplate;
eventRadius?: number;
radius?: number;
shadow?: boolean;
type?: WebixChartItemType | WebixTemplate;
}
type WebixChartLegendMarker = {
type?: "square" | "round" | "item";
width?: number;
height?: number;
radius?: number;
}
type WebixChartLegendItem = {
text?: string;
color?: string | WebixTemplate;
markerType?: "square" | "round" | "item";
toggle?: boolean;
}
type WebixChartLegendConfig = {
width?: number;
height?: number;
layout?: "x" | "y";
align?: "left" | "right" | "center";
valign?: "top" | "bottom" | "middle";
margin?: number;
padding?: number;
template?: string;
toggle?: boolean;
values?: WebixChartLegendItem[];
marker?: WebixChartLegendMarker;
}
type WebixChartLineConfig = {
width?: number;
color?: string | WebixTemplate;
}
type WebixChartSeriesConfig = webix.ui.chartConfig[];
type WebixChartXAxisConfig = {
template?: string | WebixTemplate;
title?: string;
lines?: boolean | ((...args:any[]) => boolean);
lineColor?: string | WebixTemplate;
color?: string;
start?: number;
end?: number;
step?: number;
}
type WebixChartYAxisConfig = {
start?: number;
end?: number;
step?: number;
template?: string | WebixTemplate;
title?: string;
lines?: boolean | ((...args:any[]) => boolean);
color?: string;
lineColor?: string | WebixTemplate;
lineShape?: "arc" | "line";
bg?: string | WebixTemplate;
}
type WebixChartColormap = {
RAINBOW: WebixTemplate;
default: WebixTemplate;
}
type WebixChartPreset = "column" | "stick" | "alpha" | "area" | "line" | "point" | "simple" | "plot" | "round" | "square" | "diamond";
type WebixChartPresets = {
simple: {
item: {
borderColor: "#ffffff";
color: "#2b7100";
shadow: false;
borderWidth: 2;
},
line: {
color: "#8ecf03";
width: 2;
}
},
plot: {
color: "#8664C6",
item: {
borderColor: "#8664C6";
borderWidth: 1;
color: "#ffffff";
type: "r";
shadow: false;
},
line: {
color: "#8664C6";
width: 2;
}
},
diamond: {
color: "#FF5C4C";
item: {
borderColor: "#FF5C4C";
color: "#FF5C4C";
type: "d";
radius: 3;
shadow: true;
},
line: {
color: "#FF5C4C";
width: 2;
}
},
point: {
color: "#1ca1c1";
disableLines: true;
fill: false;
disableItems: false;
item: {
color: "#1ca1c1";
borderColor: "#1ca1c1";
radius: 2;
borderWidth: 2;
type: "r";
},
alpha: 1;
},
line: {
line: {
color: "#1ca1c1";
width: 2;
},
item: {
color: "#ffffff";
borderColor: "#1ca1c1";
radius: 2;
borderWidth: 2;
type: "d";
},
fill: false;
disableItems: false;
disableLines: false;
alpha: 1;
},
area: {
fill: "#1ca1c1";
line: {
color: "#1ca1c1";
width: 1;
},
disableItems: true;
alpha: 0.2;
disableLines: false;
},
round: {
item: {
radius: 3;
borderColor: "#1ca1c1";
borderWidth: 1;
color: "#1ca1c1";
type: "r";
shadow: false;
alpha: 0.6;
}
},
square: {
item: {
radius: 3;
borderColor: "#00a497";
borderWidth: 2;
color: "#ffffff";
type: "s";
shadow: false;
alpha: 1;
},
line: {
color: "#00a497";
}
},
column: {
color: "RAINBOW";
gradient: false;
barWidth: 45;
radius: 0;
alpha: 1;
border: true;
},
stick: {
barWidth: 5;
gradient: false;
color: "#1ca1c1";
radius: 2;
alpha: 1;
border: false;
},
alpha: {
color: "#b9a8f9";
barWidth: 70;
gradient: "falling";
radius: 0;
alpha: 0.5;
border: true;
}
}
type WebixRangechartRange = {
start?: number;
end?: number;
sindex?: number;
eindex?: number;
}
type WebixChatCallsConfig = {
enabled?: boolean;
groupCalls?: boolean;
livekitConfig?: {
host: string;
[key: string]: any;
};
}
type WebixCommentsItemConfig = {
templateUser?: string | WebixTemplate;
templateMenu?: string | WebixTemplate;
templateDate?: string | WebixTemplate;
templateText?: string | WebixTemplate;
templateLinks?: string | WebixTemplate;
templateAvatar?: string | WebixTemplate;
templateMentioned?: string | WebixTemplate;
menuPosition?: WebixWindowPosConfig;
}
type WebixDaterangeValue = {
start?: Date | string;
end?: Date | string;
}
type WebixDiagramValues = {
data: any[];
links?: any[];
shapes?: any[];
item?: obj;
linkItem?: obj;
}
type WebixDiagramItemType = {
width?: number;
height?: number;
x?: number;
y?: number;
template?: string | WebixTemplate;
type?: string;
css?: string | WebixCallback;
}
type WebixDiagramLinkItemType = {
mode?: "edges" | "direct" | "curve" | "child" | "sibling";
from?: "center" | "top" | "right" | "bottom" | "left";
to?: "center" | "top" | "right" | "bottom" | "left";
line?: any[];
$css?: string | WebixCallback;
lineWidth?: number;
lineColor?: string;
lineStyle?: string | number;
arrow?: boolean | string | any[];
$arrowCss?: string | WebixCallback;
arrowSize?: string | number;
backgroundColor?: string;
fillOpacity?: string | number;
}
type WebixFileManagerClipboard = {
files: any[];
type: "cut" | "copy";
}
type WebixDocManagerClipboard = WebixFileManagerClipboard & {
type: "cut" | "copy" | "trashed";
}
type WebixFilterValue = {
condition?: {
filter?: string;
type?: string;
},
includes?: any[] | null
}
type WebixGrouplistOpenState = {
parents: any[];
branch: any[];
}
type WebixKanbanEditorConfig = webix.ui.formConfig & {
[key: string]: any;
}
type WebixMulticomboValueConfig = {
options?: boolean;
}
type WebixMultitextSubConfig = webix.ui.multitextConfig & {
[key: string]: any;
}
type WebixPanelResizeEndPos = {
mx: number;
my: number;
}
type WebixPanelResizeMovePos = {
x: number;
y: number;
}
type WebixPropertyElementsConfig = {
label?: string;
type?: string;
id?: string | number;
options?: any[];
[key: string]: any;
}[]
type WebixQueryRule = {
field?: string;
} & WebixFilterValue;
type WebixQueryValue = {
glue?: string;
rules?: WebixQueryRule[];
}
type WebixTooltipDataItem = {
id?: number | string;
value: string;
}
type WebixGeochartInnerConfig = {
backgroundColor?: string | {
fill?: string;
stroke?: string;
strokeWidth?: number;
};
colorAxis?: {
minValue?: number;
maxValue?: number;
values?: number[];
colors?: string[];
};
datalessRegionColor?: string;
defaultColor?: string;
displayMode?: "auto" | "regions" | "markers" | "text";
domain?: string;
enableRegionInteractivity?: boolean;
forceIFrame?: boolean;
geochartVersion?: number;
height?: number;
keepAspectRatio?: boolean;
legend?: {
numberFormat?: string;
textStyle?: {
color?: string;
fontName?: string;
fontSize?: string;
bold?: boolean;
italic?: boolean;
}
} | "none";
region?: string;
magnifyingGlass?: {
enable?: boolean;
zoomFactor?: number;
};
markerOpacity?: number;
regioncoderVersion?: number;
resolution?: "countries" | "provinces" | "metros";
sizeAxis?: {
maxSize?: number;
maxValue?: number;
minSize?: number;
minValue?: number;
};
tooltip?: {
textStyle?: {
color?: string;
fontName?: string;
fontSize?: string;
bold?: boolean;
italic?: boolean;
};
trigger?: "focus" | "none" | "selection";
};
width?: number;
}
type WebixGoogleMapHeatmapLayerConfig = {
data?: any[];
dissipating?: boolean;
gradient?: string[];
map?: any;
maxIntensity?: number;
opacity?: number;
radius?: number;
}
type WebixPivotOperationsConfig = {
[key: string]: {
handler?: WebixCallback;
fields?: number;
hidden?: boolean;
branchMode?: "raw" | "result";
} | WebixCallback;
}
type WebixPivotTotalOperationsConfig = {
[key: string]: {
group?: string;
column?: string;
footer?: string;
} | string;
}
type WebixPivotStructure = {
rows?: any[];
columns?: any[];
values?: {
name?: string;
operation?: string | string[];
format?: WebixCallback;
color?: string;
}[];
filters?: any[];
groupBy?: string;
}
type WebixJetAppWrapper = {
$$<T extends webix.ui.baseview>(name:string): T;
callEvent(name: string, params?: any[]): boolean;
attachEvent(name: string, handler: any): void;
copyConfig(source:any, target:any, config?: any): any;
getRouter(): any;
getService(name: string): any;
setService(name: string, handler: any): void;
getSubView(name?: string): any;
getSubViewInfo(name?: string): any;
getUrl(): {
page: string;
params: { [name:string]: string };
view?: any;
isNew?: boolean;
}[];
getUrlString(): string;
getRoot(): any;
contains(view: obj): boolean;
createFromURL(chunk:any) : Promise<any>;
createView(config: any, name?: string, params?: any): any;
render(container?: any, url?: any, config?: any): Promise<any>;
refresh(): Promise<any>;
require(type: string, url: string): any;
show(path: string, config?: any): Promise<any>;
use(plugin: any, config?: any): void;
setParam(id:string, value:any, url?:boolean): any;
getParam(id:string, parent:boolean): any;
getParentView(): any;
error(name:string, data:any[]): any;
destructor(): void;
on(obj: any, name:string, code:any): any;
app: WebixJetAppWrapper | undefined;
config: any;
ready: Promise<any>;
webix: any;
}
export function ajax(url: string, params?: any):Promise<any>;
export function ajax():webix.Ajax;
export function debug(params?: { events?: boolean; size?: boolean; }):void;
export function $$<T extends webix.ui.baseview>(id: string|Event|HTMLElement):T;
interface Ajax {
bind(master:any):Ajax;
del(url:string, params?:any, callback?:WebixCallback):Promise<any>;
get(url:string, params?:any, callback?:WebixCallback):Promise<any>;
getXHR():XMLHttpRequest;
headers(values:obj):Ajax;
post(url:string, params?:any, callback?:WebixCallback):Promise<any>;
put(url:string, params?:any, callback?:WebixCallback):Promise<any>;
response(type:string):Ajax;
stringify(data:any):string;
sync():Ajax;
master:obj;
}
interface clipbuffer {
destructor():void;
focus():void;
init():void;
set(text:string):void;
}
interface color {
hexToDec(hex:string):number;
hsvToRgb(h:number, s:number, v:number):any[];
rgbToHex(rgb:string|(string|number)[]):string;
rgbToHsv(r:number, g:number, b:number):any[];
toHex(number:number, length?:number):string;
toRgb(rgb:string):any[];
}
type DelimiterConfig = {
rows:string;
cols:string;
}
interface csv {
parse(text:string, delimiter?:DelimiterConfig):any[];
stringify(data:any[], delimiter?:DelimiterConfig):string;
delimiter:DelimiterConfig;
escape:boolean;
}
interface WebixEditor {
focus():void;
getInputNode():HTMLElement;
getValue():string;
render():HTMLElement;
setValue(value?:string):void;
}
interface WebixEditorObject extends WebixEditor {
node: HTMLElement,
value: any;
config: obj;
}
interface textEditor extends WebixEditor {
setValue(value:string):void;
}
interface checkboxEditor extends WebixEditor {
setValue(value:string):void;
}
interface selectEditor extends WebixEditor {
setValue(value:string):void;
}
interface popupEditor extends WebixEditor {
createPopup():obj|(string|number);
destroy():void;
getPopup():obj;
linkInput(node:HTMLElement):void;
popupInit(popup?:obj):void;
setValue(value:string):void;
popupType:string;
}
interface inlineCheckboxEditor extends WebixEditor {
setValue():void;
}
interface inlineTextEditor extends WebixEditor {
setValue():void;
}
interface comboEditor extends textEditor {
afterRender():void;
getPopup():obj;
showPopup():void;
}
interface passwordEditor extends textEditor {
toggleInput():void;
}
interface colorEditor extends popupEditor {
popupInit(popup:obj):void;
popupType:"color";
}
interface dateEditor extends popupEditor {
popupInit(popup:obj):void;
popupType:"date";
}
interface multiselectEditor extends popupEditor {
popupInit(popup:obj):void;
popupType:"multiselect";
}
interface richselectEditor extends popupEditor {
popupInit(popup:obj):void;
popupType:"richselect";
}
interface excelDateEditor extends textEditor {
afterRender():void;
createPopup():obj;
getPopup():obj;
getValue():string;
showPopup():void;
updateCalendar(value: any):void;
}
interface ssRichselectEditor extends richselectEditor {
getFormat(value:any): obj;
}
interface ganttNumEditor extends textEditor {}
type editors = {
checkbox: checkboxEditor;
color: colorEditor;
combo: comboEditor;
date: dateEditor;
"inline-checkbox": inlineCheckboxEditor;
"inline-text": inlineTextEditor;
multiselect: multiselectEditor;
password: passwordEditor;
popup: popupEditor;
richselect: richselectEditor;
select: selectEditor;
text: textEditor;
[name:string]: WebixEditor;
} & {
excel_date?: excelDateEditor;
gantt_numeditor?: ganttNumEditor;
ss_richselect?: ssRichselectEditor;
$popup: obj;
}
type EnvContext = {
target: HTMLElement;
x: number;
y: number;
time: Date;
}
interface env {
$customScroll?: boolean;
cdn: string;
codebase: string;
fastClick: boolean;
https: boolean;
isAndroid?: boolean;
isChromium?: boolean;
isFF?: boolean;
isIE?: boolean;
isIOS?: boolean;
isMac?: boolean;
isSafari?: boolean;
maxHTMLElementSize?: number;
mobile?: boolean;
mouse: {
context(event: Event): EnvContext;
down: "mousedown";
move: "mousemove";
up: "mouseup";
};
passiveEventListeners: boolean;
pringMargin: number;
printPPI: number;
scrollSize: number;
strict: boolean;
svg: boolean;
svganimation: boolean;
touch?: {
context(event: Event): EnvContext;
down: "touchstart";
move: "touchmove";
up: "touchend";
};
transform: string;
transition: string;
transitionDuration: string;
transitionEnd: string;
translate: string;
zIndexBase: number;
}
interface fullscreen {
set(view:any, config?:{css?:string; head?:boolean|string|obj}):void;
exit():void;
}
interface html {
addCss(node:HTMLElement, name:string):void;
addMeta(name:string, value:string):void;
addStyle(css:string, group_name?:string):void;
allowSelect():void;
create(name:string, attrs?:obj, html?:string):HTMLElement;
createCss(data:obj):string;
denySelect():void;
download(obj:any, name:string):void;
getSelectionRange(node:HTMLElement):{
start:number;
end:number;
};
getTextSize(text:(string|string[]), css?:string, width?:number):SizeInfo;
getValue(node:HTMLElement):string;
index(node:HTMLElement):number;
insertBefore(node:HTMLElement, before:HTMLElement, rescue?:HTMLElement):void;
locate(ev:Event|HTMLElement, name:string):string;
offset(node:HTMLElement):PositionInfo & SizeInfo;
pos(ev:Event):PositionInfo;
posRelative(ev:Event):PositionInfo;
preventEvent(ev:Event):boolean;
remove(node:HTMLElement|HTMLElement[]):void;
removeCss(node:HTMLElement, name:string):void;
removeStyle(group_name?:string):void;
setSelectionRange(node:HTMLElement, start?:number, end?:number):void;
stopEvent(ev:Event):boolean;
triggerEvent(node:HTMLElement,type:string,name:string):void;
}
interface i18n {
dateFormatDate(date:string):Date;
dateFormatStr(date:Date):string;
fullDateFormatDate(date:string):Date;
fullDateFormatStr(date:Date):string;
intFormat(num:number):string;
longDateFormatDate(date:string):Date;
longDateFormatStr(date:Date):string;
numberFormat(number:number):string;
parseFormatDate(date:string):Date;
parseFormatStr(date:Date):string;
parseTimeFormatDate(date:string):Date;
parseTimeFormatStr(date:Date):string;
priceFormat(number:number):string;
setLocale(name:string):void;
timeFormatDate(time:string):Date;
timeFormatStr(date:Date):string;
PDFviewer: {
automaticZoom: string;
actualSize: string;
pageFit: string;
pageWidth: string;
pageHeight: string;
enterPassword: string;
passwordError: string;
of: string;
};
am: string[];
aria: {
calendar: string;
increaseValue: string;
decreaseValue: string;
navMonth: string[];
navYear: string[];
navDecade: string[];
dateFormat: string;
monthFormat: string;
yearFormat: string;
hourFormat: string;
minuteFormat: string;
removeItem: string;
pages: string[];
page: string;
headermenu: string;
openGroup: string;
closeGroup: string;
closeTab: string;
showTabs: string;
resetTreeMap: string;
navTreeMap: string;
nextTab: string;
prevTab: string;
multitextSection: string;
multitextextraSection: string;
showChart: string;
hideChart: string;
resizeChart: string;
};
calendar: {
monthFull: string[];
monthShort: string[];
dayFull: string[];
dayShort: string[];
hours: string;
minutes: string;
done: string;
clear: string;
today: string;
};
combo: {
select: string;
selectAll: string;
unselectAll: string;
};
comments: {
send: string;
confirmMessage: string;
edit: string;
remove: string;
placeholder: string;
moreComments: string;
};
dataExport: {
of: string;
page: string;
};
dateFormat: string;
dbllist: {
selectAll: string;
selectOne: string;
deselectAll: string;
deselectOne: string;
};
decimalDelimiter: string;
decimalSize: number;
fileSize: string[];
filter: {
less: string;
lessOrEqual: string;
greater: string;
greaterOrEqual: string;
contains: string;
notContains: string;
equal: string;
notEqual: string;
beginsWith: string;
notBeginsWith: string;
endsWith: string;
notEndsWith: string;
between: string;
notBetween: string;
};
fullDateFormat: string;
groupDelimiter: string;
groupSize: number;
hint?: {
next: string;
prev: string;
last: string;
};
kanban?: {
copy: string;
dnd: string;
remove: string;
save: string;
confirm: string;
editor: {
add: string;
assign: string;
attachments: string;
color: string;
edit: string;
status: string;
tags: string;
text: string;
upload: string;
};
menu: {
copy: string;
edit: string;
remove: string;
};
};
locale: string;
locales: any;
longDateFormat: string;
message: {
ok: string;
cancel: string;
};
pager: {
first: string;
last: string;
next: string;
prev: string;
};
parseFormat: string;
parseTimeFormat: string;
pm: string[];
price: string;
priceSettings: {
groupDelimiter: string;
groupSize: number;
decimalDelimiter: string;
decimalSize: number;
};
richtext: {
underline: string;
bold: string;
italic: string;
};
spreadsheet?: {
labels: {
common: string;
currency: string;
number: string;
percent: string;
date: string;
string: string;
"custom-format": string;
"decimal-places": string;
separator: string;
negative: string;
"currency-symbol": string;
"date-format": string;
"format-docs": string;
"undo-redo": string;
font: string;
text: string;
cell: string;
align: string;
format: string;
column: string;
borders: string;
px: string;
apply: string;
cancel: string;
save: string;
sheet: string;
"conditional-format": string;
condition: string;
"conditional-style": string;
"conditional-operator": string;
"conditional-between": string;
"conditional-not-equal": string;
range: string;
"range-title": string;
"range-name": string;
"range-cells": string;
"range-scope": string;
"range-global": string;
"image-or": string;
"image-title": string;
"image-upload": string;
"image-url": string;
"sparkline-title": string;
"sparkline-type": string;
"sparkline-range": string;
"sparkline-color": string;
"sparkline-positive": string;
"sparkline-negative": string;
"format-title": string;
"format-pattern": string;
"dropdown-empty": string;
"dropdown-title": string;
"dropdown-range": string;
ok: string;
"import-title": string;
"import-not-support": string;
"export-title": string;
"export-name": string;
"export-all-sheets": string;
"link-title": string;
"link-name": string;
"link-url": string;
"image": string;
"add-image-cell": string;
"add-image-top": string;
graph: string;
"add-sparkline": string;
"add-chart": string;
display: string;
value: string;
"range-remove-confirm": string;
"sheet-remove-confirm": string;
"merge-cell-confirm": string;
"error-range": string;
print: string;
"print-title": string;
"print-settings": string;
"print-paper": string;
"print-layout": string;
sheets: string;
selection: string;
borderless: string;
"sheet-names": string;
"skip-rows": string;
margin: string;
"page-letter": string;
"page-a4": string;
"page-a3": string;
"page-width": string;
"page-actual": string;
"page-portrait": string;
"page-landscape": string;
"external-ui": string;
comment: string;
width: string;
height: string;
"fit-content": string;
"default-size": string;
"edit-view": string;
"remove-view": string;
"chart-edit": string;
"chart-common": string;
"chart-series": string;
"chart-extras": string;
"export-view": string;
"export-view-pdf": string;
"export-view-png": string;
"export-view-excel": string;
"line-chart": string;
"area-chart": string;
"bar-chart": string;
"donut-chart": string;
"pie-chart": string;
"radar-chart": string;
"spline-chart": string;
"splinearea-chart": string;
"chart-scale": string;
"chart-x-axis": string;
"chart-y-axis": string;
"chart-lines": string;
"chart-scale-color": string;
"chart-xAxis-title": string;
"chart-yAxis-title": string;
"chart-col-xAxis": string;
"chart-col-yAxis": string;
"chart-row-xAxis": string;
"chart-row-yAxis": string;
"chart-xAxis-range": string;
"chart-yAxis-origin": string;
"chart-yAxis-start": string;
"chart-yAxis-end": string;
"chart-yAxis-step": string;
"chart-yAxis-note": string;
"chart-legend": string;
"chart-row-legend": string;
"chart-col-legend": string;
"chart-legend-range": string;
"chart-legend-align": string;
"chart-legend-left": string;
"chart-legend-right": string;
"chart-legend-center": string;
"chart-legend-valign": string;
"chart-legend-top": string;
"chart-legend-middle": string;
"chart-legend-bottom": string;
"chart-item": string;
"stacked-chart": string;
"horizontal-chart": string;
"chart-range": string;
"chart-series-color": string;
"add-line": string;
"chart-type": string;
"chart-tooltip": string;
"chart-label": string;
"chart-data-from": string;
"chart-columns": string;
"chart-rows": string;
"chart-markers": string;
"chart-markers-square": string;
"chart-markers-triangle": string;
"chart-markers-diamond": string;
"chart-markers-round": string;
"chart-pie-3d": string;
"chart-radar-circle": string;
};
tooltips: {
color: string;
background: string;
"font-family": string;
"font-size": string;
"text-align": string;
"vertical-align": string;
borders: string;
"borders-no": string;
"borders-left": string;
"borders-top": string;
"borders-right": string;
"borders-bottom": string;
"borders-all": string;
"borders-outer": string;
"borders-top-bottom": string;
"borders-color": string;
"align-left": string;
"align-center": string;
"align-right": string;
"align-top": string;
"align-middle": string;
"align-bottom": string;
span: string;
wrap: string;
undo: string;
redo: string;
format: string;
"increase-decimals": string;
"decrease-decimals": string;
"font-weight": string;
"font-style": string;
underline: string;
strike: string;
"hide-gridlines": string;
"hide-headers": string;
"show-formulas": string;
"create-filter": string;
"freeze-columns": string;
"add-range": string;
conditional: string;
"add-sheet": string;
"lock-cell": string;
clear: string;
"add-link": string;
row: string;
column: string;
sheet: string;
"add-image": string;
"add-sparkline": string;
"add-comment": string;
"increase-indent": string;
"decrease-indent": string;
};
menus: {
"remove-sheet": string;
"rename-sheet": string;
file: string;
new: string;
"new-sheet": string;
"excel-import": string;
"excel-export": string;
sheet: string;
"copy-sheet": string;
edit: string;
undo: string;
redo: string;
columns: string;
"insert-column": string;
"delete-column": string;
"show-column": string;
"hide-column": string;
"resize-column": string;
rows: string;
"insert-row": string;
"delete-row": string;
"show-row": string;
"hide-row": string;
"resize-row": string;
insert: string;
"conditional-format": string;
common: string;
text: string;
clear: string;
"clear-value": string;
"clear-style": string;
"clear-conditional-formats": string;
"clear-dropdown-editors": string;
"clear-comments": string;
"clear-all": string;
image: string;
"add-image-cell": string;
"add-image-top": string;
graph: string;
"add-sparkline": string;
"add-chart": string;
data: string;
"add-link": string;
"add-range": string;
sort: string;
"sort-asc": string;
"sort-desc": string;
view: string;
"freeze-columns": string;
"freeze-rows": string;
"hide-gridlines": string;
"hide-headers": string;
"show-formulas": string;
"create-filter": string;
"add-dropdown": string;
"lock-cell": string;
print: string;
"add-comment": string;
cut: string;
copy: string;
paste: string;
"special-paste": string;
"paste-values": string;
"paste-formulas": string;
"paste-styles": string;
"paste-conditions": string;
};
table: {
"math-error": string;
"math-ref-error": string;
"format-error": string;
};
liveEditor: {
edit: string;
};
formats: {
dateFormat: string;
timeFormat: string;
longDateFormat: string;
fullDateFormat: string;
parseDateTime: string;
parseDate: string;
currencies: string[];
};
};
timeFormat: string;
timeboard: {
seconds: string;
};
}
interface promise {
new (executor: (resolve: (value? : any) => void, reject: (reason? :any) => void) => void): Promise<any>;
all(promises:Promise<any>[]): Promise<any>;
defer(): Omit<webix.promise, "defer" | "race" | "all"> & Promise<any>;
race(promises:Promise<any>[]): Promise<any>;
reject(value:any): Promise<any>;
resolve(value:any): Promise<any>;
}
interface rules {
isChecked(value:any):boolean;
isEmail(value:any):boolean;
isNotEmpty(value:any):boolean;
isNumber(value:any):boolean;
}
interface numberFilter {
greater(a:any, b:any):boolean;
less(a:any, b:any):boolean;
greaterOrEqual(a:any, b:any):boolean;
lessOrEqual(a:any, b:any):boolean;
equal(a:any, b:any):boolean;
notEqual(a:any, b:any):boolean;
contains(a:any, b:any):boolean;
notContains(a:any, b:any):boolean;
}
interface textFilter {
equal(a:any, b:any):boolean;
notEqual(a:any, b:any):boolean;
contains(a:any, b:any):boolean;
notContains(a:any, b:any):boolean;
beginsWith(a:any, b:any):boolean;
notBeginsWith(a:any, b:any):boolean;
endsWith(a:any, b:any):boolean;
notEndsWith(a:any, b:any):boolean;
}
interface dateFilter {
greater(a: any, b: any):boolean;
less(a: any, b: any):boolean;
greaterOrEqual(a: any, b: any):boolean;
lessOrEqual(a: any, b: any):boolean;
equal(a: any, b: any):boolean;
notEqual(a: any, b: any):boolean;
between(a: any, b: any):boolean;
notBetween(a: any, b: any):boolean;
}
interface filters {
date:dateFilter;
number:numberFilter;
text:textFilter;
}
interface WebixStorage {
get(name:string):any;
put(name:string, value:any):void;
remove(name:string):void;
}
interface cookie extends WebixStorage {
clear(domain?:string):void;
getRaw(name:string):string;
put(name:string, value:any, domain?:string, expires?:Date):void;
remove(name:string, domain?:string):void;
}
interface local extends WebixStorage {
clear():void;
}
interface session extends WebixStorage {
clear():void;
}
interface storage {
cookie:webix.cookie;
local:webix.local;
session:webix.session;
prefix(scope:string, storage:webix.cookie|webix.local|webix.session):WebixStorage;
}
interface WebixSkinLayoutConfig {
space: number;
wide: number;
clean: number;
head: number;
line: number;
toolbar: number;
form: number;
accordion: number;
}
interface WebixSkinConfig {
topLayout: string;
barHeight: number;
tabbarHeight: number;
sidebarTitleHeight: number;
rowHeight: number;
toolbarHeight: number;
listItemHeight: number;
inputHeight: number;
buttonHeight: number;
inputPadding: number;
menuHeight: number;
labelTopHeight: number;
propertyItemHeight: number;
timelineItemHeight: number;
unitHeaderHeight: number;
inputSpacing: number;
borderWidth: number;
sliderHandleWidth: number;
sliderPadding: number;
sliderBorder: number;
vSliderPadding: number;
vSliderHeight: number;
switchHeight: number;
switchWidth: number;
layoutMargin: WebixSkinLayoutConfig;
layoutPadding: WebixSkinLayoutConfig;
tabMargin: number;
tabOffset: number;
tabBottomOffset: number;
tabTopOffset: number;
tabBorder: boolean;
customCheckbox: boolean;
customRadio: boolean;
sidebarMarkAll: boolean;
popupNoPoint: boolean;
borderlessPopup: boolean;
popupPadding: number;
dataPadding: number;
calendarWeekHeaderHeight: number;
padding: number;
accordionType: string;
optionHeight: number;
timelineColor: string;
backColor: string;
dataBorderColor: string;
colorPadding: number;
}
interface skin {
set(skin: string): void;
$active: WebixSkinConfig;
$name: string;
compact: WebixSkinConfig;
contrast: WebixSkinConfig;
dark: WebixSkinConfig;
flat: WebixSkinConfig;
material: WebixSkinConfig;
mini: WebixSkinConfig;
willow: WebixSkinConfig;
}
export namespace message {
function hide(content: any):void;
function hideAll():void;
const area:HTMLElement;
const expire:number;
const pull:obj;
const timers:any;
const position:string;
}
export namespace modalbox {
function hide(content: any):void;
function hideAll():void;
const pull:{
[modalId: string]: WebixMessageConfig
};
const order:string[];
}
type ProxyName = "binary" | "GraphQL" | "json" | "post" | "rest" | "debug" | string;
type ProxyType<T> =
T extends "binary" ? binaryProxy :
T extends "GraphQL" ? GraphQLProxy :
T extends "json" ? jsonProxy :
T extends "post" ? postProxy :
T extends "rest" ? restProxy :
T extends "debug" ? debugProxy :
WebixProxy;
interface binaryProxy {
$proxy:boolean;
load():Promise<any>;
}
interface GraphQLProxy {
$proxy:boolean;
url?:string;
load(view:obj):Promise<any>;
save(data:any):Promise<any>;
}
interface jsonProxy {
$proxy:boolean;
load():Promise<any>;
save(view:obj, update:obj):Promise<any>;
}
interface postProxy {
$proxy:boolean;
load(view:obj, params:obj):Promise<any>;
}
interface restProxy {
$proxy:boolean;
save(view:obj, update:obj):Promise<any>;
}
interface debugProxy {
$proxy:boolean;
load():void;
save(view:obj, update:obj, dp:obj):void;
}
export namespace proxy {
const binary:binaryProxy;
const GraphQL:GraphQLProxy;
const json:jsonProxy;
const post:postProxy;
const rest:restProxy;
const debug:debugProxy;
}
export function alert(text:string|WebixAlertConfig, type?:string|WebixCallback, callback?:WebixCallback):Promise<any>;
export function animate(html_element:HTMLElement, animation:WebixAnimate):void;
export function attachEvent(type:string, functor:WebixCallback, id?:string):string|number;
export function bind(code:WebixCallback, master:obj):WebixCallback;
export function blockEvent():void;
export function callEvent(name:string, params:any[]):boolean;
export function clone(source:obj):obj;
export function confirm(text:string|WebixConfirmConfig, type?:string|WebixCallback, callback?:WebixCallback):Promise<any>;
export function copy(source:obj|any[]):any;
export function delay(code:WebixCallback, owner?:obj, params?:any[], delay?:number):number;
export function detachEvent(id:string):void;
export function dp(name:string|webix.ui.baseview|WebixDataProcessorFullConfig):DataProcessor;
export function editStop():void;
export function event(node:EventTarget|string, event:string, handler:WebixCallback, context?:WebixEventContext):string|number;
export function eventRemove(id:string|number):void;
export function exec(code:string):any;
export function extend<T, S>(target:T, source:S, overwrite?:boolean):T & S;
export function hasEvent(name:string):boolean;
export function isArray(check:any):boolean;
export function isDate(check:any):boolean;
export function isUndefined(check:any):boolean;
export function mapEvent(map:WebixEventMap):void;
export function message(content:string|WebixMessageConfig, type?:string, expire?:number, id?:string|number):string;
export function modalbox(text:string|WebixModalboxConfig, type?:string|WebixCallback, callback?:WebixCallback):Promise<any>;
export function once(code:WebixCallback):void;
export function print(view:webix.ui.baseview|string|number, options?:obj):void;
export function prompt(text:string|obj, type?:string|WebixCallback, callback?:WebixCallback):Promise<any>;
export function proto(target:obj, ...mixins:any[]):obj;
export function protoUI(target:obj, ...mixins:any[]):obj;
export function proxy<T extends ProxyName>(type:T, source:string, config?:obj):ProxyType<T>;
export function ready(code:WebixCallback):void;
export function remote():void;
export function require(url:string|any[]|obj, callback?:WebixCallback, master?:obj):Promise<any>;
export function send(url:string, values:obj, method:string, target:string):v