diff --git a/types/alexa-sdk/alexa-sdk-tests.ts b/types/alexa-sdk/alexa-sdk-tests.ts index cbf1ba70a3..1454309b93 100644 --- a/types/alexa-sdk/alexa-sdk-tests.ts +++ b/types/alexa-sdk/alexa-sdk-tests.ts @@ -1,12 +1,12 @@ import * as Alexa from "alexa-sdk"; -const handler = (event: Alexa.RequestBody, context: Alexa.Context, callback: () => void) => { +const handler = (event: Alexa.RequestBody, context: Alexa.Context, callback: () => void) => { let alexa = Alexa.handler(event, context); alexa.registerHandlers(handlers); alexa.execute(); }; -let handlers: Alexa.Handlers = { +let handlers: Alexa.Handlers = { 'LaunchRequest': function() { this.emit('SayHello'); }, diff --git a/types/alexa-sdk/index.d.ts b/types/alexa-sdk/index.d.ts index 256d3fee9a..24baccf484 100644 --- a/types/alexa-sdk/index.d.ts +++ b/types/alexa-sdk/index.d.ts @@ -6,14 +6,14 @@ // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 -export function handler(event: RequestBody, context: Context, callback?: (err: any, response: any) => void ): AlexaObject; +export function handler(event: RequestBody, context: Context, callback?: (err: any, response: any) => void ): AlexaObject; export function CreateStateHandler(state: string, obj: any): any; export let StateString: string; export type ConfirmationStatuses = "NONE" | "DENIED" | "CONFIRMED"; export type DialogStates = "STARTED" | "IN_PROGRESS" | "COMPLETED"; -export interface AlexaObject extends Handler { +export interface AlexaObject extends Handler { _event: any; _context: any; _callback: any; @@ -22,26 +22,26 @@ export interface AlexaObject extends Handler { response: any; dynamoDBTableName: any; saveBeforeResponse: boolean; - registerHandlers: (...handlers: Handlers[]) => any; + registerHandlers: (...handlers: Array>) => any; execute: () => void; } -export interface Handlers { - [intent: string]: (this: Handler) => void; +export interface Handlers { + [intent: string]: (this: Handler) => void; } -export interface Handler { +export interface Handler { on: any; emit(event: string, ...args: any[]): boolean; emitWithState: any; state: any; handler: any; - event: RequestBody; + event: RequestBody; attributes: any; context: any; name: any; isOverriden: any; - t: (token: string) => void; + t: (token: string, ...args: any[]) => void; } export interface Context { @@ -55,10 +55,10 @@ export interface Context { awsRequestId: string; } -export interface RequestBody { +export interface RequestBody { version: string; session: Session; - request: LaunchRequest | IntentRequest | SessionEndedRequest; + request: T; } export interface Session { @@ -75,36 +75,37 @@ export interface SessionApplication { export interface SessionUser { userId: string; - accessToken: string; + accessToken?: string; } export interface LaunchRequest extends Request { } export interface IntentRequest extends Request { - dialogState: DialogStates; - intent: Intent; -} - -export interface SlotValue { - confirmationStatus: ConfirmationStatuses; - name: string; - value?: any; -} - -export interface Intent { - confirmationStatus: ConfirmationStatuses; - name: string; - slots: Record; + dialogState?: DialogStates; + intent?: Intent; } export interface SessionEndedRequest extends Request { - reason: string; + reason?: string; } export interface Request { type: "LaunchRequest" | "IntentRequest" | "SessionEndedRequest"; requestId: string; - timeStamp: string; + timestamp: string; + locale?: string; +} + +export interface SlotValue { + confirmationStatus?: ConfirmationStatuses; + name: string; + value?: any; +} + +export interface Intent { + confirmationStatus?: ConfirmationStatuses; + name: string; + slots: Record; } export interface ResponseBody { diff --git a/types/alexa-sdk/tslint.json b/types/alexa-sdk/tslint.json index 0c1ca3b5b4..78f1939ba2 100644 --- a/types/alexa-sdk/tslint.json +++ b/types/alexa-sdk/tslint.json @@ -4,6 +4,7 @@ "object-literal-key-quote": false, "no-empty-interface": false, "prefer-method-signature": false, - "object-literal-key-quotes": false + "object-literal-key-quotes": false, + "no-any": false } } diff --git a/types/arcgis-js-api/index.d.ts b/types/arcgis-js-api/index.d.ts index d46dea1b81..115d270add 100644 --- a/types/arcgis-js-api/index.d.ts +++ b/types/arcgis-js-api/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for ArcGIS API for JavaScript 4.3 +// Type definitions for ArcGIS API for JavaScript 4.4 // Project: http://js.arcgis.com // Definitions by: Esri // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -51,179 +51,1349 @@ declare namespace __esri { protected _set(propertyName: string, value: T): this; } - export interface Text { - type: string; - text: string; + export interface PromisedWatchHandle extends IPromise { + remove(): void; + } + export type ItemCallback = (item: any, index: number) => void; + + export type ItemCompareCallback = (firstItem: any, secondItem: any) => number; + + export type ItemMapCallback = (item: any, index: number) => any; + + export type ItemReduceCallback = (previousValue: any, currentValue: any, index: number) => any; + + export type ItemTestCallback = (item: any, index: number) => boolean; + + export interface PortalItemFetchRelatedItemsParams { + relationshipType: string; + direction?: string; } - export interface Media { - type: string; - mediaInfos: any[]; + export interface PortalItemUpdateParams { + data: string | any; } - export interface Fields { - type: string; - fieldInfos: any[]; + export interface PortalUserAddItemParams { + item: PortalItem; + data?: string | any; + folder?: PortalFolder; } - export interface Attachments { + export interface PortalUserFetchItemsParams { + folder: PortalFolder; + num: number; + start: number; + } + + export interface PortalFeaturedGroups { + owner: string; + title: string; + } + + export interface GroundQueryElevationOptions { + returnSampleInfo?: boolean; + noDataValue?: number; + } + + export interface PopupTemplateExpressionInfos { + name: string; + title?: string; + expression: string; + returnType?: string; + } + + export interface PopupTemplateFieldInfos { + fieldName: string; + format?: PopupTemplateFieldInfosFormat; + isEditable?: boolean; + label?: string; + stringFieldOption?: string; + tooltip?: string; + visible?: boolean; + } + + export interface PopupTemplateFieldInfosFormat { + dateFormat?: string; + digitSeparator?: boolean; + places?: number; + } + + export interface FeatureLayerApplyEditsEdits { + addFeatures?: Graphic[]; + updateFeatures?: Graphic[]; + deleteFeatures?: Graphic[] | any[]; + } + + export interface FeatureLayerCapabilities { + data: FeatureLayerCapabilitiesData; + editing: FeatureLayerCapabilitiesEditing; + operations: FeatureLayerCapabilitiesOperations; + query: FeatureLayerCapabilitiesQuery; + queryRelated: FeatureLayerCapabilitiesQueryRelated; + } + + export interface FeatureLayerCapabilitiesData { + supportsAttachment: boolean; + supportsM: boolean; + supportsZ: boolean; + } + + export interface FeatureLayerCapabilitiesEditing { + supportsDeleteByAnonymous: boolean; + supportsDeleteByOthers: boolean; + supportsGeometryUpdate: boolean; + supportsGlobalId: boolean; + supportsRollbackOnFailure: boolean; + supportsUpdateByAnonymous: boolean; + supportsUpdateByOthers: boolean; + supportsUpdateWithoutM: boolean; + supportsUploadWithItemId: boolean; + } + + export interface FeatureLayerCapabilitiesOperations { + supportsAdd: boolean; + supportsDelete: boolean; + supportsUpdate: boolean; + supportsEditing: boolean; + supportsCalculate: boolean; + supportsQuery: boolean; + supportsValidateSql: boolean; + } + + export interface FeatureLayerCapabilitiesQuery { + supportsCentroid: boolean; + supportsDistance: boolean; + supportsDistinct: boolean; + supportsExtent: boolean; + supportsGeometryProperties: boolean; + supportsOrderBy: boolean; + supportsPagination: boolean; + supportsQuantization: boolean; + supportsResultType: boolean; + supportsSqlExpression: boolean; + supportsStandardizedQueriesOnly: boolean; + supportsStatistics: boolean; + } + + export interface FeatureLayerCapabilitiesQueryRelated { + supportsCount: boolean; + supportsOrderBy: boolean; + supportsPagination: boolean; + } + + export interface FeatureLayerElevationInfo { + mode: string; + offset?: number; + } + + export interface FeatureLayerFeatureReduction { type: string; } + export interface FeatureLayerGetFieldDomainOptions { + feature: Graphic; + } + + export interface FeatureLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type FeatureLayerLayerviewCreateEventHandler = (event: FeatureLayerLayerviewCreateEvent) => void; + + export interface FeatureLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type FeatureLayerLayerviewDestroyEventHandler = (event: FeatureLayerLayerviewDestroyEvent) => void; + + export interface GraphicsLayerElevationInfo { + mode: string; + offset?: number; + } + + export interface GraphicsLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type GraphicsLayerLayerviewCreateEventHandler = (event: GraphicsLayerLayerviewCreateEvent) => void; + + export interface GraphicsLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type GraphicsLayerLayerviewDestroyEventHandler = (event: GraphicsLayerLayerviewDestroyEvent) => void; + + export interface LayerFromArcGISServerUrlParams { + url: string; + properties?: any; + } + + export interface LayerFromPortalItemParams { + portalItem: PortalItem; + } + + export interface FeatureTemplateThumbnail { + contentType: any; + imageData: string; + height: number; + width: number; + } + + export interface LabelClassLabelExpressionInfo { + value?: string; + } + + export interface LabelSymbol3DVerticalOffsetProperties { + screenLength?: number; + minWorldLength?: number; + maxWorldLength?: number; + } + export interface LabelSymbol3DVerticalOffset extends Accessor { + screenLength: number; + minWorldLength?: number; + maxWorldLength?: number; + } + + export interface QueryQuantizationParameters { + extent?: Extent; + mode?: string; + originPosition?: string; + tolerance?: number; + } + + export interface ViewPadding { + left?: number; + top?: number; + right?: number; + bottom?: number; + } + + export interface WebMapSourceVersion { + major: number; + minor: number; + } + + export interface WebSceneSaveAsOptions { + folder?: PortalFolder; + ignoreUnsupported?: boolean; + } + + export interface WebSceneSaveOptions { + ignoreUnsupported?: boolean; + } + + export interface WebSceneSourceVersion { + major: number; + minor: number; + } + + export interface WebSceneUpdateFromOptions { + environmentExcluded?: boolean; + viewpointExcluded?: boolean; + } + + export type EventHandler = (event: any) => void; + + export interface SceneViewDragEventOrigin { + x: number; + y: number; + } + + export interface SceneViewClickEvent { + mapPoint: Point; + x: number; + y: number; + button: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewClickEventHandler = (event: SceneViewClickEvent) => void; + + export interface SceneViewDoubleClickEvent { + mapPoint: Point; + x: number; + y: number; + button: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewDoubleClickEventHandler = (event: SceneViewDoubleClickEvent) => void; + + export interface SceneViewDragEvent { + action: string; + x: number; + y: number; + origin: SceneViewDragEventOrigin; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewDragEventHandler = (event: SceneViewDragEvent) => void; + + export type EasingFunction = (t: number, duration: number) => number; + + export interface SceneViewHoldEvent { + mapPoint: Point; + x: number; + y: number; + button: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewHoldEventHandler = (event: SceneViewHoldEvent) => void; + + export interface SceneViewKeyDownEvent { + repeat: boolean; + key: string; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewKeyDownEventHandler = (event: SceneViewKeyDownEvent) => void; + + export interface SceneViewKeyUpEvent { + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewKeyUpEventHandler = (event: SceneViewKeyUpEvent) => void; + + export interface SceneViewLayerviewCreateEvent { + layer: Layer; + layerView: LayerView; + } + + export type SceneViewLayerviewCreateEventHandler = (event: SceneViewLayerviewCreateEvent) => void; + + export interface SceneViewLayerviewDestroyEvent { + layer: Layer; + layerView: LayerView; + } + + export type SceneViewLayerviewDestroyEventHandler = (event: SceneViewLayerviewDestroyEvent) => void; + + export interface SceneViewMouseWheelEvent { + x: number; + y: number; + deltaY: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewMouseWheelEventHandler = (event: SceneViewMouseWheelEvent) => void; + + export interface SceneViewPointerDownEvent { + pointerId: number; + pointerType: string; + x: number; + y: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewPointerDownEventHandler = (event: SceneViewPointerDownEvent) => void; + + export interface SceneViewPointerMoveEvent { + pointerId: number; + pointerType: string; + x: number; + y: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewPointerMoveEventHandler = (event: SceneViewPointerMoveEvent) => void; + + export interface SceneViewPointerUpEvent { + pointerId: number; + pointerType: string; + x: number; + y: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type SceneViewPointerUpEventHandler = (event: SceneViewPointerUpEvent) => void; + + export interface SceneViewResizeEvent { + oldWidth: number; + oldHeight: number; + width: number; + height: number; + } + + export type SceneViewResizeEventHandler = (event: SceneViewResizeEvent) => void; + + export interface SceneViewConstraintsProperties { + altitude?: SceneViewConstraintsAltitudeProperties; + clipDistance?: SceneViewConstraintsClipDistanceProperties; + collision?: SceneViewConstraintsCollision; + tilt?: SceneViewConstraintsTiltProperties; + } + export interface SceneViewConstraints extends Accessor { + altitude?: SceneViewConstraintsAltitude; + clipDistance?: SceneViewConstraintsClipDistance; + collision?: SceneViewConstraintsCollision; + tilt?: SceneViewConstraintsTilt; + } + + export interface SceneViewConstraintsAltitudeProperties { + min?: number; + max?: number; + } + export interface SceneViewConstraintsAltitude extends Accessor { + min?: number; + max?: number; + } + + export interface SceneViewConstraintsClipDistanceProperties { + near?: number; + far?: number; + mode?: string; + } + export interface SceneViewConstraintsClipDistance extends Accessor { + near?: number; + far?: number; + mode?: string; + } + + export interface SceneViewConstraintsCollision { + enabled?: boolean; + } + + export interface SceneViewConstraintsTiltProperties { + max?: number; + mode?: string; + } + export interface SceneViewConstraintsTilt extends Accessor { + max?: number; + mode?: string; + } + + export interface SceneViewEnvironmentProperties { + lighting?: SceneViewEnvironmentLightingProperties; + atmosphereEnabled?: boolean; + atmosphere?: SceneViewEnvironmentAtmosphereProperties; + starsEnabled?: boolean; + } + export interface SceneViewEnvironment extends Accessor { + lighting?: SceneViewEnvironmentLighting; + atmosphereEnabled?: boolean; + atmosphere?: SceneViewEnvironmentAtmosphere; + starsEnabled?: boolean; + } + + export interface SceneViewEnvironmentAtmosphereProperties { + quality?: string; + } + export interface SceneViewEnvironmentAtmosphere extends Accessor { + quality?: string; + } + + export interface SceneViewEnvironmentLightingProperties { + date?: Date; + directShadowsEnabled?: boolean; + ambientOcclusionEnabled?: boolean; + cameraTrackingEnabled?: boolean; + } + export interface SceneViewEnvironmentLighting extends Accessor { + date?: Date; + directShadowsEnabled?: boolean; + ambientOcclusionEnabled?: boolean; + cameraTrackingEnabled?: boolean; + } + + export interface SceneViewGoToOptions { + animate?: boolean; + speedFactor?: number; + duration?: number; + maxDuration?: number; + easing?: string | EasingFunction; + } + + export interface SceneViewHighlightOptions { + color?: Color; + haloOpacity?: number; + fillOpacity?: number; + } + + export interface SceneViewHitTestScreenPoint { + x: number; + y: number; + } + + export interface SceneViewToMapScreenPoint { + x: number; + y: number; + } + export interface WatchHandle { remove(): void; } - export interface EachAlwaysResult { - promise: IPromise; - value: any; - error: any; + export type WatchCallback = (newValue: any, oldValue: any, propertyName: string, target: Accessor) => void; + + export interface IdentityManagerBaseGenerateTokenOptions { + serverUrl: string; + token: string; + ssl: boolean; } - export interface PausableWatchHandle { - remove(): void; - pause(): void; - resume(): void; + export interface IdentityManagerBaseGetCredentialOptions { + error?: Error; + oAuthPopupConfirmation?: boolean; + retry?: boolean; + token?: string; } - export interface FeatureEditResult { - objectId: number; - error: any; + export interface IdentityManagerBaseOAuthSignInOptions { + error: Error; + oAuthPopupConfirmation: boolean; + token: string; } + export interface IdentityManagerBaseRegisterTokenProperties { + expires?: number; + server: string; + ssl?: boolean; + token: string; + userId?: string; + } + + export interface IdentityManagerBaseSetProtocolErrorHandlerHandlerFunction { + resourceUrl: string; + serverInfo: ServerInfo; + } + + export interface IdentityManagerBaseSetRedirectionHandlerHandlerFunction { + resourceUrl: string; + returnUrlParamName: string; + serverInfo: ServerInfo; + signInPage: string; + } + + export interface IdentityManagerBaseSignInOptions { + error: Error; + } + + export interface IdentityManagerCredentialCreateEvent { + credential: Credential; + } + + export type IdentityManagerCredentialCreateEventHandler = (event: IdentityManagerCredentialCreateEvent) => void; + + export interface IdentityManagerCredentialsDestroyEvent { + } + + export type IdentityManagerCredentialsDestroyEventHandler = (event: IdentityManagerCredentialsDestroyEvent) => void; + + export type HandlerCallback = (authorizeParams: any, authorizeUrl: string, oAuthInfo: OAuthInfo, resourceUrl: string, serverInfo: ServerInfo) => void; + + export interface BaseElevationLayerFetchTileOptions { + noDataValue?: number; + } + + export interface BaseElevationLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type BaseElevationLayerLayerviewCreateEventHandler = (event: BaseElevationLayerLayerviewCreateEvent) => void; + + export interface BaseElevationLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type BaseElevationLayerLayerviewDestroyEventHandler = (event: BaseElevationLayerLayerviewDestroyEvent) => void; + + export interface CSVLayerElevationInfo { + mode: string; + offset?: number; + } + + export interface CSVLayerFeatureReduction { + type: string; + } + + export interface CSVLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type CSVLayerLayerviewCreateEventHandler = (event: CSVLayerLayerviewCreateEvent) => void; + + export interface CSVLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type CSVLayerLayerviewDestroyEventHandler = (event: CSVLayerLayerviewDestroyEvent) => void; + + export interface ElevationLayerQueryElevationOptions { + demResolution?: number | string; + returnSampleInfo?: boolean; + noDataValue?: number; + } + + export interface ElevationLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type ElevationLayerLayerviewCreateEventHandler = (event: ElevationLayerLayerviewCreateEvent) => void; + + export interface ElevationLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type ElevationLayerLayerviewDestroyEventHandler = (event: ElevationLayerLayerviewDestroyEvent) => void; + + export interface GeoRSSLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type GeoRSSLayerLayerviewCreateEventHandler = (event: GeoRSSLayerLayerviewCreateEvent) => void; + + export interface GeoRSSLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type GeoRSSLayerLayerviewDestroyEventHandler = (event: GeoRSSLayerLayerviewDestroyEvent) => void; + + export interface GroupLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type GroupLayerLayerviewCreateEventHandler = (event: GroupLayerLayerviewCreateEvent) => void; + + export interface GroupLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type GroupLayerLayerviewDestroyEventHandler = (event: GroupLayerLayerviewDestroyEvent) => void; + + export interface ImageryLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type ImageryLayerLayerviewCreateEventHandler = (event: ImageryLayerLayerviewCreateEvent) => void; + + export interface ImageryLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type ImageryLayerLayerviewDestroyEventHandler = (event: ImageryLayerLayerviewDestroyEvent) => void; + + export interface IntegratedMeshLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type IntegratedMeshLayerLayerviewCreateEventHandler = (event: IntegratedMeshLayerLayerviewCreateEvent) => void; + + export interface IntegratedMeshLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type IntegratedMeshLayerLayerviewDestroyEventHandler = (event: IntegratedMeshLayerLayerviewDestroyEvent) => void; + + export interface MapImageLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type MapImageLayerLayerviewCreateEventHandler = (event: MapImageLayerLayerviewCreateEvent) => void; + + export interface MapImageLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type MapImageLayerLayerviewDestroyEventHandler = (event: MapImageLayerLayerviewDestroyEvent) => void; + + export interface MapNotesLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type MapNotesLayerLayerviewCreateEventHandler = (event: MapNotesLayerLayerviewCreateEvent) => void; + + export interface MapNotesLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type MapNotesLayerLayerviewDestroyEventHandler = (event: MapNotesLayerLayerviewDestroyEvent) => void; + + export interface OpenStreetMapLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type OpenStreetMapLayerLayerviewCreateEventHandler = (event: OpenStreetMapLayerLayerviewCreateEvent) => void; + + export interface OpenStreetMapLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type OpenStreetMapLayerLayerviewDestroyEventHandler = (event: OpenStreetMapLayerLayerviewDestroyEvent) => void; + + export interface PointCloudLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type PointCloudLayerLayerviewCreateEventHandler = (event: PointCloudLayerLayerviewCreateEvent) => void; + + export interface PointCloudLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type PointCloudLayerLayerviewDestroyEventHandler = (event: PointCloudLayerLayerviewDestroyEvent) => void; + + export interface PointCloudLayerElevationInfo { + mode: string; + offset?: number; + } + + export interface PointCloudRendererColorModulation { + field: string; + minValue: number; + maxValue: number; + } + + export interface PointCloudRendererPointSizeAlgorithm { + type?: string; + useRealWorldSymbolSizes?: boolean; + size?: number; + scaleFactor?: number; + minSize?: number; + } + + export interface SceneLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type SceneLayerLayerviewCreateEventHandler = (event: SceneLayerLayerviewCreateEvent) => void; + + export interface SceneLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type SceneLayerLayerviewDestroyEventHandler = (event: SceneLayerLayerviewDestroyEvent) => void; + + export interface SceneLayerElevationInfo { + mode: string; + offset?: number; + } + + export interface SceneLayerFeatureReduction { + type: string; + } + + export interface StreamLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type StreamLayerLayerviewCreateEventHandler = (event: StreamLayerLayerviewCreateEvent) => void; + + export interface StreamLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type StreamLayerLayerviewDestroyEventHandler = (event: StreamLayerLayerviewDestroyEvent) => void; + + export interface StreamLayerFilter { + geometry?: Extent; + where?: string; + } + + export interface StreamLayerPurgeOptions { + displayCount: number; + age: number; + } + + export interface StreamLayerUpdateFilterFilterChanges { + geometry: Extent; + where: string; + } + + export interface TileLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type TileLayerLayerviewCreateEventHandler = (event: TileLayerLayerviewCreateEvent) => void; + + export interface TileLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type TileLayerLayerviewDestroyEventHandler = (event: TileLayerLayerviewDestroyEvent) => void; + + export interface TileLayerFetchTileOptions { + allowImageDataAccess?: boolean; + } + + export interface UnknownLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type UnknownLayerLayerviewCreateEventHandler = (event: UnknownLayerLayerviewCreateEvent) => void; + + export interface UnknownLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type UnknownLayerLayerviewDestroyEventHandler = (event: UnknownLayerLayerviewDestroyEvent) => void; + + export interface UnsupportedLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type UnsupportedLayerLayerviewCreateEventHandler = (event: UnsupportedLayerLayerviewCreateEvent) => void; + + export interface UnsupportedLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type UnsupportedLayerLayerviewDestroyEventHandler = (event: UnsupportedLayerLayerviewDestroyEvent) => void; + + export interface VectorTileLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type VectorTileLayerLayerviewCreateEventHandler = (event: VectorTileLayerLayerviewCreateEvent) => void; + + export interface VectorTileLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type VectorTileLayerLayerviewDestroyEventHandler = (event: VectorTileLayerLayerviewDestroyEvent) => void; + + export interface VectorTileLayerCurrentStyleInfo { + serviceUrl: string; + styleUrl: string; + spriteUrl: string; + glyphsUrl: string; + style: any; + layerDefinition: any; + } + + export interface WebTileLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type WebTileLayerLayerviewCreateEventHandler = (event: WebTileLayerLayerviewCreateEvent) => void; + + export interface WebTileLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type WebTileLayerLayerviewDestroyEventHandler = (event: WebTileLayerLayerviewDestroyEvent) => void; + + export interface WMSLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type WMSLayerLayerviewCreateEventHandler = (event: WMSLayerLayerviewCreateEvent) => void; + + export interface WMSLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type WMSLayerLayerviewDestroyEventHandler = (event: WMSLayerLayerviewDestroyEvent) => void; + + export interface WMSLayerFetchImageOptions { + allowImageDataAccess?: boolean; + pixelRatio?: number; + rotation?: number; + } + + export interface WMTSLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type WMTSLayerLayerviewCreateEventHandler = (event: WMTSLayerLayerviewCreateEvent) => void; + + export interface WMTSLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type WMTSLayerLayerviewDestroyEventHandler = (event: WMTSLayerLayerviewDestroyEvent) => void; + + export interface BaseDynamicLayerFetchImageOptions { + allowImageDataAccess?: boolean; + } + + export interface BaseDynamicLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type BaseDynamicLayerLayerviewCreateEventHandler = (event: BaseDynamicLayerLayerviewCreateEvent) => void; + + export interface BaseDynamicLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type BaseDynamicLayerLayerviewDestroyEventHandler = (event: BaseDynamicLayerLayerviewDestroyEvent) => void; + + export interface BaseTileLayerFetchTileOptions { + allowImageDataAccess?: boolean; + } + + export interface BaseTileLayerLayerviewCreateEvent { + view: View; + layerView: LayerView; + } + + export type BaseTileLayerLayerviewCreateEventHandler = (event: BaseTileLayerLayerviewCreateEvent) => void; + + export interface BaseTileLayerLayerviewDestroyEvent { + view: View; + layerView: LayerView; + } + + export type BaseTileLayerLayerviewDestroyEventHandler = (event: BaseTileLayerLayerviewDestroyEvent) => void; + + export interface CodedValueDomainCodedValues { + name: string; + code: string | number; + } + + export interface PixelBlockAddDataPlaneData { + pixels: number[][]; + statistics: any[]; + } + + export interface PixelBlockStatistics { + maxValue?: number; + minValue?: number; + noDataValue?: number; + } + + export interface ClassBreaksRendererClassBreakInfos { + minValue: number; + maxValue: number; + symbol: Symbol; + label?: string; + } + + export interface ClassBreaksRendererLegendOptions { + title: string; + } + + export interface UniqueValueRendererLegendOptions { + title?: string; + } + + export interface UniqueValueRendererUniqueValueInfos { + value: string | number; + symbol: Symbol; + label?: string; + } + + export interface PointCloudClassBreaksRendererColorClassBreakInfos { + minValue: number; + maxValue: number; + color: Color; + label?: string; + } + + export interface PointCloudStretchRendererStops { + value: number; + label?: string; + color: Color; + } + + export interface PointCloudUniqueValueRendererColorUniqueValueInfos { + values: number[]; + color: Color; + label?: string; + } + + export interface FillSymbol3DLayerOutline { + color: Color; + size: number; + } + + export interface IconSymbol3DLayerOutline { + color?: Color; + size?: number; + } + + export interface IconSymbol3DLayerResource { + primitive?: string; + href?: string; + } + + export interface ObjectSymbol3DLayerResource { + primitive?: string; + href?: string; + } + + export interface PointSymbol3DVerticalOffsetProperties { + screenLength?: number; + minWorldLength?: number; + maxWorldLength?: number; + } + export interface PointSymbol3DVerticalOffset extends Accessor { + screenLength: number; + minWorldLength?: number; + maxWorldLength?: number; + } + + export interface Symbol3DStyleOrigin { + styleName?: string; + styleUrl?: string; + name: string; + } + + export interface TextSymbol3DLayerFont { + family?: string; + weight?: string; + style?: string; + } + + export interface TextSymbol3DLayerHalo { + color?: Color; + size?: number; + } + + export interface LineCallout3DBorderProperties { + color?: Color; + } + export interface LineCallout3DBorder extends Accessor { + color?: Color; + } + + export interface ClosestFacilityParametersAttributeParameterValues { + attributeName: string; + parameterName: string; + value: string; + } + + export interface GeometryServiceFromGeoCoordinateStringParams { + strings: string[]; + sr: SpatialReference | string; + conversionType: string; + conversionMode?: string; + } + + export interface GeometryServiceToGeoCoordinateStringParams { + sr: SpatialReference | string; + coordinates: number[][]; + conversionType: string; + conversionMode?: string; + numOfDigits?: number; + rounding?: boolean; + addSpaces?: boolean; + } + + export interface ProjectParametersTransformation { + wkid?: number; + wkt?: string; + } + + export interface LocatorAddressToLocationsParams { + address: any; + categories: string[]; + countryCode: string; + distance: number; + forStorage: boolean; + location: Point; + magicKey: string; + maxLocations: number; + outFields: string[]; + searchExtent: Extent; + } + + export interface LocatorAddressesToLocationsParams { + addresses: any[]; + countryCode: string; + categories: string[]; + } + + export interface LocatorSuggestLocationsParams { + categories: string[]; + distance: number; + location: Point; + text: string; + } + + export interface PrintTemplateExportOptions { + width?: number; + height?: number; + dpi?: number; + } + + export interface PrintTemplateLayoutOptions { + titleText: string; + authorText: string; + copyrightText: string; + scalebarUnit: string; + legendLayers: LegendLayer[]; + customTextElements: any[]; + } + + export interface MapViewDragEventOrigin { + x: number; + y: number; + } + + export interface MapViewClickEvent { + mapPoint: Point; + x: number; + y: number; + button: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewClickEventHandler = (event: MapViewClickEvent) => void; + + export interface MapViewDoubleClickEvent { + mapPoint: Point; + x: number; + y: number; + button: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewDoubleClickEventHandler = (event: MapViewDoubleClickEvent) => void; + + export interface MapViewDragEvent { + action: string; + x: number; + y: number; + origin: MapViewDragEventOrigin; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewDragEventHandler = (event: MapViewDragEvent) => void; + + export interface MapViewHoldEvent { + mapPoint: Point; + x: number; + y: number; + button: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewHoldEventHandler = (event: MapViewHoldEvent) => void; + + export interface MapViewKeyDownEvent { + repeat: boolean; + key: string; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewKeyDownEventHandler = (event: MapViewKeyDownEvent) => void; + + export interface MapViewKeyUpEvent { + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewKeyUpEventHandler = (event: MapViewKeyUpEvent) => void; + + export interface MapViewLayerviewCreateEvent { + layer: Layer; + layerView: LayerView; + } + + export type MapViewLayerviewCreateEventHandler = (event: MapViewLayerviewCreateEvent) => void; + + export interface MapViewLayerviewDestroyEvent { + layer: Layer; + layerView: LayerView; + } + + export type MapViewLayerviewDestroyEventHandler = (event: MapViewLayerviewDestroyEvent) => void; + + export interface MapViewConstraints { + lods?: LOD[]; + minScale?: number; + maxScale?: number; + minZoom?: number; + maxZoom?: number; + snapToZoom?: boolean; + rotationEnabled?: boolean; + effectiveLODs?: LOD[]; + effectiveMinZoom?: number; + effectiveMaxZoom?: number; + effectiveMinScale?: number; + effectiveMaxScale?: number; + } + + export interface MapViewGoToOptions { + animate?: boolean; + duration?: number; + easing?: string | Function; + } + + export interface MapViewHitTestScreenPoint { + x: number; + y: number; + } + + export interface MapViewToMapScreenPoint { + x: number; + y: number; + } + + export interface MapViewMouseWheelEvent { + x: number; + y: number; + deltaY: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewMouseWheelEventHandler = (event: MapViewMouseWheelEvent) => void; + + export interface MapViewPointerDownEvent { + pointerId: number; + pointerType: string; + x: number; + y: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewPointerDownEventHandler = (event: MapViewPointerDownEvent) => void; + + export interface MapViewPointerMoveEvent { + pointerId: number; + pointerType: string; + x: number; + y: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewPointerMoveEventHandler = (event: MapViewPointerMoveEvent) => void; + + export interface MapViewPointerUpEvent { + pointerId: number; + pointerType: string; + x: number; + y: number; + type: string; + stopPropagation: Function; + timestamp: number; + native: any; + } + + export type MapViewPointerUpEventHandler = (event: MapViewPointerUpEvent) => void; + + export interface MapViewResizeEvent { + oldWidth: number; + oldHeight: number; + width: number; + height: number; + } + + export type MapViewResizeEventHandler = (event: MapViewResizeEvent) => void; + export interface AttributeParamValue { attributeName: string; parameterName: string; value: string; } - export interface DataWorkspace { - id: string; - name: string; + export interface ConfigurationTaskGetDataWorkspaceDetailsParams { + dataWorkspaceId: string; + user: string; } - export interface GroupMembership { - id: number; - name: string; + export interface ConfigurationTaskGetUserJobQueryDetailsParams { + queryId: number; + user: string; } - export interface HoldType { - description: string; - id: number; - name: string; - } - - export interface JobPriority { - description: string; - name: string; - value: number; - } - - export interface JobQuery { - id: number; - name: string; - } - - export interface JobStatus { - caption: string; - description: string; - id: number; - name: string; - } - - export interface JobQueryContainer { - containers: JobQueryContainer[]; - id: number; - name: string; - queries: JobQuery[]; - } - - export interface JobQueryDetails { - aliases: string[]; - fields: string[]; - id: number; - name: string; - orderBy: string; - tables: string[]; - where: string; - } - - export interface Privilege { - description: string; - id: number; - name: string; - } - - export interface UserDetails { - lastName: string; - address: string; - faxNumber: string; - firstName: string; - fullName: string; - groups: GroupMembership[]; - email: string; - phoneNumber: string; - privileges: Privilege[]; - roomNumber: string; - userName: string; - userQueries: JobQueryContainer[]; - zipCode: string; - } - - export interface VersionInfo { - access: string; - name: string; - parent: string; - } - - export interface WorkflowManagerServiceInfo { - jobPriorities: JobPriority[]; - activityTypes: ActivityType[]; - currentVersion: number; - dataWorkspaces: DataWorkspace[]; - holdTypes: HoldType[]; - configProperties: any; - jobStatuses: JobStatus[]; - jobTypes: JobType[]; - notificationTypes: NotificationType[]; - privileges: Privilege[]; - publicQueries: JobQueryContainer[]; - } - - export interface JobType { - category: string; - description: string; - id: string; - name: string; - state: string; - } - - export interface JobTypeDetails { - defaultParentVersionName: string; - autoExecuteCreatedJobs: boolean; - category: string; - defaultAssignedTo: string; - defaultAssignedType: string; - defaultDataWorkspaceId: string; - defaultDescription: string; - defaultDueDate: string; - defaultJobDuration: number; - canDataWorkspaceChange: boolean; - defaultPriority: string; - defaultStartDate: Date; - description: string; - id: string; - jobNamingScheme: string; - jobVersionNamingScheme: string; - mxdNamingScheme: string; - name: string; - state: string; - } - - export interface TableRelationship { - cardinality: string; - linkField: string; - tableAlias: string; + export interface AuxRecordDescription { + properties: any; + recordId: number; tableName: string; } @@ -256,803 +1426,6 @@ declare namespace __esri { user: string; } - export interface JobUpdateParameters { - ownedBy: string; - assignedTo: string; - dataWorkspaceId: string; - description: string; - dueDate: Date; - loi: Geometry; - jobId: number; - name: string; - assignedType: string; - parentJobId: number; - parentVersion: string; - percent: number; - priority: number; - startDate: Date; - status: number; - versionName: string; - user: string; - } - - export interface AuxRecordDescription { - properties: any; - recordId: number; - tableName: string; - } - - export interface ActivityType { - desription: string; - id: number; - message: string; - name: string; - } - - export interface AuxRecordContainer { - records: AuxRecord; - relationshipType: string; - tableAlias: string; - tableName: string; - } - - export interface JobTaskJobInfo { - name: string; - assignedTo: string; - childJobIds: number[]; - createdBy: string; - createdDate: Date; - dataWorkspaceId: string; - description: string; - dueDate: Date; - endDate: Date; - id: number; - jobTypeId: number; - loi: Geometry; - assignedType: string; - ownedBy: string; - parentJobId: number; - parentVersion: string; - pendingDays: number; - percentageComplete: number; - priority: number; - stage: string; - startDate: Date; - status: number; - versionExists: boolean; - versionInfo: JobVersionInfo; - versionName: string; - } - - export interface QueryResult { - fields: QueryFieldInfo[]; - rows: string[]; - } - - export interface AuxRecord { - displayProperty: any; - id: number; - recordvalues: AuxRecordValue; - } - - export interface AuxRecordValue { - filter: string; - alias: string; - data: any; - dataType: string; - displayOrder: number; - displayType: string; - domain: string; - canUpdate: boolean; - length: number; - name: string; - required: boolean; - tableListClass: string; - tableListDisplayField: string; - tableListStoreField: string; - userVisible: boolean; - } - - export interface FieldValue { - description: string; - value: any; - } - - export interface JobVersionInfo { - dataWorkspaceId: string; - name: string; - parent: string; - created: boolean; - owner: string; - } - - export interface QueryFieldInfo { - alias: string; - length: string; - name: string; - type: string; - } - - export interface JobAttachment { - filename: string; - folder: string; - id: number; - storageType: string; - } - - export interface JobDependency { - depJobId: number; - depOnType: string; - depOnValue: string; - heldOnValue: number; - holdOnType: string; - id: number; - jobID: string; - } - - export interface ChangeRule { - description: string; - evaluators: any[]; - id: number; - name: string; - notifier: any; - summarize: boolean; - } - - export interface DataSetEvaluator { - dataSetConfigurations: DatasetConfiguration[]; - name: string; - type: string; - } - - export interface AOIEvaluator { - aoi: Polygon; - inverse: boolean; - name: string; - relation: string; - type: string; - useJobAOI: boolean; - } - - export interface DatasetConfiguration { - changeCondition: number; - changeFields: string; - dataset: string; - dataWorkspaceId: string; - name: string; - whereConditions: WhereCondition[]; - } - - export interface EmailNotifier { - attachJobAttachments: boolean; - message: string; - name: string; - senderEmail: string; - senderName: string; - subject: string; - subscribers: string[]; - type: string; - } - - export interface WhereCondition { - compareValue: any; - field: string; - operator: string; - } - - export interface NotificationType { - attachJobAttachments: boolean; - id: number; - message: string; - senderEmail: string; - senderName: string; - subject: string; - subscribers: string[]; - type: string; - } - - export interface ChangeRuleMatch { - changeTime: Date; - changeType: string; - dataset: string; - dataWorkspaceId: string; - id: string; - jobID: string; - ruleID: string; - } - - export interface ReportDataGroup { - aggregateLabel: string; - aggregateValue: string; - row: string[]; - value: string; - } - - export interface ReportData { - columns: string[]; - description: string; - groups: ReportDataGroup[]; - title: string; - } - - export interface Report { - description: string; - hierarchy: string; - id: number; - name: string; - title: string; - } - - export interface ExecuteInfo { - conflicts: WorkflowConflicts; - errorCode: number; - errorDescription: string; - executionResult: string; - hasConflicts: boolean; - hasReturnCode: boolean; - jobID: number; - returnCode: number; - stepID: number; - threwError: boolean; - } - - export interface Step { - hasBeenExecuted: boolean; - assignedTo: string; - async: boolean; - autoRun: boolean; - canSkip: boolean; - canSpawnConcurrency: boolean; - commonId: number; - defaultPercentComplete: number; - assignedType: string; - hasBeenStarted: boolean; - id: number; - name: string; - selfCheck: boolean; - statusId: number; - stepPercentComplete: number; - notificationType: string; - stepType: StepType; - } - - export interface StepType { - program: string; - arguments: string; - executionType: string; - id: number; - name: string; - description: string; - stepDescriptionLink: string; - stepDescriptionType: string; - stepIndicatorType: string; - supportedPlatform: string; - visible: boolean; - } - - export interface WorkflowDisplayDetails { - annotations: WorkflowAnnotationDisplayDetails[]; - paths: WorkflowPathDisplayDetails[]; - steps: WorkflowStepDisplayDetails[]; - } - - export interface WorkflowOption { - returnCode: number; - steps: WorkflowStepInfo[]; - } - - export interface WorkflowStepInfo { - id: number; - name: string; - } - - export interface WorkflowAnnotationDisplayDetails { - centerX: number; - centerY: number; - fillColor: any; - height: number; - label: string; - labelColor: any; - OutlineColor: any; - width: number; - } - - export interface WorkflowConflicts { - jobID: number; - options: WorkflowOption[]; - spawnsConcurrency: boolean; - stepId: number; - } - - export interface WorkflowPathDisplayDetails { - destStepId: number; - sourceStepID: number; - label: string; - labelColor: any; - labelX: number; - labelY: number; - lineColor: any; - pathObject: any; - } - - export interface WorkflowStepDisplayDetails { - labelColor: any; - centerX: number; - fillColor: any; - height: number; - label: string; - centerY: number; - OutlineColor: any; - shape: string; - stepId: number; - stepType: string; - width: number; - } - - export interface ExternalRenderer { - setup(): void; - render(): void; - } - - export interface RenderContext { - gl: any; - camera: any; - sunLight: any; - - resetWebGLState(): void; - bindRenderTarget(): void; - } - - export interface RenderCamera { - viewMatrix: any; - viewInverseTransposeMatrix: any; - projectionMatrix: any; - eye: any; - center: any; - up: any; - near: number; - far: number; - fovX: number; - fovY: number; - } - - export interface SunLight { - direction: any; - diffuse: any; - ambient: any; - } - - export interface ColorAndIntensity { - color: any; - intensity: number; - } - - export interface LocatorSource { - categories: string[]; - countryCode: string; - localSearchOptions: any; - locationToAddressDistance: number; - searchTemplate: string; - locator: Locator; - singleLineFieldName: string; - } - - export interface FeatureLayerSource { - displayField: string; - exactMatch: boolean; - featureLayer: FeatureLayer; - searchFields: string[]; - searchQueryParams: any; - suggestQueryParams: any; - suggestionTemplate: string; - } - - export type GetHeader = (headerName: string) => string; - - export type WatchCallback = (newValue: any, oldValue: any, propertyName: string, target: Accessor) => void; - - export type ItemCallback = (item: any, index: number) => void; - - export type ItemTestCallback = (item: any, index: number) => boolean; - - export type ItemMapCallback = (item: any, index: number) => any; - - export type ItemReduceCallback = (previousValue: any, currentValue: any, index: number) => any; - - export type ItemCompareCallback = (firstItem: any, secondItem: any) => number; - - export type EventAttachedCallback = (target: any, propName: string, obj: Accessor, eventName: string) => void; - - export type HandlerCallback = (authorizeParams: any, authorizeUrl: string, oAuthInfo: OAuthInfo, resourceUrl: string, serverInfo: ServerInfo) => void; - - export type EasingFunction = (t: number, duration: number) => number; - - export type EventHandler = (event: any) => void; - - export interface PromisedWatchHandle extends IPromise { - remove(): void; - } - - export interface GroundQueryElevationOptions { - returnSampleInfo?: boolean; - noDataValue?: number; - } - - export interface PopupTemplateFieldInfos { - fieldName: string; - format: PopupTemplateFieldInfosFormat; - isEditable: boolean; - label: string; - stringFieldOption: string; - tooltip: string; - visible: boolean; - } - - export interface PopupTemplateFieldInfosFormat { - dateFormat: string; - digitSeparator: boolean; - places: number; - } - - export interface WebMapSourceVersion { - major: number; - minor: number; - } - - export interface WebSceneSaveAsOptions { - folder?: PortalFolder; - ignoreUnsupported?: boolean; - } - - export interface WebSceneSaveOptions { - ignoreUnsupported?: boolean; - } - - export interface WebSceneSourceVersion { - major: number; - minor: number; - } - - export interface WebSceneUpdateFromOptions { - environmentExcluded?: boolean; - viewpointExcluded?: boolean; - } - - export interface IdentityManagerBaseGenerateTokenOptions { - serverUrl: string; - token: string; - ssl: boolean; - } - - export interface IdentityManagerBaseGetCredentialOptions { - error: Error; - oAuthPopupConfirmation: boolean; - retry: boolean; - token: string; - } - - export interface IdentityManagerBaseOAuthSignInOptions { - error: Error; - oAuthPopupConfirmation: boolean; - token: string; - } - - export interface IdentityManagerBaseRegisterTokenProperties { - expires: number; - server: string; - ssl: boolean; - token: string; - useId: string; - } - - export interface IdentityManagerBaseSetProtocolErrorHandlerHandlerFunction { - resourceUrl: string; - serverInfo: ServerInfo; - } - - export interface IdentityManagerBaseSetRedirectionHandlerHandlerFunction { - resourceUrl: string; - returnUrlParamName: string; - serverInfo: ServerInfo; - signInPage: string; - } - - export interface IdentityManagerBaseSignInOptions { - error: Error; - } - - export interface ElevationLayerQueryElevationOptions { - demResolution?: number | string; - returnSampleInfo?: boolean; - noDataValue?: number; - } - - export interface CSVLayerElevationInfo { - mode: string; - offset?: number; - } - - export interface FeatureLayerApplyEditsEdits { - addFeatures?: Graphic[]; - updateFeatures?: Graphic[]; - deleteFeatures?: Graphic[] | any[]; - } - - export interface FeatureLayerCapabilities { - operations: FeatureLayerCapabilitiesOperations; - } - - export interface FeatureLayerCapabilitiesOperations { - supportsAdd: boolean; - supportsDelete: boolean; - supportsUpdate: boolean; - supportsEditing: boolean; - supportsQuery: boolean; - } - - export interface FeatureLayerElevationInfo { - mode: string; - offset?: number; - } - - export interface FeatureLayerGetFieldDomainOptions { - feature: Graphic; - } - - export interface GraphicsLayerElevationInfo { - mode: string; - offset?: number; - } - - export interface LayerFromArcGISServerUrlParams { - url: string; - properties?: any; - } - - export interface LayerFromPortalItemParams { - portalItem: PortalItem; - } - - export interface SceneLayerElevationInfo { - mode: string; - offset?: number; - } - - export interface StreamLayerFilter { - geometry: Extent; - where: string; - } - - export interface StreamLayerPurgeOptions { - displayCount: number; - age: number; - } - - export interface StreamLayerUpdateFilterFilterChanges { - geometry: Extent; - where: string; - } - - export interface VectorTileLayerCurrentStyleInfo { - serviceUrl: string; - styleUrl: string; - spriteUrl: string; - glyphsUrl: string; - style: any; - layerDefinition: any; - } - - export interface CodedValueDomainCodedValues { - name: string; - code: string | number; - } - - export interface LabelClassLabelExpressionInfo { - value: string; - } - - export interface PixelBlockAddDataPlaneData { - pixels: number[][]; - statistics: any[]; - } - - export interface PixelBlockStatistics { - maxValue: number; - minValue: number; - noDataValue: number; - } - - export interface PortalFeaturedGroups { - owner: string; - title: string; - } - - export interface PortalItemFetchRelatedItemsParams { - relationshipType: string; - direction?: string; - } - - export interface PortalItemUpdateParams { - data: string | any; - } - - export interface PortalUserAddItemParams { - item: PortalItem; - data?: string | any; - folder?: PortalFolder; - } - - export interface PortalUserFetchItemsParams { - folder: PortalFolder; - num: number; - start: number; - } - - export interface ClassBreaksRendererClassBreakInfos { - minValue: number; - maxValue: number; - symbol: Symbol; - label: string; - } - - export interface ClassBreaksRendererLegendOptions { - title: string; - } - - export interface UniqueValueRendererLegendOptions { - title: string; - } - - export interface UniqueValueRendererUniqueValueInfos { - value: string; - symbol: Symbol; - label: string; - } - - export interface PointCloudRendererPointSizeAlgorithm { - type: string; - useRealWorldSymbolSizes: boolean; - size: number; - scaleFactor: number; - minSize: number; - } - - export interface PointCloudClassBreaksRendererColorClassBreakInfos { - minValue: number; - maxValue: number; - color: Color; - label: string; - } - - export interface PointCloudStretchRendererStops { - value: number; - label: string; - color: Color; - } - - export interface PointCloudUniqueValueRendererColorUniqueValueInfos { - values: number[]; - color: Color; - label: string; - } - - export interface FillSymbol3DLayerOutline { - color: Color | string; - size: number | string; - } - - export interface IconSymbol3DLayerOutline { - color: Color | string; - size: number | string; - } - - export interface IconSymbol3DLayerResource { - primitive?: string; - href?: string; - } - - export interface ObjectSymbol3DLayerResource { - primitive?: string; - href?: string; - } - - export interface Symbol3DStyleOrigin { - styleName?: string; - styleUrl?: string; - name: string; - } - - export interface TextSymbol3DLayerFont { - family: string; - weight: string; - style: string; - } - - export interface GeometryServiceFromGeoCoordinateStringParams { - strings: string[]; - sr: SpatialReference | string; - conversionType: string; - conversionMode?: string; - } - - export interface GeometryServiceToGeoCoordinateStringParams { - sr: SpatialReference | string; - coordinates: number[][]; - conversionType: string; - conversionMode?: string; - numOfDigits?: number; - rounding?: boolean; - addSpaces?: boolean; - } - - export interface LocatorAddressToLocationsParams { - address: any; - categories: string[]; - countryCode: string; - distance: number; - forStorage: boolean; - location: Point; - magicKey: string; - maxLocations: number; - outFields: string[]; - searchExtent: Extent; - } - - export interface LocatorAddressesToLocationsParams { - addresses: any[]; - countryCode: string; - categories: string[]; - } - - export interface LocatorSuggestLocationsParams { - categories: string[]; - distance: number; - location: Point; - text: string; - } - - export interface ClosestFacilityParametersAttributeParameterValues { - attributeName: string; - parameterName: string; - value: string; - } - - export interface PrintTemplateExportOptions { - width: number; - height: number; - dpi: number; - } - - export interface PrintTemplateLayoutOptions { - titleText: string; - authorText: string; - copyrightText: string; - scalebarUnit: string; - legendLayers: LegendLayer[]; - customTextElements: any[]; - } - - export interface ProjectParametersTransformation { - wkid: number; - } - - export interface QueryQuantizationParameters { - extent: Extent; - mode: string; - originPosition: string; - tolerance: number; - } - - export interface ConfigurationTaskGetDataWorkspaceDetailsParams { - dataWorkspaceId: string; - user: string; - } - - export interface ConfigurationTaskGetUserJobQueryDetailsParams { - queryId: number; - user: string; - } - export interface JobTaskAddEmbeddedAttachmentParams { jobId: number; form: any; @@ -1200,6 +1573,35 @@ declare namespace __esri { user: string; } + export interface JobUpdateParameters { + ownedBy: string; + assignedTo: string; + dataWorkspaceId: string; + description: string; + dueDate: Date; + loi: Geometry; + jobId: number; + name: string; + assignedType: string; + parentJobId: number; + parentVersion: string; + percent: number; + priority: number; + startDate: Date; + status: number; + versionName: string; + user: string; + } + + export interface ChangeRule { + description: string; + evaluators: any[]; + id: number; + name: string; + notifier: any; + summarize: boolean; + } + export interface NotificationTaskAddChangeRuleParams { rule: ChangeRule; user: string; @@ -1331,136 +1733,26 @@ declare namespace __esri { user: string; } - export interface MapViewConstraints { - lods?: LOD[]; - minScale?: number; - maxScale?: number; - minZoom?: number; - maxZoom?: number; - snapToZoom?: boolean; - rotationEnabled?: boolean; - effectiveLODs?: LOD[]; - effectiveMinZoom?: number; - effectiveMaxZoom?: number; - effectiveMinScale?: number; - effectiveMaxScale?: number; - } - - export interface MapViewGoToOptions { - animate?: boolean; - duration?: number; - easing?: string | Function; - } - - export interface MapViewHitTestScreenPoint { - x: number; - y: number; - } - - export interface SceneViewConstraintsProperties { - altitude?: SceneViewConstraintsAltitudeProperties; - clipDistance?: SceneViewConstraintsClipDistanceProperties; - collision?: SceneViewConstraintsCollision; - tilt?: SceneViewConstraintsTiltProperties; - } - export interface SceneViewConstraints extends Accessor { - altitude: SceneViewConstraintsAltitude; - clipDistance: SceneViewConstraintsClipDistance; - collision: SceneViewConstraintsCollision; - tilt: SceneViewConstraintsTilt; - } - - export interface SceneViewConstraintsAltitudeProperties { - min?: number; - max?: number; - } - export interface SceneViewConstraintsAltitude extends Accessor { - min: number; - max: number; - } - - export interface SceneViewConstraintsClipDistanceProperties { - near?: number; - far?: number; - mode?: string; - } - export interface SceneViewConstraintsClipDistance extends Accessor { - near: number; - far: number; - mode: string; - } - - export interface SceneViewConstraintsCollision { - enabled: boolean; - } - - export interface SceneViewConstraintsTiltProperties { - max?: number; - mode?: string; - } - export interface SceneViewConstraintsTilt extends Accessor { - max: number; - mode: string; - } - - export interface SceneViewEnvironmentProperties { - lighting?: SceneViewEnvironmentLightingProperties; - atmosphereEnabled?: boolean; - atmosphere?: SceneViewEnvironmentAtmosphereProperties; - starsEnabled?: boolean; - } - export interface SceneViewEnvironment extends Accessor { - lighting: SceneViewEnvironmentLighting; - atmosphereEnabled: boolean; - atmosphere: SceneViewEnvironmentAtmosphere; - starsEnabled: boolean; - } - - export interface SceneViewEnvironmentAtmosphereProperties { - quality?: string; - } - export interface SceneViewEnvironmentAtmosphere extends Accessor { - quality: string; - } - - export interface SceneViewEnvironmentLightingProperties { - date?: Date; - directShadowsEnabled?: boolean; - ambientOcclusionEnabled?: boolean; - cameraTrackingEnabled?: boolean; - } - export interface SceneViewEnvironmentLighting extends Accessor { - date: Date; - directShadowsEnabled: boolean; - ambientOcclusionEnabled: boolean; - cameraTrackingEnabled: boolean; - } - - export interface SceneViewGoToOptions { - animate?: boolean; - speedFactor?: number; - duration?: number; - maxDuration?: number; - easing?: string | EasingFunction; - } - - export interface SceneViewHitTestScreenPoint { - x: number; - y: number; - } - - export interface ViewPadding { - left: number; - top: number; - right: number; - bottom: number; - } - export interface ImageryLayerViewPixelData { - extent: Extent; + extent?: Extent; pixelBlock: PixelBlock; } + export interface StreamLayerViewDataReceivedEvent { + } + + export type StreamLayerViewDataReceivedEventHandler = (event: StreamLayerViewDataReceivedEvent) => void; + + export interface StreamLayerViewFilter { + geometry?: Extent; + where?: string; + } + + export interface StreamLayerViewUpdateFilterFilter { + geometry?: Extent; + where?: string; + } + export interface SlideApplyToOptions { animate: boolean; speedFactor?: number; @@ -1484,21 +1776,21 @@ declare namespace __esri { text?: string; } export interface SlideDescription extends Accessor { - text: string; + text?: string; } export interface SlideThumbnailProperties { url?: string; } export interface SlideThumbnail extends Accessor { - url: string; + url?: string; } export interface SlideTitleProperties { text?: string; } export interface SlideTitle extends Accessor { - text: string; + text?: string; } export interface SlideUpdateFromOptions { @@ -1523,14 +1815,14 @@ declare namespace __esri { } export interface LegendLayerInfos { - title: string; + title?: string; layer: Layer; } export interface PopupDockOptions { - breakpoint: any | boolean; - buttonEnabled: boolean; - position: string | Function; + breakpoint?: any | boolean; + buttonEnabled?: boolean; + position?: string | Function; } export interface PopupOpenOptions { @@ -1542,52 +1834,99 @@ declare namespace __esri { updateLocationEnabled?: boolean; } - export interface SearchSources extends Collection { - autoNavigate: boolean; - resultGraphicEnabled: boolean; - resultSymbol: Symbol; - popupEnabled: boolean; - suggestionsEnabled: boolean; - popup: Popup; - maxResults: number; - maxSuggestions: number; - minSuggestCharacters: number; - name: string; - outFields: string[]; - placeholder: string; - prefix: string; - searchExtent: Extent[]; - popupOpenOnSelect: boolean; - suffix: string; - withinViewEnabled: boolean; - zoomScale: number; + export interface SearchViewModelSearchCompleteEventResults { + results: SearchViewModelSearchCompleteEventResultsResults[]; + sourceIndex: number; + source: any[]; } - export interface SearchViewModelSources { - autoNavigate: boolean; - resultGraphicEnabled: boolean; - resultSymbol: Symbol; - popupEnabled: boolean; - suggestionsEnabled: boolean; - popup: Popup; - maxResults: number; - maxSuggestions: number; - minSuggestCharacters: number; + export interface SearchViewModelSearchCompleteEventResultsResults { + extent: Extent; + feature: Graphic; name: string; - outFields: string[]; - placeholder: string; - prefix: string; - searchExtent: Extent[]; - popupOpenOnSelect: boolean; - suffix: string; - withinViewEnabled: boolean; - zoomScale: number; + } + + export interface SearchViewModelSelectResultEventResult { + extent: Extent; + feature: Graphic; + name: string; + } + + export interface SearchViewModelSuggestCompleteEventResults { + results: SearchViewModelSuggestCompleteEventResultsResults[]; + sourceIndex: number; + source: any; + } + + export interface SearchViewModelSuggestCompleteEventResultsResults { + extent: Extent; + feature: Graphic; + name: string; + isCollection: boolean; + magicKey: string; + text: string; + } + + export interface SearchViewModelLoadEvent { + } + + export type SearchViewModelLoadEventHandler = (event: SearchViewModelLoadEvent) => void; + + export interface SearchViewModelSearchClearEvent { + } + + export type SearchViewModelSearchClearEventHandler = (event: SearchViewModelSearchClearEvent) => void; + + export interface SearchViewModelSearchCompleteEvent { + activeSourceIndex: number; + errors: Error[]; + numResults: number; + searchTerm: string; + results: SearchViewModelSearchCompleteEventResults[]; + } + + export type SearchViewModelSearchCompleteEventHandler = (event: SearchViewModelSearchCompleteEvent) => void; + + export interface SearchViewModelSearchStartEvent { + } + + export type SearchViewModelSearchStartEventHandler = (event: SearchViewModelSearchStartEvent) => void; + + export interface SearchViewModelSelectResultEvent { + result: SearchViewModelSelectResultEventResult; + source: any; + sourceIndex: number; + } + + export type SearchViewModelSelectResultEventHandler = (event: SearchViewModelSelectResultEvent) => void; + + export interface SearchViewModelSuggestCompleteEvent { + activeSourceIndex: number; + errors: Error[]; + numResults: number; + searchTerm: string; + results: SearchViewModelSuggestCompleteEventResults[]; + } + + export type SearchViewModelSuggestCompleteEventHandler = (event: SearchViewModelSuggestCompleteEvent) => void; + + export interface SearchViewModelSuggestStartEvent { + } + + export type SearchViewModelSuggestStartEventHandler = (event: SearchViewModelSuggestStartEvent) => void; + + export interface DynamicLayerFetchImageOptions { + allowImageDataAccess?: boolean; + rotation?: number; + pixelRatio?: number; + } + + export interface DynamicLayerGetImageUrlOptions { + pixelRatio?: number; + rotation?: number; } export interface ArcGISDynamicMapServiceGetExportImageParametersOptions { - extent: Extent; - width: number; - height: number; rotation?: number; } @@ -1605,37 +1944,37 @@ declare namespace __esri { } export interface configRequest { - corsDetection: boolean; - corsDetectionTimeout: number; - corsEnabledServers: Array; - forceProxy: boolean; - httpsDomains: string[]; - maxUrlLength: number; - proxyUrl: string; - timeout: number; - useCors: string | boolean; - proxyRules: configRequestProxyRules[]; + corsDetection?: boolean; + corsDetectionTimeout?: number; + corsEnabledServers?: Array; + forceProxy?: boolean; + httpsDomains?: string[]; + maxUrlLength?: number; + proxyUrl?: string; + timeout?: number; + useCors?: string | boolean; + proxyRules?: configRequestProxyRules[]; } export interface configRequestCorsEnabledServers { - host: string; - withCredentials: boolean; + host?: string; + withCredentials?: boolean; } export interface configRequestProxyRules { - proxyUrl: string; - urlPrefix: string; + proxyUrl?: string; + urlPrefix?: string; } export interface configWorkers { - loaderConfig: configWorkersLoaderConfig; + loaderConfig?: configWorkersLoaderConfig; } export interface configWorkersLoaderConfig { - has: any; - paths: any; - map: any; - packages: any[]; + has?: any; + paths?: any; + map?: any; + packages?: any[]; } export interface requestEsriRequestOptions { @@ -1645,16 +1984,31 @@ declare namespace __esri { headers?: any; timeout?: number; method?: string; + body?: any | any | string; useProxy?: boolean; cacheBust?: boolean; allowImageDataAccess?: boolean; } + export interface EachAlwaysResult { + promise: IPromise; + value: any; + error: any; + } + export interface urlUtilsAddProxyRuleRule { proxyUrl: string; urlPrefix: string; } + export type EventAttachedCallback = (target: any, propName: string, obj: Accessor, eventName: string) => void; + + export interface PausableWatchHandle { + remove(): void; + pause(): void; + resume(): void; + } + export interface decoratorsPropertyPropertyMetadata { dependsOn?: string[]; type?: Function; @@ -1678,6 +2032,7 @@ declare namespace __esri { defaultSymbolEnabled?: boolean; view?: SceneView; symbolType?: string; + colorMixMode?: string; } export interface colorCreateContinuousRendererParamsLegendOptions { @@ -1709,6 +2064,7 @@ declare namespace __esri { locationScheme?: any | any | any; view?: SceneView; symbolType?: string; + colorMixMode?: string; } export interface sizeCreateContinuousRendererParams { @@ -1749,6 +2105,25 @@ declare namespace __esri { title: string; } + export interface typeCreateRendererParams { + layer: FeatureLayer | SceneLayer; + field: string; + basemap?: string | Basemap; + numTypes?: number; + sortBy?: string; + typeScheme?: any | any | any; + legendOptions?: typeCreateRendererParamsLegendOptions; + defaultSymbolEnabled?: boolean; + view?: SceneView; + symbolType?: string; + statistics?: any; + colorMixMode?: string; + } + + export interface typeCreateRendererParamsLegendOptions { + title: string; + } + export interface univariateColorSizeCreateContinuousRendererParams { layer: FeatureLayer | SceneLayer; basemap?: string | Basemap; @@ -1848,6 +2223,13 @@ declare namespace __esri { maxValue?: number; } + export interface uniqueValuesUniqueValuesParams { + layer: FeatureLayer | SceneLayer; + field: string; + features?: Graphic[]; + returnAllCodedValues?: boolean; + } + export interface colorGetSchemesParams { basemap: string | Basemap; geometryType: string; @@ -1870,6 +2252,238 @@ declare namespace __esri { worldScale?: boolean; } + export interface typeGetSchemesParams { + basemap: string | Basemap; + geometryType: string; + worldScale?: boolean; + view?: SceneView; + } + + export interface JobQuery { + id: number; + name: string; + } + + export interface GroupMembership { + id: number; + name: string; + } + + export interface JobQueryContainer { + containers: JobQueryContainer[]; + id: number; + name: string; + queries: JobQuery[]; + } + + export interface Privilege { + description: string; + id: number; + name: string; + } + + export interface DataWorkspace { + id: string; + name: string; + } + + export interface HoldType { + description: string; + id: number; + name: string; + } + + export interface JobPriority { + description: string; + name: string; + value: number; + } + + export interface JobStatus { + caption: string; + description: string; + id: number; + name: string; + } + + export interface JobType { + category: string; + description: string; + id: string; + name: string; + state: string; + } + + export interface ActivityType { + desription: string; + id: number; + message: string; + name: string; + } + + export interface NotificationType { + attachJobAttachments: boolean; + id: number; + message: string; + senderEmail: string; + senderName: string; + subject: string; + subscribers: string[]; + type: string; + } + + export interface AuxRecord { + displayProperty: any; + id: number; + recordvalues: AuxRecordValue; + } + + export interface AuxRecordValue { + filter: string; + alias: string; + data: any; + dataType: string; + displayOrder: number; + displayType: string; + domain: string; + canUpdate: boolean; + length: number; + name: string; + required: boolean; + tableListClass: string; + tableListDisplayField: string; + tableListStoreField: string; + userVisible: boolean; + } + + export interface JobVersionInfo { + dataWorkspaceId: string; + name: string; + parent: string; + created: boolean; + owner: string; + } + + export interface QueryFieldInfo { + alias: string; + length: string; + name: string; + type: string; + } + + export interface DatasetConfiguration { + changeCondition: number; + changeFields: string; + dataset: string; + dataWorkspaceId: string; + name: string; + whereConditions: WhereCondition[]; + } + + export interface WhereCondition { + compareValue: any; + field: string; + operator: string; + } + + export interface ReportDataGroup { + aggregateLabel: string; + aggregateValue: string; + row: string[]; + value: string; + } + + export interface WorkflowConflicts { + jobID: number; + options: WorkflowOption[]; + spawnsConcurrency: boolean; + stepId: number; + } + + export interface WorkflowOption { + returnCode: number; + steps: WorkflowStepInfo[]; + } + + export interface WorkflowStepInfo { + id: number; + name: string; + } + + export interface StepType { + program: string; + arguments: string; + executionType: string; + id: number; + name: string; + description: string; + stepDescriptionLink: string; + stepDescriptionType: string; + stepIndicatorType: string; + supportedPlatform: string; + visible: boolean; + } + + export interface WorkflowAnnotationDisplayDetails { + centerX: number; + centerY: number; + fillColor: any; + height: number; + label: string; + labelColor: any; + OutlineColor: any; + width: number; + } + + export interface WorkflowPathDisplayDetails { + destStepId: number; + sourceStepID: number; + label: string; + labelColor: any; + labelX: number; + labelY: number; + lineColor: any; + pathObject: any; + } + + export interface WorkflowStepDisplayDetails { + labelColor: any; + centerX: number; + fillColor: any; + height: number; + label: string; + centerY: number; + OutlineColor: any; + shape: string; + stepId: number; + stepType: string; + width: number; + } + + export interface ColorAndIntensity { + color: any; + intensity: number; + } + + export interface RenderCamera { + viewMatrix: any; + viewInverseTransposeMatrix: any; + projectionMatrix: any; + eye: any; + center: any; + up: any; + near: number; + far: number; + fovX: number; + fovY: number; + } + + export interface SunLight { + direction: any; + diffuse: ColorAndIntensity; + ambient: ColorAndIntensity; + } + interface Basemap extends Accessor, Loadable, JSONSupport { baseLayers: Collection; id: string; @@ -1879,7 +2493,7 @@ declare namespace __esri { thumbnailUrl: string; title: string; - clone(): Basemap; + clone(): this; } interface BasemapConstructor { @@ -1909,7 +2523,7 @@ declare namespace __esri { position: Point; tilt: number; - clone(): Camera; + clone(): this; } interface CameraConstructor { @@ -1933,7 +2547,7 @@ declare namespace __esri { g: number; r: number; - clone(): Color; + clone(): this; setColor(color: string | number[] | any): Color; toCss(includeAlpha?: boolean): string; toHex(): string; @@ -1946,7 +2560,7 @@ declare namespace __esri { blendColors(start: Color, end: Color, weight: number, obj?: Color): Color; new(color: string | number[] | any): Color; - fromArray(a: number, obj?: Color): Color; + fromArray(a: number[], obj?: Color): Color; fromHex(color: string, obj?: Color): Color; fromJSON(json: any): Color; fromRgb(color: string, obj?: Color): Color; @@ -1963,7 +2577,7 @@ declare namespace __esri { symbol: Symbol; visible: boolean; - clone(): Graphic; + clone(): this; getAttribute(name: string): any; getEffectivePopupTemplate(): PopupTemplate; setAttribute(name: string, newValue: any): void; @@ -1989,7 +2603,7 @@ declare namespace __esri { interface Ground extends Accessor { layers: Collection; - clone(): Ground; + clone(): this; queryElevation(geometry: Point | Multipoint | Polyline, options?: GroundQueryElevationOptions): IPromise; } @@ -2024,11 +2638,12 @@ declare namespace __esri { interface PopupTemplate extends Accessor, JSONSupport { actions: Collection; content: string; + expressionInfos: PopupTemplateExpressionInfos[]; fieldInfos: PopupTemplateFieldInfos[]; overwriteActions: boolean; title: string; - clone(): PopupTemplate; + clone(): this; } interface PopupTemplateConstructor { @@ -2041,7 +2656,8 @@ declare namespace __esri { interface PopupTemplateProperties { actions?: Collection | any[]; - content?: string | any[] | Function; + content?: string | any[] | Function | IPromise; + expressionInfos?: PopupTemplateExpressionInfos[]; fieldInfos?: PopupTemplateFieldInfos[]; overwriteActions?: boolean; title?: string | Function; @@ -2053,7 +2669,7 @@ declare namespace __esri { scale: number; targetGeometry: Geometry; - clone(): Viewpoint; + clone(): this; } interface ViewpointConstructor { @@ -2153,7 +2769,7 @@ declare namespace __esri { add(item: any, index?: number): void; addMany(items: any[] | Collection, index?: number): void; - clone(): Collection; + clone(): this; concat(value: any[] | Collection): Collection; every(callback: ItemTestCallback): boolean; filter(callback: ItemTestCallback): Collection; @@ -2290,7 +2906,7 @@ declare namespace __esri { spatialReference: SpatialReference; type: string; - clone(): Geometry; + clone(): this; } interface GeometryConstructor { @@ -2443,7 +3059,7 @@ declare namespace __esri { wkid: number; wkt: string; - clone(): SpatialReference; + clone(): this; equals(spatialReference: SpatialReference): boolean; } @@ -2505,7 +3121,7 @@ declare namespace __esri { findServerInfo(url: string): ServerInfo; generateToken(serverInfo: ServerInfo, userInfo: any, options?: IdentityManagerBaseGenerateTokenOptions): IPromise; getCredential(url: string, options?: IdentityManagerBaseGetCredentialOptions): IPromise; - initialize(json: any): any; + initialize(json: any): void; isBusy(): boolean; oAuthSignIn(resUrl: string, serverInfo: ServerInfo, oAuthInfo: OAuthInfo, options?: IdentityManagerBaseOAuthSignInOptions): IPromise; registerOAuthInfos(oAuthInfos: OAuthInfo[]): void; @@ -2528,6 +3144,11 @@ declare namespace __esri { setOAuthRedirectionHandler(handlerFunction: HandlerCallback): void; setOAuthResponseHash(hash: string): void; + + on(name: "credential-create", eventHandler: IdentityManagerCredentialCreateEventHandler): IHandle; + on(name: "credential-create", modifiers: string[], eventHandler: IdentityManagerCredentialCreateEventHandler): IHandle; + on(name: "credentials-destroy", eventHandler: IdentityManagerCredentialsDestroyEventHandler): IHandle; + on(name: "credentials-destroy", modifiers: string[], eventHandler: IdentityManagerCredentialsDestroyEventHandler): IHandle; } interface IdentityManagerConstructor { @@ -2536,7 +3157,7 @@ declare namespace __esri { export const IdentityManager: IdentityManagerConstructor; - interface OAuthInfo { + interface OAuthInfo extends Accessor, JSONSupport { appId: string; authNamespace: string; expiration: number; @@ -2546,38 +3167,142 @@ declare namespace __esri { popupCallbackUrl: string; popupWindowFeatures: string; portalUrl: string; - showSocialLogins: boolean; - toJSON(): any; + clone(): this; } interface OAuthInfoConstructor { - new(properties?: any): OAuthInfo; + new(properties?: OAuthInfoProperties): OAuthInfo; + + fromJSON(json: any): OAuthInfo; } export const OAuthInfo: OAuthInfoConstructor; - interface ServerInfo { + interface OAuthInfoProperties { + appId?: string; + authNamespace?: string; + expiration?: number; + locale?: string; + minTimeUntilExpiration?: number; + popup?: boolean; + popupCallbackUrl?: string; + popupWindowFeatures?: string; + portalUrl?: string; + } + + interface ServerInfo extends Accessor, JSONSupport { adminTokenServiceUrl: string; currentVersion: number; server: string; shortLivedTokenValidity: number; tokenServiceUrl: string; - - toJSON(): any; } interface ServerInfoConstructor { - new(properties?: any): ServerInfo; + new(properties?: ServerInfoProperties): ServerInfo; + + fromJSON(json: any): ServerInfo; } export const ServerInfo: ServerInfoConstructor; + interface ServerInfoProperties { + adminTokenServiceUrl?: string; + currentVersion?: number; + server?: string; + shortLivedTokenValidity?: number; + tokenServiceUrl?: string; + } + + interface BaseElevationLayer extends Layer { + spatialReference: SpatialReference; + tileInfo: TileInfo; + + addResolvingPromise(promiseToLoad: IPromise): IPromise; + fetchTile(level: number, row: number, column: number, options?: BaseElevationLayerFetchTileOptions): IPromise; + getTileBounds(level: number, row: number, column: number, out?: number[]): number[]; + + on(name: "layerview-create", eventHandler: BaseElevationLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: BaseElevationLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: BaseElevationLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: BaseElevationLayerLayerviewDestroyEventHandler): IHandle; + } + + interface BaseElevationLayerConstructor { + new(properties?: BaseElevationLayerProperties): BaseElevationLayer; + } + + export const BaseElevationLayer: BaseElevationLayerConstructor; + + interface BaseElevationLayerProperties extends LayerProperties { + spatialReference?: SpatialReferenceProperties; + tileInfo?: TileInfoProperties; + } + + interface CSVLayer extends Layer { + copyright: string; + delimiter: string; + elevationInfo: CSVLayerElevationInfo; + featureReduction: CSVLayerFeatureReduction; + fields: Field[]; + labelingInfo: LabelClass[]; + labelsVisible: boolean; + latitudeField: string; + legendEnabled: boolean; + longitudeField: string; + maxScale: number; + minScale: number; + outFields: string[]; + popupEnabled: boolean; + popupTemplate: PopupTemplate; + renderer: Renderer; + screenSizePerspectiveEnabled: boolean; + url: string; + + on(name: "layerview-create", eventHandler: CSVLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: CSVLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: CSVLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: CSVLayerLayerviewDestroyEventHandler): IHandle; + } + + interface CSVLayerConstructor { + new(properties?: CSVLayerProperties): CSVLayer; + } + + export const CSVLayer: CSVLayerConstructor; + + interface CSVLayerProperties extends LayerProperties { + copyright?: string; + delimiter?: string; + elevationInfo?: CSVLayerElevationInfo; + featureReduction?: CSVLayerFeatureReduction; + fields?: FieldProperties[]; + labelingInfo?: LabelClassProperties[]; + labelsVisible?: boolean; + latitudeField?: string; + legendEnabled?: boolean; + longitudeField?: string; + maxScale?: number; + minScale?: number; + outFields?: string[]; + popupEnabled?: boolean; + popupTemplate?: PopupTemplateProperties; + renderer?: RendererProperties; + screenSizePerspectiveEnabled?: boolean; + url?: string; + } + interface ElevationLayer extends Layer, ArcGISMapService, ArcGISCachedService, PortalLayer, TiledLayer { url: string; fetchTile(level: number, row: number, column: number, noDataValue?: number): IPromise; queryElevation(geometry: Point | Multipoint | Polyline, options?: ElevationLayerQueryElevationOptions): IPromise; + + on(name: "layerview-create", eventHandler: ElevationLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: ElevationLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: ElevationLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: ElevationLayerLayerviewDestroyEventHandler): IHandle; } interface ElevationLayerConstructor { @@ -2592,118 +3317,13 @@ declare namespace __esri { url?: string; } - interface ImageryLayer extends Layer, ArcGISImageService, ScaleRangeLayer { - pixelFilter: Function; - popupEnabled: boolean; - portalItem: PortalItem; - token: string; - - redraw(): void; - } - - interface ImageryLayerConstructor { - new(properties?: ImageryLayerProperties): ImageryLayer; - - fromJSON(json: any): ImageryLayer; - } - - export const ImageryLayer: ImageryLayerConstructor; - - interface ImageryLayerProperties extends LayerProperties, ArcGISImageServiceProperties, ScaleRangeLayerProperties { - pixelFilter?: Function; - popupEnabled?: boolean; - portalItem?: PortalItemProperties; - token?: string; - } - - interface MapImageLayer extends Layer, ArcGISMapService, ArcGISDynamicMapService, DynamicLayer { - } - - interface MapImageLayerConstructor { - new(properties?: MapImageLayerProperties): MapImageLayer; - - fromJSON(json: any): MapImageLayer; - } - - export const MapImageLayer: MapImageLayerConstructor; - - interface MapImageLayerProperties extends LayerProperties, ArcGISMapServiceProperties, ArcGISDynamicMapServiceProperties, DynamicLayerProperties { - - } - - interface TileLayer extends Layer, ArcGISMapService, ArcGISCachedService, PortalLayer, TiledLayer { - attributionDataUrl: string; - hasAttributionData: boolean; - legendEnabled: boolean; - tileServers: string[]; - url: string; - } - - interface TileLayerConstructor { - new(properties?: TileLayerProperties): TileLayer; - - fromJSON(json: any): TileLayer; - } - - export const TileLayer: TileLayerConstructor; - - interface TileLayerProperties extends LayerProperties, ArcGISMapServiceProperties, ArcGISCachedServiceProperties, PortalLayerProperties, TiledLayerProperties { - attributionDataUrl?: string; - hasAttributionData?: boolean; - legendEnabled?: boolean; - tileServers?: string[]; - url?: string; - } - - interface CSVLayer extends Layer { - copyright: string; - delimiter: string; - elevationInfo: CSVLayerElevationInfo; - fields: Field[]; - labelingInfo: LabelClass[]; - labelsVisible: boolean; - latitudeField: string; - legendEnabled: boolean; - longitudeField: string; - maxScale: number; - minScale: number; - outFields: string[]; - popupEnabled: boolean; - popupTemplate: PopupTemplate; - renderer: Renderer; - url: string; - } - - interface CSVLayerConstructor { - new(properties?: CSVLayerProperties): CSVLayer; - } - - export const CSVLayer: CSVLayerConstructor; - - interface CSVLayerProperties extends LayerProperties { - copyright?: string; - delimiter?: string; - elevationInfo?: CSVLayerElevationInfo; - fields?: FieldProperties[]; - labelingInfo?: LabelClassProperties[]; - labelsVisible?: boolean; - latitudeField?: string; - legendEnabled?: boolean; - longitudeField?: string; - maxScale?: number; - minScale?: number; - outFields?: string[]; - popupEnabled?: boolean; - popupTemplate?: PopupTemplateProperties; - renderer?: RendererProperties; - url?: string; - } - interface FeatureLayer extends Layer, PortalLayer, ScaleRangeLayer { capabilities: FeatureLayerCapabilities; copyright: string; definitionExpression: string; + displayField: string; elevationInfo: FeatureLayerElevationInfo; + featureReduction: FeatureLayerFeatureReduction; fields: Field[]; gdbVersion: string; geometryType: string; @@ -2721,9 +3341,13 @@ declare namespace __esri { renderer: Renderer; returnM: boolean; returnZ: boolean; + screenSizePerspectiveEnabled: boolean; source: Collection; spatialReference: SpatialReference; + templates: FeatureTemplate[]; token: string; + typeIdField: string; + types: FeatureType[]; url: string; version: number; @@ -2734,6 +3358,11 @@ declare namespace __esri { queryFeatureCount(params?: Query): IPromise; queryFeatures(params?: Query): IPromise; queryObjectIds(params?: Query): IPromise; + + on(name: "layerview-create", eventHandler: FeatureLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: FeatureLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: FeatureLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: FeatureLayerLayerviewDestroyEventHandler): IHandle; } interface FeatureLayerConstructor { @@ -2748,7 +3377,9 @@ declare namespace __esri { capabilities?: FeatureLayerCapabilities; copyright?: string; definitionExpression?: string; + displayField?: string; elevationInfo?: FeatureLayerElevationInfo; + featureReduction?: FeatureLayerFeatureReduction; fields?: FieldProperties[]; gdbVersion?: string; geometryType?: string; @@ -2766,9 +3397,13 @@ declare namespace __esri { renderer?: RendererProperties; returnM?: boolean; returnZ?: boolean; + screenSizePerspectiveEnabled?: boolean; source?: Collection | any[]; spatialReference?: SpatialReferenceProperties; + templates?: FeatureTemplateProperties[]; token?: string; + typeIdField?: string; + types?: FeatureTypeProperties[]; url?: string; version?: number; } @@ -2778,6 +3413,11 @@ declare namespace __esri { pointSymbol: PictureMarkerSymbol; polygonSymbol: SimpleFillSymbol; url: string; + + on(name: "layerview-create", eventHandler: GeoRSSLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: GeoRSSLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: GeoRSSLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: GeoRSSLayerLayerviewDestroyEventHandler): IHandle; } interface GeoRSSLayerConstructor { @@ -2796,12 +3436,18 @@ declare namespace __esri { interface GraphicsLayer extends Layer, ScaleRangeLayer { elevationInfo: GraphicsLayerElevationInfo; graphics: Collection; + screenSizePerspectiveEnabled: boolean; add(graphic: Graphic): void; addMany(graphics: Graphic[]): void; remove(graphic: Graphic): void; removeAll(): void; removeMany(graphics: Graphic[]): void; + + on(name: "layerview-create", eventHandler: GraphicsLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: GraphicsLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: GraphicsLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: GraphicsLayerLayerviewDestroyEventHandler): IHandle; } interface GraphicsLayerConstructor { @@ -2813,10 +3459,16 @@ declare namespace __esri { interface GraphicsLayerProperties extends LayerProperties, ScaleRangeLayerProperties { elevationInfo?: GraphicsLayerElevationInfo; graphics?: Collection | any[]; + screenSizePerspectiveEnabled?: boolean; } - interface GroupLayer extends Layer, LayersMixin, JSONSupport, PortalLayer { + interface GroupLayer extends Layer, LayersMixin, PortalLayer { visibilityMode: string; + + on(name: "layerview-create", eventHandler: GroupLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: GroupLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: GroupLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: GroupLayerLayerviewDestroyEventHandler): IHandle; } interface GroupLayerConstructor { @@ -2831,7 +3483,40 @@ declare namespace __esri { visibilityMode?: string; } + interface ImageryLayer extends Layer, ArcGISImageService, ScaleRangeLayer { + pixelFilter: Function; + popupEnabled: boolean; + portalItem: PortalItem; + token: string; + + redraw(): void; + + on(name: "layerview-create", eventHandler: ImageryLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: ImageryLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: ImageryLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: ImageryLayerLayerviewDestroyEventHandler): IHandle; + } + + interface ImageryLayerConstructor { + new(properties?: ImageryLayerProperties): ImageryLayer; + + fromJSON(json: any): ImageryLayer; + } + + export const ImageryLayer: ImageryLayerConstructor; + + interface ImageryLayerProperties extends LayerProperties, ArcGISImageServiceProperties, ScaleRangeLayerProperties { + pixelFilter?: Function; + popupEnabled?: boolean; + portalItem?: PortalItemProperties; + token?: string; + } + interface IntegratedMeshLayer extends Layer, SceneService, PortalLayer { + on(name: "layerview-create", eventHandler: IntegratedMeshLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: IntegratedMeshLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: IntegratedMeshLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: IntegratedMeshLayerLayerviewDestroyEventHandler): IHandle; } interface IntegratedMeshLayerConstructor { @@ -2880,7 +3565,49 @@ declare namespace __esri { visible?: boolean; } + interface MapImageLayer extends Layer, ArcGISMapService, ArcGISDynamicMapService, DynamicLayer { + on(name: "layerview-create", eventHandler: MapImageLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: MapImageLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: MapImageLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: MapImageLayerLayerviewDestroyEventHandler): IHandle; + } + + interface MapImageLayerConstructor { + new(properties?: MapImageLayerProperties): MapImageLayer; + + fromJSON(json: any): MapImageLayer; + } + + export const MapImageLayer: MapImageLayerConstructor; + + interface MapImageLayerProperties extends LayerProperties, ArcGISMapServiceProperties, ArcGISDynamicMapServiceProperties, DynamicLayerProperties { + + } + + interface MapNotesLayer extends Layer, PortalLayer { + on(name: "layerview-create", eventHandler: MapNotesLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: MapNotesLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: MapNotesLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: MapNotesLayerLayerviewDestroyEventHandler): IHandle; + } + + interface MapNotesLayerConstructor { + new(properties?: MapNotesLayerProperties): MapNotesLayer; + + fromJSON(json: any): MapNotesLayer; + } + + export const MapNotesLayer: MapNotesLayerConstructor; + + interface MapNotesLayerProperties extends LayerProperties, PortalLayerProperties { + + } + interface OpenStreetMapLayer extends WebTileLayer { + on(name: "layerview-create", eventHandler: OpenStreetMapLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: OpenStreetMapLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: OpenStreetMapLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: OpenStreetMapLayerLayerviewDestroyEventHandler): IHandle; } interface OpenStreetMapLayerConstructor { @@ -2896,8 +3623,14 @@ declare namespace __esri { } interface PointCloudLayer extends Layer, SceneService, PortalLayer { + elevationInfo: PointCloudLayerElevationInfo; fields: Field[]; renderer: PointCloudRenderer; + + on(name: "layerview-create", eventHandler: PointCloudLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: PointCloudLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: PointCloudLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: PointCloudLayerLayerviewDestroyEventHandler): IHandle; } interface PointCloudLayerConstructor { @@ -2909,6 +3642,7 @@ declare namespace __esri { export const PointCloudLayer: PointCloudLayerConstructor; interface PointCloudLayerProperties extends LayerProperties, SceneServiceProperties, PortalLayerProperties { + elevationInfo?: PointCloudLayerElevationInfo; fields?: FieldProperties[]; renderer?: PointCloudRendererProperties; } @@ -2916,6 +3650,7 @@ declare namespace __esri { interface SceneLayer extends Layer, SceneService, PortalLayer { definitionExpression: string; elevationInfo: SceneLayerElevationInfo; + featureReduction: SceneLayerFeatureReduction; fields: Field[]; geometryType: string; labelingInfo: LabelClass[]; @@ -2925,6 +3660,7 @@ declare namespace __esri { popupEnabled: boolean; popupTemplate: PopupTemplate; renderer: Renderer; + screenSizePerspectiveEnabled: boolean; createQuery(): Query; getFieldUsageInfo(fieldName: string): any; @@ -2932,6 +3668,11 @@ declare namespace __esri { queryFeatureCount(params?: Query): IPromise; queryFeatures(params?: Query): IPromise; queryObjectIds(params?: Query): IPromise; + + on(name: "layerview-create", eventHandler: SceneLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: SceneLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: SceneLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: SceneLayerLayerviewDestroyEventHandler): IHandle; } interface SceneLayerConstructor { @@ -2945,6 +3686,7 @@ declare namespace __esri { interface SceneLayerProperties extends LayerProperties, SceneServiceProperties, PortalLayerProperties { definitionExpression?: string; elevationInfo?: SceneLayerElevationInfo; + featureReduction?: SceneLayerFeatureReduction; fields?: FieldProperties[]; geometryType?: string; labelingInfo?: LabelClassProperties[]; @@ -2954,6 +3696,7 @@ declare namespace __esri { popupEnabled?: boolean; popupTemplate?: PopupTemplateProperties; renderer?: RendererProperties; + screenSizePerspectiveEnabled?: boolean; } interface StreamLayer extends FeatureLayer { @@ -2963,6 +3706,11 @@ declare namespace __esri { purgeOptions: StreamLayerPurgeOptions; updateFilter(filterChanges: StreamLayerUpdateFilterFilterChanges): IPromise; + + on(name: "layerview-create", eventHandler: StreamLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: StreamLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: StreamLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: StreamLayerLayerviewDestroyEventHandler): IHandle; } interface StreamLayerConstructor { @@ -2980,7 +3728,43 @@ declare namespace __esri { purgeOptions?: StreamLayerPurgeOptions; } + interface TileLayer extends Layer, ArcGISMapService, ArcGISCachedService, PortalLayer, TiledLayer { + attributionDataUrl: string; + hasAttributionData: boolean; + legendEnabled: boolean; + tileServers: string[]; + url: string; + + fetchTile(level: number, row: number, column: number, options?: TileLayerFetchTileOptions): IPromise; + getTileUrl(level: number, row: number, col: number): string; + + on(name: "layerview-create", eventHandler: TileLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: TileLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: TileLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: TileLayerLayerviewDestroyEventHandler): IHandle; + } + + interface TileLayerConstructor { + new(properties?: TileLayerProperties): TileLayer; + + fromJSON(json: any): TileLayer; + } + + export const TileLayer: TileLayerConstructor; + + interface TileLayerProperties extends LayerProperties, ArcGISMapServiceProperties, ArcGISCachedServiceProperties, PortalLayerProperties, TiledLayerProperties { + attributionDataUrl?: string; + hasAttributionData?: boolean; + legendEnabled?: boolean; + tileServers?: string[]; + url?: string; + } + interface UnknownLayer extends Layer { + on(name: "layerview-create", eventHandler: UnknownLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: UnknownLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: UnknownLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: UnknownLayerLayerviewDestroyEventHandler): IHandle; } interface UnknownLayerConstructor { @@ -2994,6 +3778,10 @@ declare namespace __esri { } interface UnsupportedLayer extends Layer { + on(name: "layerview-create", eventHandler: UnsupportedLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: UnsupportedLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: UnsupportedLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: UnsupportedLayerLayerviewDestroyEventHandler): IHandle; } interface UnsupportedLayerConstructor { @@ -3012,6 +3800,13 @@ declare namespace __esri { spatialReference: SpatialReference; token: string; url: string; + + loadStyle(style: string | any): IPromise; + + on(name: "layerview-create", eventHandler: VectorTileLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: VectorTileLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: VectorTileLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: VectorTileLayerLayerviewDestroyEventHandler): IHandle; } interface VectorTileLayerConstructor { @@ -3036,6 +3831,11 @@ declare namespace __esri { subDomains: string[]; tileServers: string[]; urlTemplate: string; + + on(name: "layerview-create", eventHandler: WebTileLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: WebTileLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: WebTileLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: WebTileLayerLayerviewDestroyEventHandler): IHandle; } interface WebTileLayerConstructor { @@ -3054,16 +3854,151 @@ declare namespace __esri { urlTemplate?: string; } + interface WMSLayer extends Layer, PortalLayer { + copyright: string; + customLayerParameters: any; + customParameters: any; + description: string; + featureInfoFormat: string; + featureInfoUrl: string; + fullExtents: Extent[]; + imageFormat: string; + imageMaxHeight: number; + imageMaxWidth: number; + imageTransparency: boolean; + spatialReference: SpatialReference; + spatialReferences: number[]; + sublayers: Collection; + version: string; + + fetchImage(extent: Extent, width: number, height: number, options?: WMSLayerFetchImageOptions): IPromise; + findSublayerById(id: number): WMSSublayer; + + on(name: "layerview-create", eventHandler: WMSLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: WMSLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: WMSLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: WMSLayerLayerviewDestroyEventHandler): IHandle; + } + + interface WMSLayerConstructor { + new(properties?: WMSLayerProperties): WMSLayer; + + fromJSON(json: any): WMSLayer; + } + + export const WMSLayer: WMSLayerConstructor; + + interface WMSLayerProperties extends LayerProperties, PortalLayerProperties { + copyright?: string; + customLayerParameters?: any; + customParameters?: any; + description?: string; + featureInfoFormat?: string; + featureInfoUrl?: string; + fullExtents?: ExtentProperties[]; + imageFormat?: string; + imageMaxHeight?: number; + imageMaxWidth?: number; + imageTransparency?: boolean; + spatialReference?: SpatialReferenceProperties; + spatialReferences?: number[]; + sublayers?: Collection | any[]; + version?: string; + } + + interface WMTSLayer extends Layer, PortalLayer { + activeLayer: WMTSSublayer; + copyright: string; + customLayerParameters: any; + customParameters: any; + serviceMode: string; + sublayers: Collection; + url: string; + version: string; + + findSublayerById(id: string): WMTSSublayer; + + on(name: "layerview-create", eventHandler: WMTSLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: WMTSLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: WMTSLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: WMTSLayerLayerviewDestroyEventHandler): IHandle; + } + + interface WMTSLayerConstructor { + new(properties?: WMTSLayerProperties): WMTSLayer; + + fromJSON(json: any): WMTSLayer; + } + + export const WMTSLayer: WMTSLayerConstructor; + + interface WMTSLayerProperties extends LayerProperties, PortalLayerProperties { + activeLayer?: WMTSSublayerProperties; + copyright?: string; + customLayerParameters?: any; + customParameters?: any; + serviceMode?: string; + sublayers?: Collection | any[]; + url?: string; + version?: string; + } + + interface BaseDynamicLayer extends Layer { + addResolvingPromise(promiseToLoad: IPromise): IPromise; + fetchImage(extent: Extent, width: number, height: number, options?: BaseDynamicLayerFetchImageOptions): IPromise; + getImageUrl(extent: Extent, width: number, height: number): IPromise | string; + + on(name: "layerview-create", eventHandler: BaseDynamicLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: BaseDynamicLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: BaseDynamicLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: BaseDynamicLayerLayerviewDestroyEventHandler): IHandle; + } + + interface BaseDynamicLayerConstructor { + new(properties?: BaseDynamicLayerProperties): BaseDynamicLayer; + } + + export const BaseDynamicLayer: BaseDynamicLayerConstructor; + + interface BaseDynamicLayerProperties extends LayerProperties { + + } + + interface BaseTileLayer extends Layer { + spatialReference: SpatialReference; + tileInfo: TileInfo; + + addResolvingPromise(promiseToLoad: IPromise): IPromise; + fetchTile(level: number, row: number, column: number, options?: BaseTileLayerFetchTileOptions): IPromise; + getTileBounds(level: number, row: number, column: number, out?: number[]): number[]; + getTileUrl(level: number, row: number, column: number): string | IPromise; + + on(name: "layerview-create", eventHandler: BaseTileLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: BaseTileLayerLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: BaseTileLayerLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: BaseTileLayerLayerviewDestroyEventHandler): IHandle; + } + + interface BaseTileLayerConstructor { + new(properties?: BaseTileLayerProperties): BaseTileLayer; + } + + export const BaseTileLayer: BaseTileLayerConstructor; + + interface BaseTileLayerProperties extends LayerProperties { + spatialReference?: SpatialReferenceProperties; + tileInfo?: TileInfoProperties; + } + interface CodedValueDomain extends Domain { codedValues: CodedValueDomainCodedValues[]; + + getName(code: string | number): string; } interface CodedValueDomainConstructor { new(properties?: CodedValueDomainProperties): CodedValueDomain; - - getName(code: string | number): string; - fromJSON(json: any): CodedValueDomain; } @@ -3134,6 +4069,52 @@ declare namespace __esri { type?: string; } + interface FeatureTemplate extends Accessor, JSONSupport { + description: string; + drawingTool: string; + name: string; + prototype: any; + thumbnail: FeatureTemplateThumbnail; + } + + interface FeatureTemplateConstructor { + new(properties?: FeatureTemplateProperties): FeatureTemplate; + + fromJSON(json: any): FeatureTemplate; + } + + export const FeatureTemplate: FeatureTemplateConstructor; + + interface FeatureTemplateProperties { + description?: string; + drawingTool?: string; + name?: string; + prototype?: any; + thumbnail?: FeatureTemplateThumbnail; + } + + interface FeatureType extends Accessor, JSONSupport { + domains: any; + id: number | string; + name: string; + templates: FeatureTemplate[]; + } + + interface FeatureTypeConstructor { + new(properties?: FeatureTypeProperties): FeatureType; + + fromJSON(json: any): FeatureType; + } + + export const FeatureType: FeatureTypeConstructor; + + interface FeatureTypeProperties { + domains?: any; + id?: number | string; + name?: string; + templates?: FeatureTemplateProperties[]; + } + interface ImageParameters extends Accessor { dpi: number; extent: Extent; @@ -3193,7 +4174,7 @@ declare namespace __esri { useCodedValues: boolean; where: string; - clone(): LabelClass; + clone(): this; } interface LabelClassConstructor { @@ -3374,6 +4355,7 @@ declare namespace __esri { labelingInfo: LabelClass[]; labelsVisible: boolean; layer: MapImageLayer; + legendEnabled: boolean; maxScale: number; minScale: number; opacity: number; @@ -3385,7 +4367,7 @@ declare namespace __esri { url: string; visible: boolean; - clone(): Sublayer; + clone(): this; createQuery(): Query; queryFeatures(params?: Query): IPromise; } @@ -3402,6 +4384,7 @@ declare namespace __esri { labelingInfo?: LabelClassProperties[]; labelsVisible?: boolean; layer?: MapImageLayerProperties; + legendEnabled?: boolean; maxScale?: number; minScale?: number; opacity?: number; @@ -3440,11 +4423,117 @@ declare namespace __esri { spatialReference?: SpatialReferenceProperties; } + interface TileMatrixSet extends Accessor, JSONSupport { + fullExtent: Extent; + id: string; + tileInfo: TileInfo; + + clone(): this; + } + + interface TileMatrixSetConstructor { + new(properties?: TileMatrixSetProperties): TileMatrixSet; + + fromJSON(json: any): TileMatrixSet; + } + + export const TileMatrixSet: TileMatrixSetConstructor; + + interface TileMatrixSetProperties { + fullExtent?: ExtentProperties; + id?: string; + tileInfo?: TileInfoProperties; + } + + interface WMSSublayer { + description: string; + fullExtent: Extent; + id: number; + layer: WMSLayer; + name: string; + popupEnabled: boolean; + spatialReferences: number[]; + sublayers: Collection; + title: string; + visible: boolean; + + clone(): this; + } + + interface WMSSublayerConstructor { + new(properties?: any): WMSSublayer; + } + + export const WMSSublayer: WMSSublayerConstructor; + + interface WMTSStyle extends Accessor, JSONSupport { + description: string; + id: string; + legendUrl: string; + title: string; + + clone(): this; + } + + interface WMTSStyleConstructor { + new(properties?: WMTSStyleProperties): WMTSStyle; + + fromJSON(json: any): WMTSStyle; + } + + export const WMTSStyle: WMTSStyleConstructor; + + interface WMTSStyleProperties { + description?: string; + id?: string; + legendUrl?: string; + title?: string; + } + + interface WMTSSublayer extends Accessor, JSONSupport { + description: string; + fullExtent: Extent; + id: string; + imageFormat: string; + imageFormats: string[]; + layer: WMTSLayer; + styleId: string; + styles: Collection; + tileMatrixSetId: string; + tileMatrixSets: Collection; + title: string; + + clone(): this; + } + + interface WMTSSublayerConstructor { + new(properties?: WMTSSublayerProperties): WMTSSublayer; + + fromJSON(json: any): WMTSSublayer; + } + + export const WMTSSublayer: WMTSSublayerConstructor; + + interface WMTSSublayerProperties { + description?: string; + fullExtent?: ExtentProperties; + id?: string; + imageFormat?: string; + imageFormats?: string[]; + layer?: WMTSLayerProperties; + styleId?: string; + styles?: Collection | any[]; + tileMatrixSetId?: string; + tileMatrixSets?: Collection | any[]; + title?: string; + } + interface Portal extends Accessor, Loadable { access: string; allSSL: boolean; authMode: string; authorizedCrossOriginDomains: string[]; + basemapGalleryGroupQuery: string; bingKey: string; canListApps: boolean; canListData: boolean; @@ -3462,10 +4551,12 @@ declare namespace __esri { customBaseUrl: string; defaultBasemap: Basemap; defaultExtent: Extent; + defaultVectorBasemap: Basemap; description: string; featuredGroups: PortalFeaturedGroups[]; featuredItemsGroupQuery: string; galleryTemplatesGroupQuery: string; + helperServices: any; homePageFeaturedContent: string; homePageFeaturedContentCount: number; httpPort: number; @@ -3495,6 +4586,8 @@ declare namespace __esri { urlKey: string; user: PortalUser; useStandardizedQuery: boolean; + useVectorBasemaps: boolean; + vectorBasemapGalleryGroupQuery: string; fetchBasemaps(): IPromise; fetchFeaturedGroups(): IPromise; @@ -3517,6 +4610,7 @@ declare namespace __esri { allSSL?: boolean; authMode?: string; authorizedCrossOriginDomains?: string[]; + basemapGalleryGroupQuery?: string; bingKey?: string; canListApps?: boolean; canListData?: boolean; @@ -3534,10 +4628,12 @@ declare namespace __esri { customBaseUrl?: string; defaultBasemap?: BasemapProperties; defaultExtent?: ExtentProperties; + defaultVectorBasemap?: BasemapProperties; description?: string; featuredGroups?: PortalFeaturedGroups[]; featuredItemsGroupQuery?: string; galleryTemplatesGroupQuery?: string; + helperServices?: any; homePageFeaturedContent?: string; homePageFeaturedContentCount?: number; httpPort?: number; @@ -3567,6 +4663,8 @@ declare namespace __esri { urlKey?: string; user?: PortalUserProperties; useStandardizedQuery?: boolean; + useVectorBasemaps?: boolean; + vectorBasemapGalleryGroupQuery?: string; } interface PortalFolder extends Accessor { @@ -3602,10 +4700,12 @@ declare namespace __esri { portal: Portal; snippet: string; tags: string[]; + thumbnailUrl: string; title: string; url: string; fetchMembers(): IPromise; + getThumbnailUrl(width?: number): string; queryItems(queryParams?: PortalQueryParams): IPromise; } @@ -3626,6 +4726,7 @@ declare namespace __esri { portal?: PortalProperties; snippet?: string; tags?: string[]; + thumbnailUrl?: string; title?: string; url?: string; } @@ -3665,6 +4766,7 @@ declare namespace __esri { fetchData(responseType?: string): IPromise; fetchRating(): IPromise; fetchRelatedItems(params: PortalItemFetchRelatedItemsParams): IPromise; + getThumbnailUrl(width?: number): string; update(params?: PortalItemUpdateParams): IPromise; } @@ -3731,7 +4833,7 @@ declare namespace __esri { sortOrder: string; start: number; - clone(): PortalQueryParams; + clone(): this; } interface PortalQueryParamsConstructor { @@ -3793,6 +4895,7 @@ declare namespace __esri { fetchFolders(): IPromise; fetchGroups(): IPromise; fetchItems(params: PortalUserFetchItemsParams): IPromise; + getThumbnailUrl(width?: number): string; queryFavorites(queryParams?: PortalQueryParams): IPromise; } @@ -3837,7 +4940,7 @@ declare namespace __esri { valueExpressionTitle: string; addClassBreakInfo(min: number | any, max: number, symbol: Symbol): void; - clone(): ClassBreaksRenderer; + clone(): this; getClassBreakInfo(graphic: Graphic): any; removeClassBreakInfo(min: number, max: number): void; } @@ -3886,7 +4989,7 @@ declare namespace __esri { symbol: Symbol; type: string; - clone(): SimpleRenderer; + clone(): this; } interface SimpleRendererConstructor { @@ -3916,8 +5019,8 @@ declare namespace __esri { valueExpression: string; valueExpressionTitle: string; - addUniqueValueInfo(valueOrInfo: string | any, symbol?: Symbol): void; - clone(): UniqueValueRenderer; + addUniqueValueInfo(valueOrInfo: string | number | any, symbol?: Symbol): void; + clone(): this; getUniqueValueInfo(graphic: Graphic): any; removeUniqueValueInfo(value: string): void; } @@ -3945,8 +5048,11 @@ declare namespace __esri { } interface PointCloudRenderer extends Accessor, JSONSupport { + colorModulation: PointCloudRendererColorModulation; pointSizeAlgorithm: PointCloudRendererPointSizeAlgorithm; pointsPerInch: number; + + clone(): this; } interface PointCloudRendererConstructor { @@ -3958,6 +5064,7 @@ declare namespace __esri { export const PointCloudRenderer: PointCloudRendererConstructor; interface PointCloudRendererProperties { + colorModulation?: PointCloudRendererColorModulation; pointSizeAlgorithm?: PointCloudRendererPointSizeAlgorithm; pointsPerInch?: number; } @@ -4053,7 +5160,7 @@ declare namespace __esri { title: string; visible: boolean; - clone(): Action; + clone(): this; } interface ActionConstructor { @@ -4073,7 +5180,7 @@ declare namespace __esri { interface ExtrudeSymbol3DLayer extends Symbol3DLayer { size: number; - clone(): ExtrudeSymbol3DLayer; + clone(): this; } interface ExtrudeSymbol3DLayerConstructor { @@ -4107,7 +5214,7 @@ declare namespace __esri { interface FillSymbol3DLayer extends Symbol3DLayer { outline: FillSymbol3DLayerOutline; - clone(): FillSymbol3DLayer; + clone(): this; } interface FillSymbol3DLayerConstructor { @@ -4123,7 +5230,7 @@ declare namespace __esri { } interface Font extends Accessor, JSONSupport { - clone(): Font; + clone(): this; } interface FontConstructor { @@ -4142,9 +5249,9 @@ declare namespace __esri { anchor: string; outline: IconSymbol3DLayerOutline; resource: IconSymbol3DLayerResource; - size: number | string; + size: number; - clone(): IconSymbol3DLayer; + clone(): this; } interface IconSymbol3DLayerConstructor { @@ -4159,11 +5266,14 @@ declare namespace __esri { anchor?: string; outline?: IconSymbol3DLayerOutline; resource?: IconSymbol3DLayerResource; - size?: number | string; + size?: number; } interface LabelSymbol3D extends Symbol3D { - clone(): LabelSymbol3D; + callout: Callout3D; + verticalOffset: LabelSymbol3DVerticalOffset; + + clone(): this; } interface LabelSymbol3DConstructor { @@ -4175,7 +5285,8 @@ declare namespace __esri { export const LabelSymbol3D: LabelSymbol3DConstructor; interface LabelSymbol3DProperties extends Symbol3DProperties { - + callout?: Callout3DProperties; + verticalOffset?: LabelSymbol3DVerticalOffsetProperties; } interface LineSymbol extends Symbol { @@ -4197,7 +5308,7 @@ declare namespace __esri { } interface LineSymbol3D extends Symbol3D { - clone(): LineSymbol3D; + clone(): this; } interface LineSymbol3DConstructor { @@ -4213,9 +5324,9 @@ declare namespace __esri { } interface LineSymbol3DLayer extends Symbol3DLayer { - size: number | string; + size: number; - clone(): LineSymbol3DLayer; + clone(): this; } interface LineSymbol3DLayerConstructor { @@ -4227,7 +5338,7 @@ declare namespace __esri { export const LineSymbol3DLayer: LineSymbol3DLayerConstructor; interface LineSymbol3DLayerProperties extends Symbol3DLayerProperties { - size?: number | string; + size?: number; } interface MarkerSymbol extends Symbol { @@ -4251,7 +5362,7 @@ declare namespace __esri { } interface MeshSymbol3D extends Symbol3D { - clone(): MeshSymbol3D; + clone(): this; } interface MeshSymbol3DConstructor { @@ -4272,9 +5383,11 @@ declare namespace __esri { heading: number; height: number; resource: ObjectSymbol3DLayerResource; + roll: number; + tilt: number; width: number; - clone(): ObjectSymbol3DLayer; + clone(): this; } interface ObjectSymbol3DLayerConstructor { @@ -4291,6 +5404,8 @@ declare namespace __esri { heading?: number; height?: number; resource?: ObjectSymbol3DLayerResource; + roll?: number; + tilt?: number; width?: number; } @@ -4302,6 +5417,8 @@ declare namespace __esri { xscale: number; yoffset: number; yscale: number; + + clone(): this; } interface PictureFillSymbolConstructor { @@ -4327,7 +5444,7 @@ declare namespace __esri { url: string; width: number; - clone(): PictureMarkerSymbol; + clone(): this; } interface PictureMarkerSymbolConstructor { @@ -4347,7 +5464,7 @@ declare namespace __esri { interface PathSymbol3DLayer extends Symbol3DLayer { size: number; - clone(): PathSymbol3DLayer; + clone(): this; } interface PathSymbol3DLayerConstructor { @@ -4363,7 +5480,10 @@ declare namespace __esri { } interface PointSymbol3D extends Symbol3D { - clone(): PointSymbol3D; + callout: Callout3D; + verticalOffset: PointSymbol3DVerticalOffset; + + clone(): this; } interface PointSymbol3DConstructor { @@ -4375,11 +5495,12 @@ declare namespace __esri { export const PointSymbol3D: PointSymbol3DConstructor; interface PointSymbol3DProperties extends Symbol3DProperties { - + callout?: Callout3DProperties; + verticalOffset?: PointSymbol3DVerticalOffsetProperties; } interface PolygonSymbol3D extends Symbol3D { - clone(): PolygonSymbol3D; + clone(): this; } interface PolygonSymbol3DConstructor { @@ -4398,7 +5519,7 @@ declare namespace __esri { color: Color; style: string; - clone(): SimpleFillSymbol; + clone(): this; } interface SimpleFillSymbolConstructor { @@ -4420,7 +5541,7 @@ declare namespace __esri { miterLimit: number; style: string; - clone(): SimpleLineSymbol; + clone(): this; } interface SimpleLineSymbolConstructor { @@ -4445,7 +5566,7 @@ declare namespace __esri { size: number; style: string; - clone(): SimpleMarkerSymbol; + clone(): this; } interface SimpleMarkerSymbolConstructor { @@ -4533,7 +5654,7 @@ declare namespace __esri { xoffset: number; yoffset: number; - clone(): TextSymbol; + clone(): this; } interface TextSymbolConstructor { @@ -4564,10 +5685,11 @@ declare namespace __esri { interface TextSymbol3DLayer extends Symbol3DLayer { font: TextSymbol3DLayerFont; - size: number | string; + halo: TextSymbol3DLayerHalo; + size: number; text: string; - clone(): TextSymbol3DLayer; + clone(): this; } interface TextSymbol3DLayerConstructor { @@ -4580,7 +5702,8 @@ declare namespace __esri { interface TextSymbol3DLayerProperties extends Symbol3DLayerProperties { font?: TextSymbol3DLayerFont; - size?: number | string; + halo?: TextSymbol3DLayerHalo; + size?: number; text?: string; } @@ -4590,7 +5713,7 @@ declare namespace __esri { styleName: string; styleUrl: string; - clone(): WebStyleSymbol; + clone(): this; fetchSymbol(): IPromise; } @@ -4609,6 +5732,44 @@ declare namespace __esri { styleUrl?: string; } + interface Callout3D extends Accessor, JSONSupport { + clone(): this; + } + + interface Callout3DConstructor { + new(properties?: Callout3DProperties): Callout3D; + + fromJSON(json: any): Callout3D; + } + + export const Callout3D: Callout3DConstructor; + + interface Callout3DProperties { + + } + + interface LineCallout3D extends Callout3D { + border: LineCallout3DBorder; + color: Color; + size: number; + type: string; + } + + interface LineCallout3DConstructor { + new(properties?: LineCallout3DProperties): LineCallout3D; + + fromJSON(json: any): LineCallout3D; + } + + export const LineCallout3D: LineCallout3DConstructor; + + interface LineCallout3DProperties extends Callout3DProperties { + border?: LineCallout3DBorderProperties; + color?: Color; + size?: number; + type?: string; + } + interface ClosestFacilityTask extends Task { solve(params: ClosestFacilityParameters, requestOptions?: any): IPromise; } @@ -4754,6 +5915,8 @@ declare namespace __esri { } interface QueryTask extends Task { + gdbVersion: string; + execute(params: Query, requestOptions?: any): IPromise; executeForCount(params: Query, requestOptions?: any): IPromise; executeForExtent(params: Query, requestOptions?: any): IPromise; @@ -4768,7 +5931,7 @@ declare namespace __esri { export const QueryTask: QueryTaskConstructor; interface QueryTaskProperties extends TaskProperties { - + gdbVersion?: string; } interface PrintTask extends Task { @@ -5577,6 +6740,7 @@ declare namespace __esri { interface ProjectParameters extends Accessor { geometries: Geometry[]; + outSpatialReference: SpatialReference; outSR: SpatialReference; transformation: ProjectParametersTransformation; transformForward: boolean; @@ -5592,6 +6756,7 @@ declare namespace __esri { interface ProjectParametersProperties { geometries?: GeometryProperties[]; + outSpatialReference?: SpatialReferenceProperties; outSR?: SpatialReferenceProperties; transformation?: ProjectParametersTransformation; transformForward?: boolean; @@ -6160,8 +7325,35 @@ declare namespace __esri { hasEventListener(type: string): boolean; hitTest(screenPoint: MapViewHitTestScreenPoint): IPromise; on(type: string | string[], modifiersOrHandler: string[] | EventHandler, handler?: EventHandler): IHandle; - toMap(screenPoint: ScreenPoint, mapPoint?: Point): Point; + toMap(screenPoint: MapViewToMapScreenPoint): Point; toScreen(point: Point, screenPoint?: ScreenPoint): ScreenPoint; + + on(name: "resize", eventHandler: MapViewResizeEventHandler): IHandle; + on(name: "resize", modifiers: string[], eventHandler: MapViewResizeEventHandler): IHandle; + on(name: "layerview-create", eventHandler: MapViewLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: MapViewLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: MapViewLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: MapViewLayerviewDestroyEventHandler): IHandle; + on(name: "click", eventHandler: MapViewClickEventHandler): IHandle; + on(name: "click", modifiers: string[], eventHandler: MapViewClickEventHandler): IHandle; + on(name: "double-click", eventHandler: MapViewDoubleClickEventHandler): IHandle; + on(name: "double-click", modifiers: string[], eventHandler: MapViewDoubleClickEventHandler): IHandle; + on(name: "hold", eventHandler: MapViewHoldEventHandler): IHandle; + on(name: "hold", modifiers: string[], eventHandler: MapViewHoldEventHandler): IHandle; + on(name: "drag", eventHandler: MapViewDragEventHandler): IHandle; + on(name: "drag", modifiers: string[], eventHandler: MapViewDragEventHandler): IHandle; + on(name: "mouse-wheel", eventHandler: MapViewMouseWheelEventHandler): IHandle; + on(name: "mouse-wheel", modifiers: string[], eventHandler: MapViewMouseWheelEventHandler): IHandle; + on(name: "key-down", eventHandler: MapViewKeyDownEventHandler): IHandle; + on(name: "key-down", modifiers: string[], eventHandler: MapViewKeyDownEventHandler): IHandle; + on(name: "key-up", eventHandler: MapViewKeyUpEventHandler): IHandle; + on(name: "key-up", modifiers: string[], eventHandler: MapViewKeyUpEventHandler): IHandle; + on(name: "pointer-down", eventHandler: MapViewPointerDownEventHandler): IHandle; + on(name: "pointer-down", modifiers: string[], eventHandler: MapViewPointerDownEventHandler): IHandle; + on(name: "pointer-move", eventHandler: MapViewPointerMoveEventHandler): IHandle; + on(name: "pointer-move", modifiers: string[], eventHandler: MapViewPointerMoveEventHandler): IHandle; + on(name: "pointer-up", eventHandler: MapViewPointerUpEventHandler): IHandle; + on(name: "pointer-up", modifiers: string[], eventHandler: MapViewPointerUpEventHandler): IHandle; } interface MapViewConstructor { @@ -6188,6 +7380,7 @@ declare namespace __esri { constraints: SceneViewConstraints; environment: SceneViewEnvironment; extent: Extent; + highlightOptions: SceneViewHighlightOptions; qualityProfile: string; scale: number; viewingMode: string; @@ -6198,8 +7391,35 @@ declare namespace __esri { hasEventListener(type: string): boolean; hitTest(screenPoint: SceneViewHitTestScreenPoint): IPromise; on(type: string | string[], modifiersOrHandler: string[] | EventHandler, handler?: EventHandler): IHandle; - toMap(screenPoint: ScreenPoint, mapPoint?: Point): Point; + toMap(screenPoint: SceneViewToMapScreenPoint, mapPoint?: Point): Point; toScreen(point: Point, screenPoint?: ScreenPoint): ScreenPoint; + + on(name: "resize", eventHandler: SceneViewResizeEventHandler): IHandle; + on(name: "resize", modifiers: string[], eventHandler: SceneViewResizeEventHandler): IHandle; + on(name: "layerview-create", eventHandler: SceneViewLayerviewCreateEventHandler): IHandle; + on(name: "layerview-create", modifiers: string[], eventHandler: SceneViewLayerviewCreateEventHandler): IHandle; + on(name: "layerview-destroy", eventHandler: SceneViewLayerviewDestroyEventHandler): IHandle; + on(name: "layerview-destroy", modifiers: string[], eventHandler: SceneViewLayerviewDestroyEventHandler): IHandle; + on(name: "click", eventHandler: SceneViewClickEventHandler): IHandle; + on(name: "click", modifiers: string[], eventHandler: SceneViewClickEventHandler): IHandle; + on(name: "double-click", eventHandler: SceneViewDoubleClickEventHandler): IHandle; + on(name: "double-click", modifiers: string[], eventHandler: SceneViewDoubleClickEventHandler): IHandle; + on(name: "hold", eventHandler: SceneViewHoldEventHandler): IHandle; + on(name: "hold", modifiers: string[], eventHandler: SceneViewHoldEventHandler): IHandle; + on(name: "drag", eventHandler: SceneViewDragEventHandler): IHandle; + on(name: "drag", modifiers: string[], eventHandler: SceneViewDragEventHandler): IHandle; + on(name: "mouse-wheel", eventHandler: SceneViewMouseWheelEventHandler): IHandle; + on(name: "mouse-wheel", modifiers: string[], eventHandler: SceneViewMouseWheelEventHandler): IHandle; + on(name: "key-down", eventHandler: SceneViewKeyDownEventHandler): IHandle; + on(name: "key-down", modifiers: string[], eventHandler: SceneViewKeyDownEventHandler): IHandle; + on(name: "key-up", eventHandler: SceneViewKeyUpEventHandler): IHandle; + on(name: "key-up", modifiers: string[], eventHandler: SceneViewKeyUpEventHandler): IHandle; + on(name: "pointer-down", eventHandler: SceneViewPointerDownEventHandler): IHandle; + on(name: "pointer-down", modifiers: string[], eventHandler: SceneViewPointerDownEventHandler): IHandle; + on(name: "pointer-move", eventHandler: SceneViewPointerMoveEventHandler): IHandle; + on(name: "pointer-move", modifiers: string[], eventHandler: SceneViewPointerMoveEventHandler): IHandle; + on(name: "pointer-up", eventHandler: SceneViewPointerUpEventHandler): IHandle; + on(name: "pointer-up", modifiers: string[], eventHandler: SceneViewPointerUpEventHandler): IHandle; } interface SceneViewConstructor { @@ -6215,6 +7435,7 @@ declare namespace __esri { constraints?: SceneViewConstraintsProperties; environment?: SceneViewEnvironmentProperties; extent?: ExtentProperties; + highlightOptions?: SceneViewHighlightOptions; qualityProfile?: string; scale?: number; viewingMode?: string; @@ -6299,7 +7520,26 @@ declare namespace __esri { visible?: boolean; } + interface CSVLayerView extends LayerView { + highlight(target?: Graphic | Graphic[]): any; + queryExtent(params?: Query): IPromise; + queryFeatureCount(params?: Query): IPromise; + queryFeatures(params?: Query): IPromise; + queryObjectIds(params?: Query): IPromise; + } + + interface CSVLayerViewConstructor { + new(properties?: CSVLayerViewProperties): CSVLayerView; + } + + export const CSVLayerView: CSVLayerViewConstructor; + + interface CSVLayerViewProperties extends LayerViewProperties { + + } + interface FeatureLayerView extends LayerView { + highlight(target?: Graphic | Graphic[] | number | number[]): any; queryExtent(params?: Query): IPromise; queryFeatureCount(params?: Query): IPromise; queryFeatures(params?: Query): IPromise; @@ -6317,6 +7557,7 @@ declare namespace __esri { } interface GraphicsLayerView extends LayerView { + highlight(target?: Graphic | Graphic[] | number | number[]): any; queryGraphics(): IPromise; } @@ -6345,6 +7586,7 @@ declare namespace __esri { } interface SceneLayerView extends LayerView { + highlight(target?: Graphic | Graphic[] | number | number[]): any; queryExtent(params?: Query): IPromise; queryFeatureCount(params?: Query): IPromise; queryFeatures(params?: Query): IPromise; @@ -6361,6 +7603,33 @@ declare namespace __esri { } + interface StreamLayerView extends Accessor, Evented { + connectionError: Error; + connectionStatus: string; + filter: StreamLayerViewFilter; + graphics: Collection; + + connect(): IPromise; + disconnect(): void; + updateFilter(filter: StreamLayerViewUpdateFilterFilter): IPromise; + + on(name: "data-received", eventHandler: StreamLayerViewDataReceivedEventHandler): IHandle; + on(name: "data-received", modifiers: string[], eventHandler: StreamLayerViewDataReceivedEventHandler): IHandle; + } + + interface StreamLayerViewConstructor { + new(properties?: StreamLayerViewProperties): StreamLayerView; + } + + export const StreamLayerView: StreamLayerViewConstructor; + + interface StreamLayerViewProperties { + connectionError?: Error; + connectionStatus?: string; + filter?: StreamLayerViewFilter; + graphics?: Collection | any[]; + } + interface UI extends Accessor { container: any; height: number; @@ -6406,7 +7675,7 @@ declare namespace __esri { spatialReference: SpatialReference; viewpoint: Viewpoint; - clone(): InitialViewProperties; + clone(): this; } interface InitialViewPropertiesConstructor { @@ -6423,7 +7692,7 @@ declare namespace __esri { interface Environment extends Accessor { lighting: Lighting; - clone(): Environment; + clone(): this; } interface EnvironmentConstructor { @@ -6442,7 +7711,7 @@ declare namespace __esri { viewingMode: string; viewpoint: Viewpoint; - clone(): websceneInitialViewProperties; + clone(): this; } interface websceneInitialViewPropertiesConstructor { @@ -6463,7 +7732,7 @@ declare namespace __esri { directShadowsEnabled: boolean; displayUTCOffset: number; - clone(): Lighting; + clone(): this; } interface LightingConstructor { @@ -6481,7 +7750,7 @@ declare namespace __esri { interface Presentation extends Accessor { slides: Collection; - clone(): Presentation; + clone(): this; } interface PresentationConstructor { @@ -6504,8 +7773,8 @@ declare namespace __esri { viewpoint: Viewpoint; visibleLayers: SlideVisibleLayers; - applyTo(view: SceneView, options?: SlideApplyToOptions): void; - clone(): Slide; + applyTo(view: SceneView, options?: SlideApplyToOptions): IPromise; + clone(): this; updateFrom(view: SceneView, options?: SlideUpdateFromOptions): IPromise; } @@ -6654,6 +7923,8 @@ declare namespace __esri { } interface Expand extends Widget { + autoCollapse: boolean; + collapseIconClass: string; collapseTooltip: string; content: any; expanded: boolean; @@ -6676,8 +7947,10 @@ declare namespace __esri { export const Expand: ExpandConstructor; interface ExpandProperties extends WidgetProperties { + autoCollapse?: boolean; + collapseIconClass?: string; collapseTooltip?: string; - content?: any | any | string | Widget; + content?: any | string | Widget; expanded?: boolean; expandIconClass?: string; expandTooltip?: string; @@ -6709,6 +7982,7 @@ declare namespace __esri { interface LayerList extends Widget { createActionsFunction: Function; + listItemCreatedFunction: Function; operationalItems: Collection; view: MapView | SceneView; viewModel: LayerListViewModel; @@ -6725,14 +7999,17 @@ declare namespace __esri { interface LayerListProperties extends WidgetProperties { createActionsFunction?: Function; + listItemCreatedFunction?: Function; operationalItems?: Collection | any[]; view?: MapView | SceneView; viewModel?: LayerListViewModelProperties; } - interface Legend extends Accessor, Widgette { + interface Legend extends Widget { layerInfos: LegendLayerInfos[]; view: MapView | SceneView; + + render(): any; } interface LegendConstructor { @@ -6741,7 +8018,7 @@ declare namespace __esri { export const Legend: LegendConstructor; - interface LegendProperties extends WidgetteProperties { + interface LegendProperties extends WidgetProperties { layerInfos?: LegendLayerInfos[]; view?: MapView | SceneView; } @@ -6800,6 +8077,7 @@ declare namespace __esri { dockOptions: PopupDockOptions; featureCount: number; features: Graphic[]; + highlightEnabled: boolean; location: Point; promises: IPromise[]; selectedFeature: Graphic; @@ -6831,6 +8109,7 @@ declare namespace __esri { dockOptions?: PopupDockOptions; featureCount?: number; features?: GraphicProperties[]; + highlightEnabled?: boolean; location?: PointProperties; promises?: IPromise[]; selectedFeature?: GraphicProperties; @@ -6901,13 +8180,15 @@ declare namespace __esri { searching: boolean; searchTerm: string; selectedResult: any; - sources: SearchSources; + sources: Collection; suggestions: any[]; suggestionsEnabled: boolean; view: MapView | SceneView; viewModel: SearchViewModel; + blur(): void; clear(): void; + focus(): void; render(): any; search(searchTerm?: string | Geometry | any | number[][]): IPromise; suggest(value?: string): IPromise; @@ -6938,7 +8219,7 @@ declare namespace __esri { searching?: boolean; searchTerm?: string; selectedResult?: any; - sources?: SearchSources; + sources?: Collection | any[]; suggestions?: any[]; suggestionsEnabled?: boolean; view?: MapView | SceneView; @@ -7146,6 +8427,9 @@ declare namespace __esri { interface BasemapToggleViewModelConstructor { new(properties?: BasemapToggleViewModelProperties): BasemapToggleViewModel; + + + getThumbnailUrl(basemap: Basemap): string; } export const BasemapToggleViewModel: BasemapToggleViewModelConstructor; @@ -7178,6 +8462,7 @@ declare namespace __esri { } interface ExpandViewModel extends Accessor { + autoCollapse: boolean; expanded: boolean; state: string; view: MapView | SceneView; @@ -7190,6 +8475,7 @@ declare namespace __esri { export const ExpandViewModel: ExpandViewModelConstructor; interface ExpandViewModelProperties { + autoCollapse?: boolean; expanded?: boolean; state?: string; view?: MapView | SceneView; @@ -7217,6 +8503,7 @@ declare namespace __esri { interface LayerListViewModel extends Accessor { createActionsFunction: Function; + listItemCreatedFunction: Function; operationalItems: Collection; state: string; view: MapView | SceneView; @@ -7232,6 +8519,7 @@ declare namespace __esri { interface LayerListViewModelProperties { createActionsFunction?: Function; + listItemCreatedFunction?: Function; operationalItems?: Collection | any[]; state?: string; view?: MapView | SceneView; @@ -7243,6 +8531,7 @@ declare namespace __esri { children: Collection; error: Error; layer: Layer; + layerView: LayerView; open: boolean; title: string; updating: boolean; @@ -7251,7 +8540,7 @@ declare namespace __esri { visible: boolean; visibleAtCurrentScale: boolean; - clone(): ListItem; + clone(): this; } interface ListItemConstructor { @@ -7321,6 +8610,7 @@ declare namespace __esri { content: string; featureCount: number; features: Graphic[]; + highlightEnabled: boolean; location: Point; pendingPromisesCount: number; promises: IPromise[]; @@ -7347,6 +8637,7 @@ declare namespace __esri { content?: string | any; featureCount?: number; features?: GraphicProperties[]; + highlightEnabled?: boolean; location?: PointProperties; pendingPromisesCount?: number; promises?: IPromise[]; @@ -7376,7 +8667,7 @@ declare namespace __esri { activeSourceIndex: number; allPlaceholder: string; autoSelect: boolean; - defaultSource: any; + defaultSource: any | any; maxInputLength: number; maxResults: number; maxSuggestions: number; @@ -7391,7 +8682,7 @@ declare namespace __esri { searchAllEnabled: boolean; searchTerm: string; selectedResult: any; - sources: SearchViewModelSources[]; + sources: Collection; suggestionDelay: number; suggestions: any[]; suggestionsEnabled: boolean; @@ -7401,6 +8692,21 @@ declare namespace __esri { clear(): void; search(searchTerm?: string | Geometry | any | number[][]): IPromise; suggest(value?: string): IPromise; + + on(name: "suggest-complete", eventHandler: SearchViewModelSuggestCompleteEventHandler): IHandle; + on(name: "suggest-complete", modifiers: string[], eventHandler: SearchViewModelSuggestCompleteEventHandler): IHandle; + on(name: "search-clear", eventHandler: SearchViewModelSearchClearEventHandler): IHandle; + on(name: "search-clear", modifiers: string[], eventHandler: SearchViewModelSearchClearEventHandler): IHandle; + on(name: "search-start", eventHandler: SearchViewModelSearchStartEventHandler): IHandle; + on(name: "search-start", modifiers: string[], eventHandler: SearchViewModelSearchStartEventHandler): IHandle; + on(name: "suggest-start", eventHandler: SearchViewModelSuggestStartEventHandler): IHandle; + on(name: "suggest-start", modifiers: string[], eventHandler: SearchViewModelSuggestStartEventHandler): IHandle; + on(name: "load", eventHandler: SearchViewModelLoadEventHandler): IHandle; + on(name: "load", modifiers: string[], eventHandler: SearchViewModelLoadEventHandler): IHandle; + on(name: "search-complete", eventHandler: SearchViewModelSearchCompleteEventHandler): IHandle; + on(name: "search-complete", modifiers: string[], eventHandler: SearchViewModelSearchCompleteEventHandler): IHandle; + on(name: "select-result", eventHandler: SearchViewModelSelectResultEventHandler): IHandle; + on(name: "select-result", modifiers: string[], eventHandler: SearchViewModelSelectResultEventHandler): IHandle; } interface SearchViewModelConstructor { @@ -7414,7 +8720,7 @@ declare namespace __esri { activeSourceIndex?: number; allPlaceholder?: string; autoSelect?: boolean; - defaultSource?: any; + defaultSource?: any | any; maxInputLength?: number; maxResults?: number; maxSuggestions?: number; @@ -7429,7 +8735,7 @@ declare namespace __esri { searchAllEnabled?: boolean; searchTerm?: string; selectedResult?: any; - sources?: SearchViewModelSources[]; + sources?: Collection | any[]; suggestionDelay?: number; suggestions?: any[]; suggestionsEnabled?: boolean; @@ -7548,7 +8854,8 @@ declare namespace __esri { portalItem: PortalItem; url: string; - getImageUrl(extent: Extent, width: number, height: number, callback: Function): string; + fetchImage(extent: Extent, width: number, height: number, options?: DynamicLayerFetchImageOptions): IPromise; + getImageUrl(extent: Extent, width: number, height: number, options?: DynamicLayerGetImageUrlOptions): IPromise | string; } interface DynamicLayerConstructor { @@ -7558,14 +8865,12 @@ declare namespace __esri { export const DynamicLayer: DynamicLayerConstructor; interface DynamicLayerProperties { - portalItem?: PortalItem; + portalItem?: PortalItemProperties; url?: string; } interface TiledLayer { tileInfo: TileInfo; - - getTileUrl(level: number, row: number, col: number): string; } interface TiledLayerConstructor { @@ -7615,7 +8920,7 @@ declare namespace __esri { createServiceSublayers(): Collection; findSublayerById(id: number): Sublayer; - getExportImageParameters(options: ArcGISDynamicMapServiceGetExportImageParametersOptions): any; + getExportImageParameters(extent: Extent, width: number, height: number, options?: ArcGISDynamicMapServiceGetExportImageParametersOptions): any; } interface ArcGISDynamicMapServiceConstructor { @@ -7646,6 +8951,8 @@ declare namespace __esri { fullExtent: Extent; hasMultidimensions: boolean; hasRasterAttributeTable: boolean; + imageMaxHeight: number; + imageMaxWidth: number; mosaicRule: MosaicRule; multidimensionalInfo: any; pixelType: string; @@ -7658,6 +8965,7 @@ declare namespace __esri { url: string; version: number; + fetchImage(extent: Extent, width: number, height: number): IPromise; fromJSON(json: any): any; toJSON(): any; } @@ -7681,6 +8989,8 @@ declare namespace __esri { fullExtent?: ExtentProperties; hasMultidimensions?: boolean; hasRasterAttributeTable?: boolean; + imageMaxHeight?: number; + imageMaxWidth?: number; mosaicRule?: MosaicRuleProperties; multidimensionalInfo?: any; pixelType?: string; @@ -7850,11 +9160,11 @@ declare namespace __esri { interface DOMContainerProperties { container?: HTMLDivElement | string; height?: number; - popup?: Popup; + popup?: PopupProperties; resizing?: boolean; size?: number[]; suspended?: boolean; - ui?: DefaultUI; + ui?: DefaultUIProperties; width?: number; } @@ -7892,7 +9202,7 @@ declare namespace __esri { interface GeolocationPositioningProperties { geolocationOptions?: any; goToLocationEnabled?: boolean; - graphic?: Graphic; + graphic?: GraphicProperties; view?: MapView | SceneView; } @@ -8113,6 +9423,12 @@ declare namespace __esri { export const size: size; + interface type { + createRenderer(params: typeCreateRendererParams): IPromise; + } + + export const type: type; + interface univariateColorSize { createContinuousRenderer(params: univariateColorSizeCreateContinuousRendererParams): IPromise; createVisualVariables(params: univariateColorSizeCreateVisualVariablesParams): IPromise; @@ -8124,7 +9440,9 @@ declare namespace __esri { classBreaks(params: classBreaksClassBreaksParams): IPromise; } - export const classBreaks: classBreaks; + const __classBreaksMapped: classBreaks; + export const classBreaks: typeof __classBreaksMapped.classBreaks; + interface histogram { histogram(params: histogramHistogramParams): IPromise; @@ -8142,6 +9460,14 @@ declare namespace __esri { export const summaryStatistics: typeof __summaryStatisticsMapped.summaryStatistics; + interface uniqueValues { + uniqueValues(params: uniqueValuesUniqueValuesParams): IPromise; + } + + const __uniqueValuesMapped: uniqueValues; + export const uniqueValues: typeof __uniqueValuesMapped.uniqueValues; + + interface symbologyColor { cloneScheme(scheme: any): any; flipColors(scheme: any): any; @@ -8165,6 +9491,13 @@ declare namespace __esri { export const symbologySize: symbologySize; + interface symbologyType { + cloneScheme(scheme: any | any | any): any; + getSchemes(params: typeGetSchemesParams): any; + } + + export const symbologyType: symbologyType; + interface supportJsonUtils { fromJSON(json: any): Renderer; } @@ -8191,8 +9524,8 @@ declare namespace __esri { interface widget { accessibleHandler(): Function; join(...classNames: string[]): string; - jsxFactory(selector: string, properties?: any, children?: any): any; renderable(propertyName?: string | string[]): Function; + tsx(selector: string, properties?: any, children?: any): any; vmEvent(eventNames: string | string[]): Function; } @@ -8225,170 +9558,88 @@ declare namespace __esri { } declare module "esri" { - export import Text = __esri.Text; - - export import Media = __esri.Media; - - export import Fields = __esri.Fields; - - export import Attachments = __esri.Attachments; - - export import WatchHandle = __esri.WatchHandle; - - export import EachAlwaysResult = __esri.EachAlwaysResult; - - export import PausableWatchHandle = __esri.PausableWatchHandle; - - export import FeatureEditResult = __esri.FeatureEditResult; - - export import AttributeParamValue = __esri.AttributeParamValue; - - export import DataWorkspace = __esri.DataWorkspace; - - export import GroupMembership = __esri.GroupMembership; - - export import HoldType = __esri.HoldType; - - export import JobPriority = __esri.JobPriority; - - export import JobQuery = __esri.JobQuery; - - export import JobStatus = __esri.JobStatus; - - export import JobQueryContainer = __esri.JobQueryContainer; - - export import JobQueryDetails = __esri.JobQueryDetails; - - export import Privilege = __esri.Privilege; - - export import UserDetails = __esri.UserDetails; - - export import VersionInfo = __esri.VersionInfo; - - export import WorkflowManagerServiceInfo = __esri.WorkflowManagerServiceInfo; - - export import JobType = __esri.JobType; - - export import JobTypeDetails = __esri.JobTypeDetails; - - export import TableRelationship = __esri.TableRelationship; - - export import JobCreationParameters = __esri.JobCreationParameters; - - export import JobQueryParameters = __esri.JobQueryParameters; - - export import JobUpdateParameters = __esri.JobUpdateParameters; - - export import AuxRecordDescription = __esri.AuxRecordDescription; - - export import ActivityType = __esri.ActivityType; - - export import AuxRecordContainer = __esri.AuxRecordContainer; - - export import JobTaskJobInfo = __esri.JobTaskJobInfo; - - export import QueryResult = __esri.QueryResult; - - export import AuxRecord = __esri.AuxRecord; - - export import AuxRecordValue = __esri.AuxRecordValue; - - export import FieldValue = __esri.FieldValue; - - export import JobVersionInfo = __esri.JobVersionInfo; - - export import QueryFieldInfo = __esri.QueryFieldInfo; - - export import JobAttachment = __esri.JobAttachment; - - export import JobDependency = __esri.JobDependency; - - export import ChangeRule = __esri.ChangeRule; - - export import DataSetEvaluator = __esri.DataSetEvaluator; - - export import AOIEvaluator = __esri.AOIEvaluator; - - export import DatasetConfiguration = __esri.DatasetConfiguration; - - export import EmailNotifier = __esri.EmailNotifier; - - export import WhereCondition = __esri.WhereCondition; - - export import NotificationType = __esri.NotificationType; - - export import ChangeRuleMatch = __esri.ChangeRuleMatch; - - export import ReportDataGroup = __esri.ReportDataGroup; - - export import ReportData = __esri.ReportData; - - export import Report = __esri.Report; - - export import ExecuteInfo = __esri.ExecuteInfo; - - export import Step = __esri.Step; - - export import StepType = __esri.StepType; - - export import WorkflowDisplayDetails = __esri.WorkflowDisplayDetails; - - export import WorkflowOption = __esri.WorkflowOption; - - export import WorkflowStepInfo = __esri.WorkflowStepInfo; - - export import WorkflowAnnotationDisplayDetails = __esri.WorkflowAnnotationDisplayDetails; - - export import WorkflowConflicts = __esri.WorkflowConflicts; - - export import WorkflowPathDisplayDetails = __esri.WorkflowPathDisplayDetails; - - export import WorkflowStepDisplayDetails = __esri.WorkflowStepDisplayDetails; - - export import ExternalRenderer = __esri.ExternalRenderer; - - export import RenderContext = __esri.RenderContext; - - export import RenderCamera = __esri.RenderCamera; - - export import SunLight = __esri.SunLight; - - export import ColorAndIntensity = __esri.ColorAndIntensity; - - export import LocatorSource = __esri.LocatorSource; - - export import FeatureLayerSource = __esri.FeatureLayerSource; - - export import GetHeader = __esri.GetHeader; - - export import WatchCallback = __esri.WatchCallback; - + export import PromisedWatchHandle = __esri.PromisedWatchHandle; export import ItemCallback = __esri.ItemCallback; - export import ItemTestCallback = __esri.ItemTestCallback; + export import ItemCompareCallback = __esri.ItemCompareCallback; export import ItemMapCallback = __esri.ItemMapCallback; export import ItemReduceCallback = __esri.ItemReduceCallback; - export import ItemCompareCallback = __esri.ItemCompareCallback; + export import ItemTestCallback = __esri.ItemTestCallback; - export import EventAttachedCallback = __esri.EventAttachedCallback; + export import PortalItemFetchRelatedItemsParams = __esri.PortalItemFetchRelatedItemsParams; - export import HandlerCallback = __esri.HandlerCallback; + export import PortalItemUpdateParams = __esri.PortalItemUpdateParams; - export import EasingFunction = __esri.EasingFunction; + export import PortalUserAddItemParams = __esri.PortalUserAddItemParams; - export import EventHandler = __esri.EventHandler; + export import PortalUserFetchItemsParams = __esri.PortalUserFetchItemsParams; - export import PromisedWatchHandle = __esri.PromisedWatchHandle; + export import PortalFeaturedGroups = __esri.PortalFeaturedGroups; export import GroundQueryElevationOptions = __esri.GroundQueryElevationOptions; + export import PopupTemplateExpressionInfos = __esri.PopupTemplateExpressionInfos; + export import PopupTemplateFieldInfos = __esri.PopupTemplateFieldInfos; export import PopupTemplateFieldInfosFormat = __esri.PopupTemplateFieldInfosFormat; + export import FeatureLayerApplyEditsEdits = __esri.FeatureLayerApplyEditsEdits; + + export import FeatureLayerCapabilities = __esri.FeatureLayerCapabilities; + + export import FeatureLayerCapabilitiesData = __esri.FeatureLayerCapabilitiesData; + + export import FeatureLayerCapabilitiesEditing = __esri.FeatureLayerCapabilitiesEditing; + + export import FeatureLayerCapabilitiesOperations = __esri.FeatureLayerCapabilitiesOperations; + + export import FeatureLayerCapabilitiesQuery = __esri.FeatureLayerCapabilitiesQuery; + + export import FeatureLayerCapabilitiesQueryRelated = __esri.FeatureLayerCapabilitiesQueryRelated; + + export import FeatureLayerElevationInfo = __esri.FeatureLayerElevationInfo; + + export import FeatureLayerFeatureReduction = __esri.FeatureLayerFeatureReduction; + + export import FeatureLayerGetFieldDomainOptions = __esri.FeatureLayerGetFieldDomainOptions; + + export import FeatureLayerLayerviewCreateEvent = __esri.FeatureLayerLayerviewCreateEvent; + + export import FeatureLayerLayerviewCreateEventHandler = __esri.FeatureLayerLayerviewCreateEventHandler; + + export import FeatureLayerLayerviewDestroyEvent = __esri.FeatureLayerLayerviewDestroyEvent; + + export import FeatureLayerLayerviewDestroyEventHandler = __esri.FeatureLayerLayerviewDestroyEventHandler; + + export import GraphicsLayerElevationInfo = __esri.GraphicsLayerElevationInfo; + + export import GraphicsLayerLayerviewCreateEvent = __esri.GraphicsLayerLayerviewCreateEvent; + + export import GraphicsLayerLayerviewCreateEventHandler = __esri.GraphicsLayerLayerviewCreateEventHandler; + + export import GraphicsLayerLayerviewDestroyEvent = __esri.GraphicsLayerLayerviewDestroyEvent; + + export import GraphicsLayerLayerviewDestroyEventHandler = __esri.GraphicsLayerLayerviewDestroyEventHandler; + + export import LayerFromArcGISServerUrlParams = __esri.LayerFromArcGISServerUrlParams; + + export import LayerFromPortalItemParams = __esri.LayerFromPortalItemParams; + + export import FeatureTemplateThumbnail = __esri.FeatureTemplateThumbnail; + + export import LabelClassLabelExpressionInfo = __esri.LabelClassLabelExpressionInfo; + + export import LabelSymbol3DVerticalOffsetProperties = __esri.LabelSymbol3DVerticalOffsetProperties; + export import LabelSymbol3DVerticalOffset = __esri.LabelSymbol3DVerticalOffset; + + export import QueryQuantizationParameters = __esri.QueryQuantizationParameters; + + export import ViewPadding = __esri.ViewPadding; + export import WebMapSourceVersion = __esri.WebMapSourceVersion; export import WebSceneSaveAsOptions = __esri.WebSceneSaveAsOptions; @@ -8399,6 +9650,99 @@ declare module "esri" { export import WebSceneUpdateFromOptions = __esri.WebSceneUpdateFromOptions; + export import EventHandler = __esri.EventHandler; + + export import SceneViewDragEventOrigin = __esri.SceneViewDragEventOrigin; + + export import SceneViewClickEvent = __esri.SceneViewClickEvent; + + export import SceneViewClickEventHandler = __esri.SceneViewClickEventHandler; + + export import SceneViewDoubleClickEvent = __esri.SceneViewDoubleClickEvent; + + export import SceneViewDoubleClickEventHandler = __esri.SceneViewDoubleClickEventHandler; + + export import SceneViewDragEvent = __esri.SceneViewDragEvent; + + export import SceneViewDragEventHandler = __esri.SceneViewDragEventHandler; + + export import EasingFunction = __esri.EasingFunction; + + export import SceneViewHoldEvent = __esri.SceneViewHoldEvent; + + export import SceneViewHoldEventHandler = __esri.SceneViewHoldEventHandler; + + export import SceneViewKeyDownEvent = __esri.SceneViewKeyDownEvent; + + export import SceneViewKeyDownEventHandler = __esri.SceneViewKeyDownEventHandler; + + export import SceneViewKeyUpEvent = __esri.SceneViewKeyUpEvent; + + export import SceneViewKeyUpEventHandler = __esri.SceneViewKeyUpEventHandler; + + export import SceneViewLayerviewCreateEvent = __esri.SceneViewLayerviewCreateEvent; + + export import SceneViewLayerviewCreateEventHandler = __esri.SceneViewLayerviewCreateEventHandler; + + export import SceneViewLayerviewDestroyEvent = __esri.SceneViewLayerviewDestroyEvent; + + export import SceneViewLayerviewDestroyEventHandler = __esri.SceneViewLayerviewDestroyEventHandler; + + export import SceneViewMouseWheelEvent = __esri.SceneViewMouseWheelEvent; + + export import SceneViewMouseWheelEventHandler = __esri.SceneViewMouseWheelEventHandler; + + export import SceneViewPointerDownEvent = __esri.SceneViewPointerDownEvent; + + export import SceneViewPointerDownEventHandler = __esri.SceneViewPointerDownEventHandler; + + export import SceneViewPointerMoveEvent = __esri.SceneViewPointerMoveEvent; + + export import SceneViewPointerMoveEventHandler = __esri.SceneViewPointerMoveEventHandler; + + export import SceneViewPointerUpEvent = __esri.SceneViewPointerUpEvent; + + export import SceneViewPointerUpEventHandler = __esri.SceneViewPointerUpEventHandler; + + export import SceneViewResizeEvent = __esri.SceneViewResizeEvent; + + export import SceneViewResizeEventHandler = __esri.SceneViewResizeEventHandler; + + export import SceneViewConstraintsProperties = __esri.SceneViewConstraintsProperties; + export import SceneViewConstraints = __esri.SceneViewConstraints; + + export import SceneViewConstraintsAltitudeProperties = __esri.SceneViewConstraintsAltitudeProperties; + export import SceneViewConstraintsAltitude = __esri.SceneViewConstraintsAltitude; + + export import SceneViewConstraintsClipDistanceProperties = __esri.SceneViewConstraintsClipDistanceProperties; + export import SceneViewConstraintsClipDistance = __esri.SceneViewConstraintsClipDistance; + + export import SceneViewConstraintsCollision = __esri.SceneViewConstraintsCollision; + + export import SceneViewConstraintsTiltProperties = __esri.SceneViewConstraintsTiltProperties; + export import SceneViewConstraintsTilt = __esri.SceneViewConstraintsTilt; + + export import SceneViewEnvironmentProperties = __esri.SceneViewEnvironmentProperties; + export import SceneViewEnvironment = __esri.SceneViewEnvironment; + + export import SceneViewEnvironmentAtmosphereProperties = __esri.SceneViewEnvironmentAtmosphereProperties; + export import SceneViewEnvironmentAtmosphere = __esri.SceneViewEnvironmentAtmosphere; + + export import SceneViewEnvironmentLightingProperties = __esri.SceneViewEnvironmentLightingProperties; + export import SceneViewEnvironmentLighting = __esri.SceneViewEnvironmentLighting; + + export import SceneViewGoToOptions = __esri.SceneViewGoToOptions; + + export import SceneViewHighlightOptions = __esri.SceneViewHighlightOptions; + + export import SceneViewHitTestScreenPoint = __esri.SceneViewHitTestScreenPoint; + + export import SceneViewToMapScreenPoint = __esri.SceneViewToMapScreenPoint; + + export import WatchHandle = __esri.WatchHandle; + + export import WatchCallback = __esri.WatchCallback; + export import IdentityManagerBaseGenerateTokenOptions = __esri.IdentityManagerBaseGenerateTokenOptions; export import IdentityManagerBaseGetCredentialOptions = __esri.IdentityManagerBaseGetCredentialOptions; @@ -8413,54 +9757,232 @@ declare module "esri" { export import IdentityManagerBaseSignInOptions = __esri.IdentityManagerBaseSignInOptions; - export import ElevationLayerQueryElevationOptions = __esri.ElevationLayerQueryElevationOptions; + export import IdentityManagerCredentialCreateEvent = __esri.IdentityManagerCredentialCreateEvent; + + export import IdentityManagerCredentialCreateEventHandler = __esri.IdentityManagerCredentialCreateEventHandler; + + export import IdentityManagerCredentialsDestroyEvent = __esri.IdentityManagerCredentialsDestroyEvent; + + export import IdentityManagerCredentialsDestroyEventHandler = __esri.IdentityManagerCredentialsDestroyEventHandler; + + export import HandlerCallback = __esri.HandlerCallback; + + export import BaseElevationLayerFetchTileOptions = __esri.BaseElevationLayerFetchTileOptions; + + export import BaseElevationLayerLayerviewCreateEvent = __esri.BaseElevationLayerLayerviewCreateEvent; + + export import BaseElevationLayerLayerviewCreateEventHandler = __esri.BaseElevationLayerLayerviewCreateEventHandler; + + export import BaseElevationLayerLayerviewDestroyEvent = __esri.BaseElevationLayerLayerviewDestroyEvent; + + export import BaseElevationLayerLayerviewDestroyEventHandler = __esri.BaseElevationLayerLayerviewDestroyEventHandler; export import CSVLayerElevationInfo = __esri.CSVLayerElevationInfo; - export import FeatureLayerApplyEditsEdits = __esri.FeatureLayerApplyEditsEdits; + export import CSVLayerFeatureReduction = __esri.CSVLayerFeatureReduction; - export import FeatureLayerCapabilities = __esri.FeatureLayerCapabilities; + export import CSVLayerLayerviewCreateEvent = __esri.CSVLayerLayerviewCreateEvent; - export import FeatureLayerCapabilitiesOperations = __esri.FeatureLayerCapabilitiesOperations; + export import CSVLayerLayerviewCreateEventHandler = __esri.CSVLayerLayerviewCreateEventHandler; - export import FeatureLayerElevationInfo = __esri.FeatureLayerElevationInfo; + export import CSVLayerLayerviewDestroyEvent = __esri.CSVLayerLayerviewDestroyEvent; - export import FeatureLayerGetFieldDomainOptions = __esri.FeatureLayerGetFieldDomainOptions; + export import CSVLayerLayerviewDestroyEventHandler = __esri.CSVLayerLayerviewDestroyEventHandler; - export import GraphicsLayerElevationInfo = __esri.GraphicsLayerElevationInfo; + export import ElevationLayerQueryElevationOptions = __esri.ElevationLayerQueryElevationOptions; - export import LayerFromArcGISServerUrlParams = __esri.LayerFromArcGISServerUrlParams; + export import ElevationLayerLayerviewCreateEvent = __esri.ElevationLayerLayerviewCreateEvent; - export import LayerFromPortalItemParams = __esri.LayerFromPortalItemParams; + export import ElevationLayerLayerviewCreateEventHandler = __esri.ElevationLayerLayerviewCreateEventHandler; + + export import ElevationLayerLayerviewDestroyEvent = __esri.ElevationLayerLayerviewDestroyEvent; + + export import ElevationLayerLayerviewDestroyEventHandler = __esri.ElevationLayerLayerviewDestroyEventHandler; + + export import GeoRSSLayerLayerviewCreateEvent = __esri.GeoRSSLayerLayerviewCreateEvent; + + export import GeoRSSLayerLayerviewCreateEventHandler = __esri.GeoRSSLayerLayerviewCreateEventHandler; + + export import GeoRSSLayerLayerviewDestroyEvent = __esri.GeoRSSLayerLayerviewDestroyEvent; + + export import GeoRSSLayerLayerviewDestroyEventHandler = __esri.GeoRSSLayerLayerviewDestroyEventHandler; + + export import GroupLayerLayerviewCreateEvent = __esri.GroupLayerLayerviewCreateEvent; + + export import GroupLayerLayerviewCreateEventHandler = __esri.GroupLayerLayerviewCreateEventHandler; + + export import GroupLayerLayerviewDestroyEvent = __esri.GroupLayerLayerviewDestroyEvent; + + export import GroupLayerLayerviewDestroyEventHandler = __esri.GroupLayerLayerviewDestroyEventHandler; + + export import ImageryLayerLayerviewCreateEvent = __esri.ImageryLayerLayerviewCreateEvent; + + export import ImageryLayerLayerviewCreateEventHandler = __esri.ImageryLayerLayerviewCreateEventHandler; + + export import ImageryLayerLayerviewDestroyEvent = __esri.ImageryLayerLayerviewDestroyEvent; + + export import ImageryLayerLayerviewDestroyEventHandler = __esri.ImageryLayerLayerviewDestroyEventHandler; + + export import IntegratedMeshLayerLayerviewCreateEvent = __esri.IntegratedMeshLayerLayerviewCreateEvent; + + export import IntegratedMeshLayerLayerviewCreateEventHandler = __esri.IntegratedMeshLayerLayerviewCreateEventHandler; + + export import IntegratedMeshLayerLayerviewDestroyEvent = __esri.IntegratedMeshLayerLayerviewDestroyEvent; + + export import IntegratedMeshLayerLayerviewDestroyEventHandler = __esri.IntegratedMeshLayerLayerviewDestroyEventHandler; + + export import MapImageLayerLayerviewCreateEvent = __esri.MapImageLayerLayerviewCreateEvent; + + export import MapImageLayerLayerviewCreateEventHandler = __esri.MapImageLayerLayerviewCreateEventHandler; + + export import MapImageLayerLayerviewDestroyEvent = __esri.MapImageLayerLayerviewDestroyEvent; + + export import MapImageLayerLayerviewDestroyEventHandler = __esri.MapImageLayerLayerviewDestroyEventHandler; + + export import MapNotesLayerLayerviewCreateEvent = __esri.MapNotesLayerLayerviewCreateEvent; + + export import MapNotesLayerLayerviewCreateEventHandler = __esri.MapNotesLayerLayerviewCreateEventHandler; + + export import MapNotesLayerLayerviewDestroyEvent = __esri.MapNotesLayerLayerviewDestroyEvent; + + export import MapNotesLayerLayerviewDestroyEventHandler = __esri.MapNotesLayerLayerviewDestroyEventHandler; + + export import OpenStreetMapLayerLayerviewCreateEvent = __esri.OpenStreetMapLayerLayerviewCreateEvent; + + export import OpenStreetMapLayerLayerviewCreateEventHandler = __esri.OpenStreetMapLayerLayerviewCreateEventHandler; + + export import OpenStreetMapLayerLayerviewDestroyEvent = __esri.OpenStreetMapLayerLayerviewDestroyEvent; + + export import OpenStreetMapLayerLayerviewDestroyEventHandler = __esri.OpenStreetMapLayerLayerviewDestroyEventHandler; + + export import PointCloudLayerLayerviewCreateEvent = __esri.PointCloudLayerLayerviewCreateEvent; + + export import PointCloudLayerLayerviewCreateEventHandler = __esri.PointCloudLayerLayerviewCreateEventHandler; + + export import PointCloudLayerLayerviewDestroyEvent = __esri.PointCloudLayerLayerviewDestroyEvent; + + export import PointCloudLayerLayerviewDestroyEventHandler = __esri.PointCloudLayerLayerviewDestroyEventHandler; + + export import PointCloudLayerElevationInfo = __esri.PointCloudLayerElevationInfo; + + export import PointCloudRendererColorModulation = __esri.PointCloudRendererColorModulation; + + export import PointCloudRendererPointSizeAlgorithm = __esri.PointCloudRendererPointSizeAlgorithm; + + export import SceneLayerLayerviewCreateEvent = __esri.SceneLayerLayerviewCreateEvent; + + export import SceneLayerLayerviewCreateEventHandler = __esri.SceneLayerLayerviewCreateEventHandler; + + export import SceneLayerLayerviewDestroyEvent = __esri.SceneLayerLayerviewDestroyEvent; + + export import SceneLayerLayerviewDestroyEventHandler = __esri.SceneLayerLayerviewDestroyEventHandler; export import SceneLayerElevationInfo = __esri.SceneLayerElevationInfo; + export import SceneLayerFeatureReduction = __esri.SceneLayerFeatureReduction; + + export import StreamLayerLayerviewCreateEvent = __esri.StreamLayerLayerviewCreateEvent; + + export import StreamLayerLayerviewCreateEventHandler = __esri.StreamLayerLayerviewCreateEventHandler; + + export import StreamLayerLayerviewDestroyEvent = __esri.StreamLayerLayerviewDestroyEvent; + + export import StreamLayerLayerviewDestroyEventHandler = __esri.StreamLayerLayerviewDestroyEventHandler; + export import StreamLayerFilter = __esri.StreamLayerFilter; export import StreamLayerPurgeOptions = __esri.StreamLayerPurgeOptions; export import StreamLayerUpdateFilterFilterChanges = __esri.StreamLayerUpdateFilterFilterChanges; + export import TileLayerLayerviewCreateEvent = __esri.TileLayerLayerviewCreateEvent; + + export import TileLayerLayerviewCreateEventHandler = __esri.TileLayerLayerviewCreateEventHandler; + + export import TileLayerLayerviewDestroyEvent = __esri.TileLayerLayerviewDestroyEvent; + + export import TileLayerLayerviewDestroyEventHandler = __esri.TileLayerLayerviewDestroyEventHandler; + + export import TileLayerFetchTileOptions = __esri.TileLayerFetchTileOptions; + + export import UnknownLayerLayerviewCreateEvent = __esri.UnknownLayerLayerviewCreateEvent; + + export import UnknownLayerLayerviewCreateEventHandler = __esri.UnknownLayerLayerviewCreateEventHandler; + + export import UnknownLayerLayerviewDestroyEvent = __esri.UnknownLayerLayerviewDestroyEvent; + + export import UnknownLayerLayerviewDestroyEventHandler = __esri.UnknownLayerLayerviewDestroyEventHandler; + + export import UnsupportedLayerLayerviewCreateEvent = __esri.UnsupportedLayerLayerviewCreateEvent; + + export import UnsupportedLayerLayerviewCreateEventHandler = __esri.UnsupportedLayerLayerviewCreateEventHandler; + + export import UnsupportedLayerLayerviewDestroyEvent = __esri.UnsupportedLayerLayerviewDestroyEvent; + + export import UnsupportedLayerLayerviewDestroyEventHandler = __esri.UnsupportedLayerLayerviewDestroyEventHandler; + + export import VectorTileLayerLayerviewCreateEvent = __esri.VectorTileLayerLayerviewCreateEvent; + + export import VectorTileLayerLayerviewCreateEventHandler = __esri.VectorTileLayerLayerviewCreateEventHandler; + + export import VectorTileLayerLayerviewDestroyEvent = __esri.VectorTileLayerLayerviewDestroyEvent; + + export import VectorTileLayerLayerviewDestroyEventHandler = __esri.VectorTileLayerLayerviewDestroyEventHandler; + export import VectorTileLayerCurrentStyleInfo = __esri.VectorTileLayerCurrentStyleInfo; - export import CodedValueDomainCodedValues = __esri.CodedValueDomainCodedValues; + export import WebTileLayerLayerviewCreateEvent = __esri.WebTileLayerLayerviewCreateEvent; - export import LabelClassLabelExpressionInfo = __esri.LabelClassLabelExpressionInfo; + export import WebTileLayerLayerviewCreateEventHandler = __esri.WebTileLayerLayerviewCreateEventHandler; + + export import WebTileLayerLayerviewDestroyEvent = __esri.WebTileLayerLayerviewDestroyEvent; + + export import WebTileLayerLayerviewDestroyEventHandler = __esri.WebTileLayerLayerviewDestroyEventHandler; + + export import WMSLayerLayerviewCreateEvent = __esri.WMSLayerLayerviewCreateEvent; + + export import WMSLayerLayerviewCreateEventHandler = __esri.WMSLayerLayerviewCreateEventHandler; + + export import WMSLayerLayerviewDestroyEvent = __esri.WMSLayerLayerviewDestroyEvent; + + export import WMSLayerLayerviewDestroyEventHandler = __esri.WMSLayerLayerviewDestroyEventHandler; + + export import WMSLayerFetchImageOptions = __esri.WMSLayerFetchImageOptions; + + export import WMTSLayerLayerviewCreateEvent = __esri.WMTSLayerLayerviewCreateEvent; + + export import WMTSLayerLayerviewCreateEventHandler = __esri.WMTSLayerLayerviewCreateEventHandler; + + export import WMTSLayerLayerviewDestroyEvent = __esri.WMTSLayerLayerviewDestroyEvent; + + export import WMTSLayerLayerviewDestroyEventHandler = __esri.WMTSLayerLayerviewDestroyEventHandler; + + export import BaseDynamicLayerFetchImageOptions = __esri.BaseDynamicLayerFetchImageOptions; + + export import BaseDynamicLayerLayerviewCreateEvent = __esri.BaseDynamicLayerLayerviewCreateEvent; + + export import BaseDynamicLayerLayerviewCreateEventHandler = __esri.BaseDynamicLayerLayerviewCreateEventHandler; + + export import BaseDynamicLayerLayerviewDestroyEvent = __esri.BaseDynamicLayerLayerviewDestroyEvent; + + export import BaseDynamicLayerLayerviewDestroyEventHandler = __esri.BaseDynamicLayerLayerviewDestroyEventHandler; + + export import BaseTileLayerFetchTileOptions = __esri.BaseTileLayerFetchTileOptions; + + export import BaseTileLayerLayerviewCreateEvent = __esri.BaseTileLayerLayerviewCreateEvent; + + export import BaseTileLayerLayerviewCreateEventHandler = __esri.BaseTileLayerLayerviewCreateEventHandler; + + export import BaseTileLayerLayerviewDestroyEvent = __esri.BaseTileLayerLayerviewDestroyEvent; + + export import BaseTileLayerLayerviewDestroyEventHandler = __esri.BaseTileLayerLayerviewDestroyEventHandler; + + export import CodedValueDomainCodedValues = __esri.CodedValueDomainCodedValues; export import PixelBlockAddDataPlaneData = __esri.PixelBlockAddDataPlaneData; export import PixelBlockStatistics = __esri.PixelBlockStatistics; - export import PortalFeaturedGroups = __esri.PortalFeaturedGroups; - - export import PortalItemFetchRelatedItemsParams = __esri.PortalItemFetchRelatedItemsParams; - - export import PortalItemUpdateParams = __esri.PortalItemUpdateParams; - - export import PortalUserAddItemParams = __esri.PortalUserAddItemParams; - - export import PortalUserFetchItemsParams = __esri.PortalUserFetchItemsParams; - export import ClassBreaksRendererClassBreakInfos = __esri.ClassBreaksRendererClassBreakInfos; export import ClassBreaksRendererLegendOptions = __esri.ClassBreaksRendererLegendOptions; @@ -8469,8 +9991,6 @@ declare module "esri" { export import UniqueValueRendererUniqueValueInfos = __esri.UniqueValueRendererUniqueValueInfos; - export import PointCloudRendererPointSizeAlgorithm = __esri.PointCloudRendererPointSizeAlgorithm; - export import PointCloudClassBreaksRendererColorClassBreakInfos = __esri.PointCloudClassBreaksRendererColorClassBreakInfos; export import PointCloudStretchRendererStops = __esri.PointCloudStretchRendererStops; @@ -8485,34 +10005,110 @@ declare module "esri" { export import ObjectSymbol3DLayerResource = __esri.ObjectSymbol3DLayerResource; + export import PointSymbol3DVerticalOffsetProperties = __esri.PointSymbol3DVerticalOffsetProperties; + export import PointSymbol3DVerticalOffset = __esri.PointSymbol3DVerticalOffset; + export import Symbol3DStyleOrigin = __esri.Symbol3DStyleOrigin; export import TextSymbol3DLayerFont = __esri.TextSymbol3DLayerFont; + export import TextSymbol3DLayerHalo = __esri.TextSymbol3DLayerHalo; + + export import LineCallout3DBorderProperties = __esri.LineCallout3DBorderProperties; + export import LineCallout3DBorder = __esri.LineCallout3DBorder; + + export import ClosestFacilityParametersAttributeParameterValues = __esri.ClosestFacilityParametersAttributeParameterValues; + export import GeometryServiceFromGeoCoordinateStringParams = __esri.GeometryServiceFromGeoCoordinateStringParams; export import GeometryServiceToGeoCoordinateStringParams = __esri.GeometryServiceToGeoCoordinateStringParams; + export import ProjectParametersTransformation = __esri.ProjectParametersTransformation; + export import LocatorAddressToLocationsParams = __esri.LocatorAddressToLocationsParams; export import LocatorAddressesToLocationsParams = __esri.LocatorAddressesToLocationsParams; export import LocatorSuggestLocationsParams = __esri.LocatorSuggestLocationsParams; - export import ClosestFacilityParametersAttributeParameterValues = __esri.ClosestFacilityParametersAttributeParameterValues; - export import PrintTemplateExportOptions = __esri.PrintTemplateExportOptions; export import PrintTemplateLayoutOptions = __esri.PrintTemplateLayoutOptions; - export import ProjectParametersTransformation = __esri.ProjectParametersTransformation; + export import MapViewDragEventOrigin = __esri.MapViewDragEventOrigin; - export import QueryQuantizationParameters = __esri.QueryQuantizationParameters; + export import MapViewClickEvent = __esri.MapViewClickEvent; + + export import MapViewClickEventHandler = __esri.MapViewClickEventHandler; + + export import MapViewDoubleClickEvent = __esri.MapViewDoubleClickEvent; + + export import MapViewDoubleClickEventHandler = __esri.MapViewDoubleClickEventHandler; + + export import MapViewDragEvent = __esri.MapViewDragEvent; + + export import MapViewDragEventHandler = __esri.MapViewDragEventHandler; + + export import MapViewHoldEvent = __esri.MapViewHoldEvent; + + export import MapViewHoldEventHandler = __esri.MapViewHoldEventHandler; + + export import MapViewKeyDownEvent = __esri.MapViewKeyDownEvent; + + export import MapViewKeyDownEventHandler = __esri.MapViewKeyDownEventHandler; + + export import MapViewKeyUpEvent = __esri.MapViewKeyUpEvent; + + export import MapViewKeyUpEventHandler = __esri.MapViewKeyUpEventHandler; + + export import MapViewLayerviewCreateEvent = __esri.MapViewLayerviewCreateEvent; + + export import MapViewLayerviewCreateEventHandler = __esri.MapViewLayerviewCreateEventHandler; + + export import MapViewLayerviewDestroyEvent = __esri.MapViewLayerviewDestroyEvent; + + export import MapViewLayerviewDestroyEventHandler = __esri.MapViewLayerviewDestroyEventHandler; + + export import MapViewConstraints = __esri.MapViewConstraints; + + export import MapViewGoToOptions = __esri.MapViewGoToOptions; + + export import MapViewHitTestScreenPoint = __esri.MapViewHitTestScreenPoint; + + export import MapViewToMapScreenPoint = __esri.MapViewToMapScreenPoint; + + export import MapViewMouseWheelEvent = __esri.MapViewMouseWheelEvent; + + export import MapViewMouseWheelEventHandler = __esri.MapViewMouseWheelEventHandler; + + export import MapViewPointerDownEvent = __esri.MapViewPointerDownEvent; + + export import MapViewPointerDownEventHandler = __esri.MapViewPointerDownEventHandler; + + export import MapViewPointerMoveEvent = __esri.MapViewPointerMoveEvent; + + export import MapViewPointerMoveEventHandler = __esri.MapViewPointerMoveEventHandler; + + export import MapViewPointerUpEvent = __esri.MapViewPointerUpEvent; + + export import MapViewPointerUpEventHandler = __esri.MapViewPointerUpEventHandler; + + export import MapViewResizeEvent = __esri.MapViewResizeEvent; + + export import MapViewResizeEventHandler = __esri.MapViewResizeEventHandler; + + export import AttributeParamValue = __esri.AttributeParamValue; export import ConfigurationTaskGetDataWorkspaceDetailsParams = __esri.ConfigurationTaskGetDataWorkspaceDetailsParams; export import ConfigurationTaskGetUserJobQueryDetailsParams = __esri.ConfigurationTaskGetUserJobQueryDetailsParams; + export import AuxRecordDescription = __esri.AuxRecordDescription; + + export import JobCreationParameters = __esri.JobCreationParameters; + + export import JobQueryParameters = __esri.JobQueryParameters; + export import JobTaskAddEmbeddedAttachmentParams = __esri.JobTaskAddEmbeddedAttachmentParams; export import JobTaskAddLinkedAttachmentParams = __esri.JobTaskAddLinkedAttachmentParams; @@ -8561,6 +10157,10 @@ declare module "esri" { export import JobTaskUpdateRecordParams = __esri.JobTaskUpdateRecordParams; + export import JobUpdateParameters = __esri.JobUpdateParameters; + + export import ChangeRule = __esri.ChangeRule; + export import NotificationTaskAddChangeRuleParams = __esri.NotificationTaskAddChangeRuleParams; export import NotificationTaskDeleteChangeRuleParams = __esri.NotificationTaskDeleteChangeRuleParams; @@ -8605,43 +10205,16 @@ declare module "esri" { export import WorkflowTaskSetCurrentStepParams = __esri.WorkflowTaskSetCurrentStepParams; - export import MapViewConstraints = __esri.MapViewConstraints; - - export import MapViewGoToOptions = __esri.MapViewGoToOptions; - - export import MapViewHitTestScreenPoint = __esri.MapViewHitTestScreenPoint; - - export import SceneViewConstraintsProperties = __esri.SceneViewConstraintsProperties; - export import SceneViewConstraints = __esri.SceneViewConstraints; - - export import SceneViewConstraintsAltitudeProperties = __esri.SceneViewConstraintsAltitudeProperties; - export import SceneViewConstraintsAltitude = __esri.SceneViewConstraintsAltitude; - - export import SceneViewConstraintsClipDistanceProperties = __esri.SceneViewConstraintsClipDistanceProperties; - export import SceneViewConstraintsClipDistance = __esri.SceneViewConstraintsClipDistance; - - export import SceneViewConstraintsCollision = __esri.SceneViewConstraintsCollision; - - export import SceneViewConstraintsTiltProperties = __esri.SceneViewConstraintsTiltProperties; - export import SceneViewConstraintsTilt = __esri.SceneViewConstraintsTilt; - - export import SceneViewEnvironmentProperties = __esri.SceneViewEnvironmentProperties; - export import SceneViewEnvironment = __esri.SceneViewEnvironment; - - export import SceneViewEnvironmentAtmosphereProperties = __esri.SceneViewEnvironmentAtmosphereProperties; - export import SceneViewEnvironmentAtmosphere = __esri.SceneViewEnvironmentAtmosphere; - - export import SceneViewEnvironmentLightingProperties = __esri.SceneViewEnvironmentLightingProperties; - export import SceneViewEnvironmentLighting = __esri.SceneViewEnvironmentLighting; - - export import SceneViewGoToOptions = __esri.SceneViewGoToOptions; - - export import SceneViewHitTestScreenPoint = __esri.SceneViewHitTestScreenPoint; - - export import ViewPadding = __esri.ViewPadding; - export import ImageryLayerViewPixelData = __esri.ImageryLayerViewPixelData; + export import StreamLayerViewDataReceivedEvent = __esri.StreamLayerViewDataReceivedEvent; + + export import StreamLayerViewDataReceivedEventHandler = __esri.StreamLayerViewDataReceivedEventHandler; + + export import StreamLayerViewFilter = __esri.StreamLayerViewFilter; + + export import StreamLayerViewUpdateFilterFilter = __esri.StreamLayerViewUpdateFilterFilter; + export import SlideApplyToOptions = __esri.SlideApplyToOptions; export import SlideCreateFromOptions = __esri.SlideCreateFromOptions; @@ -8671,9 +10244,47 @@ declare module "esri" { export import PopupOpenOptions = __esri.PopupOpenOptions; - export import SearchSources = __esri.SearchSources; + export import SearchViewModelSearchCompleteEventResults = __esri.SearchViewModelSearchCompleteEventResults; - export import SearchViewModelSources = __esri.SearchViewModelSources; + export import SearchViewModelSearchCompleteEventResultsResults = __esri.SearchViewModelSearchCompleteEventResultsResults; + + export import SearchViewModelSelectResultEventResult = __esri.SearchViewModelSelectResultEventResult; + + export import SearchViewModelSuggestCompleteEventResults = __esri.SearchViewModelSuggestCompleteEventResults; + + export import SearchViewModelSuggestCompleteEventResultsResults = __esri.SearchViewModelSuggestCompleteEventResultsResults; + + export import SearchViewModelLoadEvent = __esri.SearchViewModelLoadEvent; + + export import SearchViewModelLoadEventHandler = __esri.SearchViewModelLoadEventHandler; + + export import SearchViewModelSearchClearEvent = __esri.SearchViewModelSearchClearEvent; + + export import SearchViewModelSearchClearEventHandler = __esri.SearchViewModelSearchClearEventHandler; + + export import SearchViewModelSearchCompleteEvent = __esri.SearchViewModelSearchCompleteEvent; + + export import SearchViewModelSearchCompleteEventHandler = __esri.SearchViewModelSearchCompleteEventHandler; + + export import SearchViewModelSearchStartEvent = __esri.SearchViewModelSearchStartEvent; + + export import SearchViewModelSearchStartEventHandler = __esri.SearchViewModelSearchStartEventHandler; + + export import SearchViewModelSelectResultEvent = __esri.SearchViewModelSelectResultEvent; + + export import SearchViewModelSelectResultEventHandler = __esri.SearchViewModelSelectResultEventHandler; + + export import SearchViewModelSuggestCompleteEvent = __esri.SearchViewModelSuggestCompleteEvent; + + export import SearchViewModelSuggestCompleteEventHandler = __esri.SearchViewModelSuggestCompleteEventHandler; + + export import SearchViewModelSuggestStartEvent = __esri.SearchViewModelSuggestStartEvent; + + export import SearchViewModelSuggestStartEventHandler = __esri.SearchViewModelSuggestStartEventHandler; + + export import DynamicLayerFetchImageOptions = __esri.DynamicLayerFetchImageOptions; + + export import DynamicLayerGetImageUrlOptions = __esri.DynamicLayerGetImageUrlOptions; export import ArcGISDynamicMapServiceGetExportImageParametersOptions = __esri.ArcGISDynamicMapServiceGetExportImageParametersOptions; @@ -8693,8 +10304,14 @@ declare module "esri" { export import requestEsriRequestOptions = __esri.requestEsriRequestOptions; + export import EachAlwaysResult = __esri.EachAlwaysResult; + export import urlUtilsAddProxyRuleRule = __esri.urlUtilsAddProxyRuleRule; + export import EventAttachedCallback = __esri.EventAttachedCallback; + + export import PausableWatchHandle = __esri.PausableWatchHandle; + export import decoratorsPropertyPropertyMetadata = __esri.decoratorsPropertyPropertyMetadata; export import colorCreateContinuousRendererParams = __esri.colorCreateContinuousRendererParams; @@ -8715,6 +10332,10 @@ declare module "esri" { export import sizeCreateVisualVariablesParamsLegendOptions = __esri.sizeCreateVisualVariablesParamsLegendOptions; + export import typeCreateRendererParams = __esri.typeCreateRendererParams; + + export import typeCreateRendererParamsLegendOptions = __esri.typeCreateRendererParamsLegendOptions; + export import univariateColorSizeCreateContinuousRendererParams = __esri.univariateColorSizeCreateContinuousRendererParams; export import univariateColorSizeCreateContinuousRendererParamsColorOptions = __esri.univariateColorSizeCreateContinuousRendererParamsColorOptions; @@ -8741,11 +10362,71 @@ declare module "esri" { export import summaryStatisticsSummaryStatisticsParams = __esri.summaryStatisticsSummaryStatisticsParams; + export import uniqueValuesUniqueValuesParams = __esri.uniqueValuesUniqueValuesParams; + export import colorGetSchemesParams = __esri.colorGetSchemesParams; export import locationGetSchemesParams = __esri.locationGetSchemesParams; export import sizeGetSchemesParams = __esri.sizeGetSchemesParams; + + export import typeGetSchemesParams = __esri.typeGetSchemesParams; + + export import JobQuery = __esri.JobQuery; + + export import GroupMembership = __esri.GroupMembership; + + export import JobQueryContainer = __esri.JobQueryContainer; + + export import Privilege = __esri.Privilege; + + export import DataWorkspace = __esri.DataWorkspace; + + export import HoldType = __esri.HoldType; + + export import JobPriority = __esri.JobPriority; + + export import JobStatus = __esri.JobStatus; + + export import JobType = __esri.JobType; + + export import ActivityType = __esri.ActivityType; + + export import NotificationType = __esri.NotificationType; + + export import AuxRecord = __esri.AuxRecord; + + export import AuxRecordValue = __esri.AuxRecordValue; + + export import JobVersionInfo = __esri.JobVersionInfo; + + export import QueryFieldInfo = __esri.QueryFieldInfo; + + export import DatasetConfiguration = __esri.DatasetConfiguration; + + export import WhereCondition = __esri.WhereCondition; + + export import ReportDataGroup = __esri.ReportDataGroup; + + export import WorkflowConflicts = __esri.WorkflowConflicts; + + export import WorkflowOption = __esri.WorkflowOption; + + export import WorkflowStepInfo = __esri.WorkflowStepInfo; + + export import StepType = __esri.StepType; + + export import WorkflowAnnotationDisplayDetails = __esri.WorkflowAnnotationDisplayDetails; + + export import WorkflowPathDisplayDetails = __esri.WorkflowPathDisplayDetails; + + export import WorkflowStepDisplayDetails = __esri.WorkflowStepDisplayDetails; + + export import ColorAndIntensity = __esri.ColorAndIntensity; + + export import RenderCamera = __esri.RenderCamera; + + export import SunLight = __esri.SunLight; } declare module "esri/Basemap" { @@ -8883,24 +10564,9 @@ declare module "esri/identity/ServerInfo" { export = ServerInfo; } -declare module "esri/layers/ElevationLayer" { - import ElevationLayer = __esri.ElevationLayer; - export = ElevationLayer; -} - -declare module "esri/layers/ImageryLayer" { - import ImageryLayer = __esri.ImageryLayer; - export = ImageryLayer; -} - -declare module "esri/layers/MapImageLayer" { - import MapImageLayer = __esri.MapImageLayer; - export = MapImageLayer; -} - -declare module "esri/layers/TileLayer" { - import TileLayer = __esri.TileLayer; - export = TileLayer; +declare module "esri/layers/BaseElevationLayer" { + import BaseElevationLayer = __esri.BaseElevationLayer; + export = BaseElevationLayer; } declare module "esri/layers/CSVLayer" { @@ -8908,6 +10574,11 @@ declare module "esri/layers/CSVLayer" { export = CSVLayer; } +declare module "esri/layers/ElevationLayer" { + import ElevationLayer = __esri.ElevationLayer; + export = ElevationLayer; +} + declare module "esri/layers/FeatureLayer" { import FeatureLayer = __esri.FeatureLayer; export = FeatureLayer; @@ -8928,6 +10599,11 @@ declare module "esri/layers/GroupLayer" { export = GroupLayer; } +declare module "esri/layers/ImageryLayer" { + import ImageryLayer = __esri.ImageryLayer; + export = ImageryLayer; +} + declare module "esri/layers/IntegratedMeshLayer" { import IntegratedMeshLayer = __esri.IntegratedMeshLayer; export = IntegratedMeshLayer; @@ -8938,6 +10614,16 @@ declare module "esri/layers/Layer" { export = Layer; } +declare module "esri/layers/MapImageLayer" { + import MapImageLayer = __esri.MapImageLayer; + export = MapImageLayer; +} + +declare module "esri/layers/MapNotesLayer" { + import MapNotesLayer = __esri.MapNotesLayer; + export = MapNotesLayer; +} + declare module "esri/layers/OpenStreetMapLayer" { import OpenStreetMapLayer = __esri.OpenStreetMapLayer; export = OpenStreetMapLayer; @@ -8958,6 +10644,11 @@ declare module "esri/layers/StreamLayer" { export = StreamLayer; } +declare module "esri/layers/TileLayer" { + import TileLayer = __esri.TileLayer; + export = TileLayer; +} + declare module "esri/layers/UnknownLayer" { import UnknownLayer = __esri.UnknownLayer; export = UnknownLayer; @@ -8978,6 +10669,26 @@ declare module "esri/layers/WebTileLayer" { export = WebTileLayer; } +declare module "esri/layers/WMSLayer" { + import WMSLayer = __esri.WMSLayer; + export = WMSLayer; +} + +declare module "esri/layers/WMTSLayer" { + import WMTSLayer = __esri.WMTSLayer; + export = WMTSLayer; +} + +declare module "esri/layers/BaseDynamicLayer" { + import BaseDynamicLayer = __esri.BaseDynamicLayer; + export = BaseDynamicLayer; +} + +declare module "esri/layers/BaseTileLayer" { + import BaseTileLayer = __esri.BaseTileLayer; + export = BaseTileLayer; +} + declare module "esri/layers/support/CodedValueDomain" { import CodedValueDomain = __esri.CodedValueDomain; export = CodedValueDomain; @@ -8998,6 +10709,16 @@ declare module "esri/layers/support/Field" { export = Field; } +declare module "esri/layers/support/FeatureTemplate" { + import FeatureTemplate = __esri.FeatureTemplate; + export = FeatureTemplate; +} + +declare module "esri/layers/support/FeatureType" { + import FeatureType = __esri.FeatureType; + export = FeatureType; +} + declare module "esri/layers/support/ImageParameters" { import ImageParameters = __esri.ImageParameters; export = ImageParameters; @@ -9053,6 +10774,26 @@ declare module "esri/layers/support/TileInfo" { export = TileInfo; } +declare module "esri/layers/support/TileMatrixSet" { + import TileMatrixSet = __esri.TileMatrixSet; + export = TileMatrixSet; +} + +declare module "esri/layers/support/WMSSublayer" { + import WMSSublayer = __esri.WMSSublayer; + export = WMSSublayer; +} + +declare module "esri/layers/support/WMTSStyle" { + import WMTSStyle = __esri.WMTSStyle; + export = WMTSStyle; +} + +declare module "esri/layers/support/WMTSSublayer" { + import WMTSSublayer = __esri.WMTSSublayer; + export = WMTSSublayer; +} + declare module "esri/portal/Portal" { import Portal = __esri.Portal; export = Portal; @@ -9273,6 +11014,16 @@ declare module "esri/symbols/WebStyleSymbol" { export = WebStyleSymbol; } +declare module "esri/symbols/callouts/Callout3D" { + import Callout3D = __esri.Callout3D; + export = Callout3D; +} + +declare module "esri/symbols/callouts/LineCallout3D" { + import LineCallout3D = __esri.LineCallout3D; + export = LineCallout3D; +} + declare module "esri/tasks/ClosestFacilityTask" { import ClosestFacilityTask = __esri.ClosestFacilityTask; export = ClosestFacilityTask; @@ -9588,6 +11339,11 @@ declare module "esri/views/layers/LayerView" { export = LayerView; } +declare module "esri/views/layers/CSVLayerView" { + import CSVLayerView = __esri.CSVLayerView; + export = CSVLayerView; +} + declare module "esri/views/layers/FeatureLayerView" { import FeatureLayerView = __esri.FeatureLayerView; export = FeatureLayerView; @@ -9608,6 +11364,11 @@ declare module "esri/views/layers/SceneLayerView" { export = SceneLayerView; } +declare module "esri/views/layers/StreamLayerView" { + import StreamLayerView = __esri.StreamLayerView; + export = StreamLayerView; +} + declare module "esri/views/ui/UI" { import UI = __esri.UI; export = UI; @@ -10013,6 +11774,11 @@ declare module "esri/renderers/smartMapping/creators/size" { export = size; } +declare module "esri/renderers/smartMapping/creators/type" { + import type = __esri.type; + export = type; +} + declare module "esri/renderers/smartMapping/creators/univariateColorSize" { import univariateColorSize = __esri.univariateColorSize; export = univariateColorSize; @@ -10033,6 +11799,11 @@ declare module "esri/renderers/smartMapping/statistics/summaryStatistics" { export = summaryStatistics; } +declare module "esri/renderers/smartMapping/statistics/uniqueValues" { + import uniqueValues = __esri.uniqueValues; + export = uniqueValues; +} + declare module "esri/renderers/smartMapping/symbology/color" { import symbologyColor = __esri.symbologyColor; export = symbologyColor; @@ -10048,6 +11819,11 @@ declare module "esri/renderers/smartMapping/symbology/size" { export = symbologySize; } +declare module "esri/renderers/smartMapping/symbology/type" { + import symbologyType = __esri.symbologyType; + export = symbologyType; +} + declare module "esri/renderers/support/jsonUtils" { import supportJsonUtils = __esri.supportJsonUtils; export = supportJsonUtils; diff --git a/types/arcgis-js-api/v3/index.d.ts b/types/arcgis-js-api/v3/index.d.ts index 40875ddd48..0c30ae898d 100644 --- a/types/arcgis-js-api/v3/index.d.ts +++ b/types/arcgis-js-api/v3/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for ArcGIS API for JavaScript 3.20 +// Type definitions for ArcGIS API for JavaScript 3.21 // Project: https://developers.arcgis.com/javascript/3/ // Definitions by: Esri // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -18,6 +18,7 @@ declare module "esri" { import BasemapLayer = require("esri/dijit/BasemapLayer"); import Symbol = require("esri/symbols/Symbol"); import BookmarkItem = require("esri/dijit/BookmarkItem"); + import TimeInfo = require("esri/layers/TimeInfo"); import Color = require("esri/Color"); import LocationProviderBase = require("esri/tasks/locationproviders/LocationProviderBase"); import PictureMarkerSymbol = require("esri/symbols/PictureMarkerSymbol"); @@ -213,6 +214,8 @@ declare module "esri" { isReference?: boolean; /** Initial opacity or transparency of the basemap layer. */ opacity?: number; + /** A url to a JSON file containing the stylesheet information to render the VectorTileLayer. */ + styleUrl?: string; /** Specify subDomains where tiles are served to speed up tile retrieval (using subDomains gets around the browser limit of the max number of concurrent requests to a domain). */ subDomains?: string[]; /** The URL template used to retrieve the tiles. */ @@ -221,7 +224,7 @@ declare module "esri" { tileInfo?: TileInfo; /** Define additional tile server domains for the layer. */ tileServer?: string[]; - /** The type of layer, valid values are "BingMapsAerial", "BingMapsHybrid", "BingMapsRoad", "OpenStreetMap", or "WebTiledLayer". */ + /** The type of layer. */ type?: string; /** URL to the ArcGIS Server REST resource that represents a map or image service. */ url?: string; @@ -293,6 +296,8 @@ declare module "esri" { outFields?: string[]; /** Refresh interval of the layer in minutes. */ refreshInterval?: number; + /** Time information for the layer, such as start time field, end time field, track id field, layers time extent and the draw time interval. */ + timeInfo?: TimeInfo; /** Visibility of the layer. */ visible?: boolean; } @@ -474,17 +479,17 @@ declare module "esri" { /** The selected color. */ color: Color; /** The row size of the palette. */ - colorsPerRow: number; + colorsPerRow?: number; /** The set of available color options. */ - palette: Color[]; + palette?: Color[]; /** Array of recent colors to show in the recent colors row. */ - recentColors: Color[]; + recentColors?: Color[]; /** Toggles color selection being required. */ - required: boolean; + required?: boolean; /** Toggles the recent color row. */ - showRecentColors: boolean; + showRecentColors?: boolean; /** Toggles the transparency slider. */ - showTransparencySlider: boolean; + showTransparencySlider?: boolean; } export interface ConnectOriginsToDestinationsOptions { /** The URL to the GPServer used to execute an analysis job. */ @@ -879,6 +884,8 @@ declare module "esri" { showSelectFolder?: boolean; } export interface FeatureLayerOptions { + /** Indicates whether attribute features containing m-values can be edited. */ + allowUpdateWithoutMValues?: boolean; /** Enable or disable the auto generalization of features from a non-editable layer in on-demand mode. */ autoGeneralize?: boolean; /** Class attribute to set for the layer's node. */ @@ -1401,6 +1408,22 @@ declare module "esri" { force3DTransforms?: boolean; /** By default the map creates and uses an out-of-the-box esri/dijit/Popup. */ infoWindow?: InfoWindowBase; + /** Indicates whether to enable double-click on a map to recenter and zoom in a level by using SHIFT + Click. */ + isClickRecenter?: boolean; + /** Indicates whether double-clicking on map zooms in on extent. */ + isDoubleClickZoom?: boolean; + /** Indicates whether to enable navigation of the map using a keyboard's arrow keys. */ + isKeyboardNavigation?: boolean; + /** Indicates whether all map navigation is enabled. */ + isMapNavigation?: boolean; + /** Indicates whether panning is enabled within the map. */ + isPan?: boolean; + /** Indicates whether pinch zoom navigation is enabled on touch-enabled devices. */ + isPinchZoom?: boolean; + /** Indicates whether to enable a mouse drag to zoom into to a specific region on the map. */ + isRubberBandZoom?: boolean; + /** (Added at version 3.21). */ + isScrollWheel?: boolean; /** If provided, the map is initialized with the specified levels of detail. */ lods?: LOD[]; /** Display the esri logo on the map. */ @@ -1547,8 +1570,6 @@ declare module "esri" { popupWindowFeatures?: string; /** The ArcGIS for Portal URL. */ portalUrl?: string; - /** Indicates whether to display social logins such as Google/Facebook. */ - showSocialLogins?: boolean; } export interface ObliqueViewerOptions { /** Azimuth angle value for which to display oblique images. */ @@ -1765,6 +1786,8 @@ declare module "esri" { export interface PrintOptions { /** Set to true if the print service is an asynchronous geoprocessing service. */ async?: boolean; + /** Additional parameters for the print service. */ + extraParameters?: any; /** The map to print. */ map?: Map; /** An optional array of user-defined templates. */ @@ -1891,8 +1914,6 @@ declare module "esri" { expanded?: boolean; /** This the specified graphicsLayer to use for the highlightGraphic and labelGraphic instead of map.graphics. */ graphicsLayer?: Layer; - /** The symbol used for highlightGraphic. */ - highlightSymbol?: Symbol; /** A customized infoTemplate for the selected feature. */ infoTemplate?: InfoTemplate; /** The text symbol for the label graphic. */ @@ -2528,7 +2549,7 @@ declare module "esri/IdentityManagerBase" { findCredential(url: string, userId?: string): Credential; /** * Returns the OAuth configuration for the passed in Portal server URL. - * @param url The URL to the Portal. + * @param url The ArcGIS for Portal URL, for example "https://www.arcgis.com" for ArcGIS Online and "https://www.example.com/portal" for your in-house portal. */ findOAuthInfo(url: string): OAuthInfo; /** @@ -2553,7 +2574,7 @@ declare module "esri/IdentityManagerBase" { * Call this method (during your application initialization) with JSON previously obtained from toJson method to re-hydrate the state of identity manager. * @param json The JSON obtained from the toJson method. */ - initialize(json: Object): any; + initialize(json: Object): void; /** Returns true if the identity manager is busy accepting user input, i.e., the user has invoked signIn and is waiting for a response. */ isBusy(): boolean; /** @@ -2576,7 +2597,7 @@ declare module "esri/IdentityManagerBase" { registerServers(serverInfos: ServerInfo[]): void; /** * Registers the given OAuth2 access token with the identity manager. - * @param properties See the object specifications table below for the structure of the properties object. + * @param properties See the object specifications table below for the structure of the properties object. */ registerToken(properties: any): void; /** @@ -2889,8 +2910,6 @@ declare module "esri/arcgis/OAuthInfo" { popupWindowFeatures: string; /** The ArcGIS for Portal URL. */ portalUrl: string; - /** Indicates whether to display social logins like Google/Facebook. */ - showSocialLogins: boolean; /** * Creates a new OAuthInfo given the specified parameters. * @param params Various options to configure the OAuthInfo object. @@ -2947,6 +2966,8 @@ declare module "esri/arcgis/Portal" { defaultBasemap: any; /** The default extent for the map the portal displays in the map viewer. */ defaultExtent: any; + /** The default vector basemap to use for the portal. */ + defaultVectorBasemap: any; /** A description of the organization / portal. */ description: string; /** The featured groups for the portal. */ @@ -2957,6 +2978,8 @@ declare module "esri/arcgis/Portal" { featuredItemsGroupQuery: string; /** The query that identifies the group containing features items for the gallery. */ galleryTemplatesGroupQuery: string; + /** Helper services provided by the portal. */ + helperServices: any; /** The group that contains featured content to be displayed on the home page. */ homePageFeaturedContent: string; /** The number of featured items that can be displayed on the home page. */ @@ -2991,7 +3014,7 @@ declare module "esri/arcgis/Portal" { portalProperties: any; /** The URL to the thumbnail of the portal. */ portalThumbnail: string; - /** URL to the portal. */ + /** The REST URL for the portal, for example "https://www.arcgis.com/sharing/rest/" for ArcGIS Online and "https://www.example.com/arcgis/sharing/rest/" for your in-house portal. */ portalUrl: string; /** The region for the organization. */ region: string; @@ -3013,7 +3036,7 @@ declare module "esri/arcgis/Portal" { thumbnailUrl: string; /** Sets the units of measure for the organization's users. */ units: string; - /** The portal url. */ + /** The ArcGIS for Portal URL, for example "https://www.arcgis.com" for ArcGIS Online and "https://www.example.com/arcgis" for your in-house portal. */ url: string; /** The prefix selected by the organization's administrator to be used with the customBaseURL. */ urlKey: string; @@ -3021,9 +3044,13 @@ declare module "esri/arcgis/Portal" { user: PortalUser; /** If true, only simple where clauses that are complaint with SQL92 can be used when querying layers and tables. */ useStandardizedQuery: boolean; + /** Whether an organization has opted in to use the vector tile basemaps. */ + useVectorBasemaps: boolean; + /** The query that defines the vector tiles basemaps that should be displayed in the Basemap Gallery when useVectorBasemaps is true. */ + vectorBasemapGalleryGroupQuery: string; /** * Creates a new Portal object. - * @param url URL to the ArcGIS.com site or in-house portal. + * @param url The ArcGIS for Portal URL, for example "https://www.arcgis.com" for ArcGIS Online and "https://www.example.com/arcgis" for your in-house portal. */ constructor(url: string); /** Returns a PortalUser object that describes the user currently signed in to the portal. */ @@ -3111,6 +3138,11 @@ declare module "esri/arcgis/Portal" { url: string; /** Get the current members for the group. */ getMembers(): any; + /** + * Get the URL to the thumbnail image for the portal group. + * @param width The desired image width. + */ + getThumbnailUrl(width?: number): string; /** * Execute a query against the group to return a deferred that when resolved returns PortalQueryResult that contain a results array of PortalItem objects that match the input query. * @param queryParams The input query parameters. @@ -3196,6 +3228,11 @@ declare module "esri/arcgis/Portal" { getComments(): any; /** Returns the rating (if any) given to the item. */ getRating(): any; + /** + * Get the URL to the thumbnail image for the portal item. + * @param width The desired image width. + */ + getThumbnailUrl(width?: number): string; /** * Updates an item comment. * @param comment A PortalComment that contains the comment updates. @@ -3274,6 +3311,11 @@ declare module "esri/arcgis/Portal" { getNotifications(): any; /** Access the tag objects that have been created by the portal user. */ getTags(): any; + /** + * Get the URL to the thumbnail image for the portal user. + * @param width The desired image width. + */ + getThumbnailUrl(width?: number): string; } } @@ -3440,7 +3482,7 @@ declare module "esri/dijit/BasemapGallery" { import esri = require("esri"); import Basemap = require("esri/dijit/Basemap"); - /** The BasemapGallery dijit displays a collection basemaps from ArcGIS.com or a user-defined set of map or image services. */ + /** The BasemapGallery dijit displays a collection of basemaps from ArcGIS.com or a user-defined set of map or image services. */ class BasemapGallery { /** List of basemaps displayed in the BasemapGallery. */ basemaps: Basemap[]; @@ -3508,6 +3550,8 @@ declare module "esri/dijit/BasemapLayer" { fullExtent: Extent; /** The initial extent of the layer. */ initialExtent: Extent; + /** A url to a JSON file containing the stylesheet information to render the VectorTileLayer. */ + styleUrl: string; /** The subDomains where tiles are served to speed up tile retrieval (using subDomains gets around the browser limit of the max number of concurrent requests to a domain). */ subDomains: string[]; /** The tile info for the layer including lods, rows, cols, origin and spatial reference. */ @@ -5288,6 +5332,8 @@ declare module "esri/dijit/PopupTemplate" { /** The PopupTemplate class extends esri/InfoTemplate and provides support for defining a layout. */ class PopupTemplate extends InfoTemplate { + /** An array of objects that reference Arcade expressions. */ + expressionInfos: any[]; /** The popup definition defined as a JavaScript object. */ info: any; /** @@ -5640,6 +5686,9 @@ declare module "esri/dijit/SymbolStyler" { startup(): void; /** Saves the recent fill and outline colors. */ storeColors(): void; + /** Fired every time an edit is committed. */ + on(type: "style-update", listener: (event: { target: SymbolStyler }) => void): esri.Handle; + on(type: string, listener: (event: any) => void): esri.Handle; } export = SymbolStyler; } @@ -5865,7 +5914,7 @@ declare module "esri/dijit/analysis/AnalysisBase" { checkJobStatus(jobId: string): void; /** * Starts an analysis tool. - * @param params See the object specifications table below for the structure of the params object. + * @param params See the object specifications table below for the structure of the params object. */ execute(params: string): void; /** @@ -8633,6 +8682,8 @@ declare module "esri/graphic" { getShape(): any; /** Returns one or more dojox/gfx/shape.Shape used to draw the graphic. */ getShapes(): any[]; + /** In contrast to the getLayer method, getSouceLayer does not change when a graphic is added to another layer. */ + getSourceLayer(): Layer; /** Returns the title string based on attributes and infoTemplate values. */ getTitle(): string; /** Hides the graphic. */ @@ -9471,6 +9522,8 @@ declare module "esri/layers/FeatureLayer" { advancedQueryCapabilities: any; /** Returns true if the geometry of the features in the layer can be edited, false otherwise. */ allowGeometryUpdates: boolean; + /** Indicates whether attribute features containing m-values can be edited. */ + allowUpdateWithoutMValues: boolean; /** The URL, when available, where the layer's attribution data is stored. */ attributionDataUrl: string; /** Information about the capabilities enabled for this layer. */ @@ -10279,6 +10332,8 @@ declare module "esri/layers/KMLLayer" { getFeature(featureInfo: any): any; /** Get an array of map layers that were created to draw placemarks, ground and screen overlays. */ getLayers(): Layer[]; + /** Refreshes the features in the KML Layer. */ + refresh(): void; /** * Set the visibility for the specified folder. * @param folder A KML folder. @@ -11034,6 +11089,8 @@ declare module "esri/layers/VectorTileLayer" { fullExtent: Extent; /** The initial extent of the layer. */ initialExtent: Extent; + /** Name of the vector tile layer. */ + name: string; /** The spatial reference of the layer. */ spatialReference: SpatialReference; /** Contains information about the tiling scheme for the layer. */ @@ -11055,6 +11112,10 @@ declare module "esri/layers/VectorTileLayer" { setStyle(styleUrl: string | any): void; /** Fires when the style is changed on the layer. */ on(type: "style-change", listener: (event: { style: any; target: VectorTileLayer }) => void): esri.Handle; + /** Fires when the layer has finished updating its content. */ + on(type: "update-end", listener: (event: { target: VectorTileLayer }) => void): esri.Handle; + /** Fires when the layer begins to update its content. */ + on(type: "update-start", listener: (event: { target: VectorTileLayer }) => void): esri.Handle; on(type: string, listener: (event: any) => void): esri.Handle; } export = VectorTileLayer; @@ -11773,12 +11834,18 @@ declare module "esri/map" { isDoubleClickZoom: boolean; /** When true, keyboard navigation is enabled. */ isKeyboardNavigation: boolean; + /** Indicates whether all map navigation is enabled. */ + isMapNavigation: boolean; /** When true, map panning is enabled using the mouse. */ isPan: boolean; /** When true, pan arrows are displayed around the edge of the map. */ isPanArrows: boolean; + /** Indicates whether pinch zoom navigation is enabled on touch-enabled devices. */ + isPinchZoom: boolean; /** When true, rubberband zoom is enabled. */ isRubberBandZoom: boolean; + /** It indicates whether map navigation based on mouse scroll wheel is enabled. */ + isScrollWheel: boolean; /** When true, the mouse scroll wheel zoom is enabled. */ isScrollWheelZoom: boolean; /** When true, shift double click zoom is enabled. */ @@ -11853,8 +11920,11 @@ declare module "esri/map" { disableMapNavigation(): void; /** Disallows panning a map using the mouse. */ disablePan(): void; + disablePinchZoom(): void; /** Disallows zooming in or out on a map using a bounding box. */ disableRubberBandZoom(): void; + /** Disables navigation of the map based on mouse scroll wheel. */ + disableScrollWheel(): void; /** Disallows zooming in or out on a map using the mouse scroll wheel. */ disableScrollWheelZoom(): void; /** Disallows shift double clicking on a map to zoom in a level and center the map. */ @@ -11871,8 +11941,12 @@ declare module "esri/map" { enableMapNavigation(): void; /** Permits users to pan a map using the mouse. */ enablePan(): void; + /** Enables the user to work with pinch zoom navigation for touch-enabled devices. */ + enablePinchZoom(): void; /** Permits users to zoom in or out on a map using a bounding box. */ enableRubberBandZoom(): void; + /** Enables the user to navigate the map based on mouse scroll wheel. */ + enableScrollWheel(): void; /** Permits users to zoom in or out on a map using the mouse scroll wheel. */ enableScrollWheelZoom(): void; /** Permits users to shift double click on a map to zoom in a level and center the map. */ @@ -12947,7 +13021,7 @@ declare module "esri/renderers/HeatmapRenderer" { import esri = require("esri"); import Renderer = require("esri/renderers/Renderer"); - /** The HeatmapRenderer renders point data into a raster visualization that emphasizes areas of higher density or weighted values. */ + /** The HeatmapRenderer renders feature layer point data into a raster visualization that emphasizes areas of higher density or weighted values. */ class HeatmapRenderer extends Renderer { /** The radius (in pixels) of the circle over which the majority of each points value is spread out over. */ blurRadius: number; @@ -13052,7 +13126,7 @@ declare module "esri/renderers/Renderer" { * Returns the visual variable of the specified type. * @param type The type of visual variable desired. */ - getVisualVariablesForType(type: string): any; + getVisualVariablesForType(type: string): any[]; /** Indicates if the renderer has defined visualVariables. */ hasVisualVariables(): boolean; /** @@ -14873,7 +14947,7 @@ declare module "esri/tasks/GeometryService" { distance(params: DistanceParameters, callback?: Function, errback?: Function): any; /** * Converts an array of well-known strings into xy-coordinates based on the conversion type and spatial reference supplied by the user. - * @param params See the object specifications table below for the structure of the params object. + * @param params See the object specifications table below for the structure of the params object. * @param callback The function to call when the method has completed. * @param errback An error object is returned if an error occurs during task execution. */ @@ -14945,7 +15019,7 @@ declare module "esri/tasks/GeometryService" { simplify(geometries: Geometry[], callback?: Function, errback?: Function): any; /** * Converts an array of xy-coordinates into well-known strings based on the conversion type and spatial reference supplied by the user. - * @param params See the object specifications table below for the structure of the params object. + * @param params See the object specifications table below for the structure of the params object. * @param callback The function to call when the method has completed. * @param errback An error object is returned if an error occurs during task execution. */ @@ -15890,7 +15964,7 @@ declare module "esri/tasks/RouteParameters" { startTimeIsUTC: boolean; /** The set of stops loaded as network locations during analysis. */ stops: any; - /** If true , the TimeWindowStart and TimeWindowEnd attributes of a stop are in UTC time (milliseconds). */ + /** If true, the TimeWindowStart and TimeWindowEnd attributes of a stop are in UTC time (milliseconds). */ timeWindowsAreUTC: boolean; /** Travel modes define how a pedestrian, car, truck or other medium of transportation moves through the street network. */ travelMode: any; @@ -17172,7 +17246,7 @@ declare module "esri/tasks/locator" { */ constructor(url: string); /** - * Find address candidates for the input addresses. + * Find address candidates for multiple input addresses. * @param params The input addresses in the format supported by the geocoding service. * @param callback The function to call when the method has completed. * @param errback The function to call if an error occurs on the server during task execution. @@ -17180,7 +17254,7 @@ declare module "esri/tasks/locator" { addressesToLocations(params: any, callback: Function, errback: Function): any; /** * Sends a request to the ArcGIS REST geocode resource to find candidates for a single address specified in the address parameter. - * @param params Specify the address and optionally specify the outFields and searchExtent. + * @param params Specify at least the address and optionally other properties. * @param callback The function to call when the method has completed. * @param errback An error object is returned if an error occurs on the Server during task execution. */ diff --git a/types/archiver/index.d.ts b/types/archiver/index.d.ts index 1ceffb18f9..0dc91ec554 100644 --- a/types/archiver/index.d.ts +++ b/types/archiver/index.d.ts @@ -44,8 +44,6 @@ declare namespace archiver { glob(pattern: string, options?: glob.IOptions, data?: EntryData): this; finalize(): this; - pipe(stream: stream.Writable): void; - setFormat(format: string): this; setModule(module: Function): this; diff --git a/types/auto-launch/auto-launch-tests.ts b/types/auto-launch/auto-launch-tests.ts index ae6ace9620..af141358bd 100644 --- a/types/auto-launch/auto-launch-tests.ts +++ b/types/auto-launch/auto-launch-tests.ts @@ -1,24 +1,23 @@ - - import AutoLaunch = require('auto-launch'); -var a1 = new AutoLaunch({ - name: 'Foo', +const minecraftAutoLauncher = new AutoLaunch({ + name: 'Minecraft', + path: '/Applications/Minecraft.app', + mac: { + useLaunchAgent: true + } }); -var a2 = new AutoLaunch({ - name: 'Foo', - path: '/Applications/Foo.app', - isHidden: true, -}); +minecraftAutoLauncher.enable(); +minecraftAutoLauncher.disable(); -a1.enable(); -a2.disable(); - -a1.isEnabled(function(enabled: boolean) { - if (enabled) { - return; +minecraftAutoLauncher.isEnabled() + .then((isEnabled) => { + if (isEnabled) { + return; } - - a1.enable(function(err){ console.log(err.message); }); -}); + minecraftAutoLauncher.enable(); + }) + .catch((err) => { + console.error(err); + }); diff --git a/types/auto-launch/index.d.ts b/types/auto-launch/index.d.ts index 8a6af4e5dd..1ea4fcc25a 100644 --- a/types/auto-launch/index.d.ts +++ b/types/auto-launch/index.d.ts @@ -1,41 +1,47 @@ -// Type definitions for auto-launch 0.1.18 +// Type definitions for auto-launch 5.0 // Project: https://github.com/Teamwork/node-auto-launch -// Definitions by: rhysd +// Definitions by: rhysd , Daniel Perez Alvarez // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -interface AutoLaunchOption { - /** - * Application name. - */ - name: string; - /** - * Hidden on launch or not. Default is false. - */ - isHidden?: boolean; - /** - * Path to application directory. - * Default is process.execPath. - */ - path?: string; +interface AutoLaunchOptions { + /** + * Application name. + */ + name: string; + /** + * Path to application. Default is `process.execPath`. + */ + path?: string; + /** + * Hidden on launch. Default is `false`. + */ + isHidden?: boolean; + /** + * For Mac-only options. + */ + mac?: { + /** + * By default, AppleScript is used to add a Login Item. If this is `true`, Launch Agent will be used to auto-launch your app. Defaults is `false`. + */ + useLaunchAgent?: boolean; + }; } declare class AutoLaunch { - constructor(opts: AutoLaunchOption); - /** - * Enables to launch at start up - */ - enable(callback?: (err: Error) => void): void; - /** - * Disables to launch at start up - */ - disable(callback?: (err: Error) => void): void; - /** - * Returns if auto start up is enabled - */ - isEnabled(callback: (enabled: boolean) => void): void; + constructor(options: AutoLaunchOptions); + + /** + * Enables auto-launch at start up. + */ + enable(): Promise; + /** + * Disables auto-launch at start up. + */ + disable(): Promise; + /** + * Returns true if auto-launch is enabled. + */ + isEnabled(): Promise; } -declare module "auto-launch" { - var al: typeof AutoLaunch; - export = al; -} +export = AutoLaunch; diff --git a/types/auto-launch/tsconfig.json b/types/auto-launch/tsconfig.json index 2200ea7a60..ba69bba12b 100644 --- a/types/auto-launch/tsconfig.json +++ b/types/auto-launch/tsconfig.json @@ -7,7 +7,7 @@ ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "baseUrl": "../", "typeRoots": [ "../" @@ -20,4 +20,4 @@ "index.d.ts", "auto-launch-tests.ts" ] -} \ No newline at end of file +} diff --git a/is-alphanumerical/tslint.json b/types/auto-launch/tslint.json similarity index 100% rename from is-alphanumerical/tslint.json rename to types/auto-launch/tslint.json diff --git a/types/babel-generator/babel-generator-tests.ts b/types/babel-generator/babel-generator-tests.ts index a27fba50c5..92c65b7f54 100644 --- a/types/babel-generator/babel-generator-tests.ts +++ b/types/babel-generator/babel-generator-tests.ts @@ -1,7 +1,3 @@ -/// - - - // Example from https://github.com/babel/babel/tree/master/packages/babel-generator import {parse} from 'babylon'; import generate from 'babel-generator'; @@ -14,13 +10,13 @@ ast.loc.start; const output = generate(ast, { /* options */ }, code); - // Example from https://github.com/thejameskyle/babel-handbook/blob/master/translations/en/plugin-handbook.md#babel-generator let result = generate(ast, { retainLines: false, compact: "auto", concise: false, quotes: "double", + jsonCompatibleStrings: true, // ... }, code); result.code; diff --git a/types/babel-generator/index.d.ts b/types/babel-generator/index.d.ts index f30505623f..3b3d8126e9 100644 --- a/types/babel-generator/index.d.ts +++ b/types/babel-generator/index.d.ts @@ -1,12 +1,10 @@ -// Type definitions for babel-generator v6.7 +// Type definitions for babel-generator 6.25 // Project: https://github.com/babel/babel/tree/master/packages/babel-generator // Definitions by: Troy Gerwien +// Johnny Estilles // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -/// - import * as t from 'babel-types'; -type Node = t.Node; /** * Turns an AST into code, maintaining sourcemaps, user preferences, and valid output. @@ -15,18 +13,17 @@ type Node = t.Node; * @param code - the original source code, used for source maps. * @returns - an object containing the output code and source map. */ -export default function generate(ast: Node, opts?: GeneratorOptions, code?: string | {[filename: string]: string}): GeneratorResult; +export default function generate(ast: t.Node, opts?: GeneratorOptions, code?: string | {[filename: string]: string}): GeneratorResult; export interface GeneratorOptions { - /** * Optional string to add as a block comment at the start of the output file. - */ + */ auxiliaryCommentBefore?: string; /** * Optional string to add as a block comment at the end of the output file. - */ + */ auxiliaryCommentAfter?: string; /** @@ -34,7 +31,7 @@ export interface GeneratorOptions { * By default, comments are included if `opts.comments` is `true` or if `opts.minifed` is `false` and the comment * contains `@preserve` or `@license`. */ - shouldPrintComment?: (comment: string) => boolean; + shouldPrintComment?(comment: string): boolean; /** * Attempt to use the same line numbers in the output code as in the source code (helps preserve stack traces). @@ -60,7 +57,7 @@ export interface GeneratorOptions { /** * Set to true to reduce whitespace (but not as much as opts.compact). Defaults to `false`. */ - concise?: boolean; + concise?: boolean; /** * The type of quote to use in the output. If omitted, autodetects based on `ast.tokens`. @@ -70,7 +67,7 @@ export interface GeneratorOptions { /** * Used in warning messages */ - filename?: string; + filename?: string; /** * Enable generating source maps. Defaults to `false`. @@ -92,10 +89,14 @@ export interface GeneratorOptions { * This will only be used if `code` is a string. */ sourceFileName?: string; + + /** + * Set to true to run jsesc with "json": true to print "\u00A9" vs. "©"; + */ + jsonCompatibleStrings?: boolean; } export interface GeneratorResult { - map: Object; + map: {}; code: string; } - diff --git a/types/babel-generator/tslint.json b/types/babel-generator/tslint.json new file mode 100644 index 0000000000..e60c15844f --- /dev/null +++ b/types/babel-generator/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} \ No newline at end of file diff --git a/types/bem-cn/bem-cn-tests.ts b/types/bem-cn/bem-cn-tests.ts index d57e138777..97b3bae8c5 100644 --- a/types/bem-cn/bem-cn-tests.ts +++ b/types/bem-cn/bem-cn-tests.ts @@ -1,4 +1,5 @@ import * as block from "bem-cn"; +import { Settings } from "bem-cn"; // expected 'block' block("block")(); @@ -44,3 +45,10 @@ block("block")("elem"); // expected 'block block--mod-value' block("block")({ mod: "value"}); + +// I can use bem-cn interfaces +const customSettings: Settings = { + ns: 'prefix' +}; + +block.setup(customSettings); diff --git a/types/bem-cn/index.d.ts b/types/bem-cn/index.d.ts index 5a78df4435..068298f0f7 100644 --- a/types/bem-cn/index.d.ts +++ b/types/bem-cn/index.d.ts @@ -3,39 +3,39 @@ // Definitions by: Vitaly Selkin // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -type StateFn = (states: { [key: string]: boolean }) => Inner; +type StateFn = (states: { [key: string]: boolean }) => BemCn.Inner; +declare function BemCn(name: string): BemCn.Inner; -interface Modifications { - [key: string]: (string | boolean); +declare namespace BemCn { + function reset(): void; + function setup(settings?: Settings): void; + + interface Modifications { + [key: string]: (string | boolean); + } + + interface Inner { + (elem: string | Modifications): Inner; + (elem: string, mods: Modifications): Inner; + (): string; + + mix(mixes: string | string[]): Inner; + has: StateFn; + state: StateFn; + is: StateFn; + toString(): string; + valueOf(): string; + split(separator: string, limit?: number): string[]; + } + + interface Settings { + ns?: string; + el?: string; + mod?: string; + modValue?: string; + classMap?: { [className: string]: string } | null; + } } -interface Block { - (name: string): Inner; - - reset(): void; - setup(settings?: Settings): void; -} - -interface Inner { - (elem: string | Modifications): Inner; - (elem: string, mods: Modifications): Inner; - (): string; - - mix(mixes: string | string[]): Inner; - has: StateFn; - state: StateFn; - is: StateFn; - toString(): string; - split(separator: string, limit?: number): string[]; -} - -interface Settings { - ns?: string; - el?: string; - mod?: string; - modValue?: string; - classMap?: { [className: string]: string } | null; -} - -declare const block: Block; -export = block; +export as namespace BemCn; +export = BemCn; diff --git a/types/chart.js/index.d.ts b/types/chart.js/index.d.ts index d567492602..6724d27112 100644 --- a/types/chart.js/index.d.ts +++ b/types/chart.js/index.d.ts @@ -130,7 +130,7 @@ declare namespace Chart { } interface ChartData { - labels?: string[]; + labels?: Array; datasets?: ChartDataSets[]; } diff --git a/types/cheerio/cheerio-tests.ts b/types/cheerio/cheerio-tests.ts index 1c0848eef7..4a15f029f0 100644 --- a/types/cheerio/cheerio-tests.ts +++ b/types/cheerio/cheerio-tests.ts @@ -306,3 +306,5 @@ $.parseHTML(html, null, true); * Not in doc */ $el.toArray(); + +cheerio.html($el); diff --git a/types/cheerio/index.d.ts b/types/cheerio/index.d.ts index 4096a0f9c2..f525a46ee6 100644 --- a/types/cheerio/index.d.ts +++ b/types/cheerio/index.d.ts @@ -263,7 +263,7 @@ interface CheerioElement { nodeValue: string; } -interface CheerioAPI extends CheerioSelector { +interface CheerioAPI extends CheerioSelector, CheerioStatic { load(html: string, options?: CheerioOptionsInterface): CheerioStatic; load(element: CheerioElement, options?: CheerioOptionsInterface): CheerioStatic; } diff --git a/types/ckeditor/index.d.ts b/types/ckeditor/index.d.ts index dc4d27871e..71a9202557 100644 --- a/types/ckeditor/index.d.ts +++ b/types/ckeditor/index.d.ts @@ -1681,7 +1681,7 @@ declare namespace CKEDITOR { function addUIElement(typeName: string, builder: Function): void; function cancelButton(): void; function exists(name: string | number): void; // NOTE: documentation says object, but it's an array accessor, so really a string or number will work - function getCurrent(): void; + function getCurrent(): CKEDITOR.dialog; function isTabEnabled(editor: CKEDITOR.editor, dialogName: string, tabName: string): boolean; function okButton(): void; } diff --git a/types/codemirror/codemirror-showhint.d.ts b/types/codemirror/codemirror-showhint.d.ts index 55a3d6012b..c6f367d0d2 100644 --- a/types/codemirror/codemirror-showhint.d.ts +++ b/types/codemirror/codemirror-showhint.d.ts @@ -1,6 +1,8 @@ // Type definitions for CodeMirror // Project: https://github.com/marijnh/CodeMirror -// Definitions by: jacqt , basarat +// Definitions by: jacqt +// basarat +// mbilsing // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // See docs https://codemirror.net/doc/manual.html#addon_show-hint @@ -16,7 +18,7 @@ declare module "codemirror" { and return a {list, from, to} object, where list is an array of strings or objects (the completions), and from and to give the start and end of the token that is being completed as {line, ch} objects. An optional selectedHint property (an integer) can be added to the completion object to control the initially selected hint. */ - function showHint(cm: CodeMirror.Doc, hinter?: HintFunction, options?: ShowHintOptions): void; + function showHint(cm: CodeMirror.Editor, hinter?: HintFunction, options?: ShowHintOptions): void; interface Hints { from: Position; @@ -32,7 +34,7 @@ declare module "codemirror" { displayText?: string; from?: Position; /** Called if a completion is picked. If provided *you* are responsible for applying the completion */ - hint?: (cm: any, data: Hints, cur: Hint) => void; + hint?: (cm: CodeMirror.Editor, data: Hints, cur: Hint) => void; render?: (element: HTMLLIElement, data: Hints, cur: Hint) => void; to?: Position; } @@ -41,18 +43,15 @@ declare module "codemirror" { /** An extension of the existing CodeMirror typings for the Editor.on("keyup", func) syntax */ on(eventName: string, handler: (doc: CodeMirror.Doc, event: any) => void): void; off(eventName: string, handler: (doc: CodeMirror.Doc, event: any) => void): void; - } - - interface Doc { showHint: (options: ShowHintOptions) => void; } interface HintFunction { - (doc: CodeMirror.Doc): Hints; + (cm: CodeMirror.Editor): Hints; } interface AsyncHintFunction { - (doc: CodeMirror.Doc, callback: (hints: Hints) => any): any; + (cm: CodeMirror.Editor, callback: (hints: Hints) => any): any; async?: boolean; } diff --git a/types/codemirror/test/showhint.ts b/types/codemirror/test/showhint.ts index 00dbe6bed4..0aabcc9a86 100644 --- a/types/codemirror/test/showhint.ts +++ b/types/codemirror/test/showhint.ts @@ -1,16 +1,16 @@ -var doc = new CodeMirror.Doc('text'); +var cm = CodeMirror(document.body, {value: 'text'}); var pos = new CodeMirror.Pos(2, 3); -CodeMirror.showHint(doc); -CodeMirror.showHint(doc, function (cm) { +CodeMirror.showHint(cm); +CodeMirror.showHint(cm, function (cm) { return { from: pos, list: ["one", "two"], to: pos }; }); -CodeMirror.showHint(doc, function (cm) { +CodeMirror.showHint(cm, function (cm) { return { from: pos, list: [ @@ -32,7 +32,7 @@ CodeMirror.showHint(doc, function (cm) { }; }); var asyncHintFunc : CodeMirror.AsyncHintFunction = - (doc: CodeMirror.Doc, callback: (hints: CodeMirror.Hints) => any) => { + (cm: CodeMirror.Editor, callback: (hints: CodeMirror.Hints) => any) => { callback({ from: pos, list: ["one", "two"], @@ -41,7 +41,7 @@ var asyncHintFunc : CodeMirror.AsyncHintFunction = }; asyncHintFunc.async = true; -doc.showHint({ +cm.showHint({ completeSingle: false, hint: asyncHintFunc }) diff --git a/types/command-line-args/command-line-args-tests.ts b/types/command-line-args/command-line-args-tests.ts new file mode 100644 index 0000000000..11848ee202 --- /dev/null +++ b/types/command-line-args/command-line-args-tests.ts @@ -0,0 +1,10 @@ +import commandLineArgs = require('command-line-args'); + +const optionDefinitions = [ + { name: 'verbose', alias: 'v', type: Boolean }, + { name: 'src', type: String, multiple: true, defaultOption: true }, + { name: 'timeout', alias: 't', type: Number } +]; + +const options = commandLineArgs(optionDefinitions); + diff --git a/types/command-line-args/index.d.ts b/types/command-line-args/index.d.ts new file mode 100644 index 0000000000..33af16bcf5 --- /dev/null +++ b/types/command-line-args/index.d.ts @@ -0,0 +1,74 @@ +// Type definitions for command-line-args 4.0.6 +// Project: https://github.com/75lb/command-line-args +// Definitions by: CzBuCHi +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/** + * Returns an object containing all options set on the command line. By default it parses the global [`process.argv`](https://nodejs.org/api/process.html#process_process_argv) array. + * + * By default, an exception is thrown if the user sets an unknown option (one without a valid [definition](#exp_module_definition--OptionDefinition)). To enable __partial parsing__, invoke `commandLineArgs` with the `partial` option - all unknown arguments will be returned in the `_unknown` property. + * + * + * @param {module:definition[]} - An array of [OptionDefinition](#exp_module_definition--OptionDefinition) objects + * @param [options] {object} - Options. + * @param [options.argv] {string[]} - An array of strings, which if passed will be parsed instead of `process.argv`. + * @param [options.partial] {boolean} - If `true`, an array of unknown arguments is returned in the `_unknown` property of the output. + * @returns {object} + * @throws `UNKNOWN_OPTION` if `options.partial` is false and the user set an undefined option + * @throws `NAME_MISSING` if an option definition is missing the required `name` property + * @throws `INVALID_TYPE` if an option definition has a `type` value that's not a function + * @throws `INVALID_ALIAS` if an alias is numeric, a hyphen or a length other than 1 + * @throws `DUPLICATE_NAME` if an option definition name was used more than once + * @throws `DUPLICATE_ALIAS` if an option definition alias was used more than once + * @throws `DUPLICATE_DEFAULT_OPTION` if more than one option definition has `defaultOption: true` + * @alias module:command-line-args + */ +declare function commandLineArgs(optionDefinitions: commandLineArgs.OptionDefinition[], options?: commandLineArgs.Options): any; + +declare module commandLineArgs { + + export interface OptionDefinition { + /** + * The only required definition property is name, the value of each option will be either a Boolean or string. + */ + name: string, + /** + * The type value is a setter function (you receive the output from this), enabling you to be specific about the type and value received. + */ + type?: (arg: string) => any, + /** + * getopt-style short option names. Can be any single character (unicode included) except a digit or hypen. + */ + alias?: string, + /** + * Set this flag if the option takes a list of values. You will receive an array of values, each passed through the type function (if specified). + */ + multiple?: boolean, + /** + * Any unclaimed command-line args will be set on this option. This flag is typically set on the most commonly-used option to make for more concise usage (i.e. $ myapp *.js instead of $ myapp --files *.js). + */ + defaultOption?: boolean, + /** + * An initial value for the option. + */ + defaultValue?: any, + /** + * When your app has a large amount of options it makes sense to organise them in groups. + * There are two automatic groups: _all (contains all options) and _none (contains options without a group specified in their definition). + */ + group?: string | string[], + } + + export interface Options { + /** + * An array of strings, which if passed will be parsed instead of `process.argv`. + */ + argv?: string[]; + /** + * If `true`, an array of unknown arguments is returned in the `_unknown` property of the output. + */ + partial?: boolean; + } +} + +export = commandLineArgs; diff --git a/types/command-line-args/tsconfig.json b/types/command-line-args/tsconfig.json new file mode 100644 index 0000000000..2f22f95af1 --- /dev/null +++ b/types/command-line-args/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": false, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "command-line-args-tests.ts" + ] +} \ No newline at end of file diff --git a/types/command-line-commands/command-line-commands-tests.ts b/types/command-line-commands/command-line-commands-tests.ts new file mode 100644 index 0000000000..5ba96986d7 --- /dev/null +++ b/types/command-line-commands/command-line-commands-tests.ts @@ -0,0 +1,7 @@ +import commandLineCommands = require('command-line-commands'); + +const commands = [null, 'first', 'second']; + +const { command, argv } = commandLineCommands(commands, ['first', '--arg']); + + diff --git a/types/command-line-commands/index.d.ts b/types/command-line-commands/index.d.ts new file mode 100644 index 0000000000..cf69198dac --- /dev/null +++ b/types/command-line-commands/index.d.ts @@ -0,0 +1,17 @@ +// Type definitions for command-line-commands 2.0.0 +// Project: https://github.com/75lb/command-line-commands +// Definitions by: CzBuCHi +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +/** + * Parses the `argv` value supplied (or `process.argv` by default), extracting and returning the `command` and remainder of `argv`. The command will be the first value in the `argv` array unless it is an option (e.g. `--help`). + * + * @param {string|string[]} - One or more command strings, one of which the user must supply. Include `null` to represent "no command" (effectively making a command optional). + * @param [argv] {string[]} - An argv array, defaults to the global `process.argv` if not supplied. + * @returns {{ command: string, argv: string[] }} + * @throws `INVALID_COMMAND` - user supplied a command not specified in `commands`. + */ +declare function commandLineCommands(commands: (string | null)[], argv?: string[]): { command: string | null, argv: string[] }; + +export = commandLineCommands; + diff --git a/types/command-line-commands/tsconfig.json b/types/command-line-commands/tsconfig.json new file mode 100644 index 0000000000..5d98c64e58 --- /dev/null +++ b/types/command-line-commands/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": false, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "command-line-commands-tests.ts" + ] +} \ No newline at end of file diff --git a/types/cordova-plugin-badge/cordova-plugin-badge-tests.ts b/types/cordova-plugin-badge/cordova-plugin-badge-tests.ts new file mode 100644 index 0000000000..453b27d884 --- /dev/null +++ b/types/cordova-plugin-badge/cordova-plugin-badge-tests.ts @@ -0,0 +1,16 @@ +/// + +function callback(badgeOrGranted: number | boolean) { + console.log(badgeOrGranted); +} + +window.cordova.plugins.notification.badge.clear(); +window.cordova.plugins.notification.badge.set(10, callback); +window.cordova.plugins.notification.badge.decrease(2, callback); +window.cordova.plugins.notification.badge.increase(5, callback); +window.cordova.plugins.notification.badge.hasPermission(callback); +window.cordova.plugins.notification.badge.requestPermission(callback); +window.cordova.plugins.notification.badge.get(callback); +window.cordova.plugins.notification.badge.configure({ + autoClear: true +}); diff --git a/types/cordova-plugin-badge/index.d.ts b/types/cordova-plugin-badge/index.d.ts new file mode 100644 index 0000000000..6b4e780d5f --- /dev/null +++ b/types/cordova-plugin-badge/index.d.ts @@ -0,0 +1,25 @@ +// Type definitions for cordova-plugin-badge 0.8 +// Project: https://github.com/katzer/cordova-plugin-badge +// Definitions by: Tim Brust +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +interface CordovaPlugins { + notification: { + badge: CordovaPluginBadge; + }; +} + +interface CordovaPluginBadgeOptions { + autoClear: boolean; +} + +interface CordovaPluginBadge { + clear(callback?: (badge: number) => void, scope?: any): void; + set(badge?: number, callback?: (badge: number) => void, scope?: any): void; + get(callback?: (badge: number) => void, scope?: any): void; + increase(count?: number, callback?: (badge: number) => void, scope?: any): void; + decrease(count?: number, callback?: (badge: number) => void, scope?: any): void; + hasPermission(callback?: (granted: boolean) => void, scope?: any): void; + requestPermission(callback?: (granted: boolean) => void, scope?: any): void; + configure(config: CordovaPluginBadgeOptions): CordovaPluginBadgeOptions; +} diff --git a/types/cordova-plugin-badge/tsconfig.json b/types/cordova-plugin-badge/tsconfig.json new file mode 100644 index 0000000000..5f6a71f137 --- /dev/null +++ b/types/cordova-plugin-badge/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "cordova-plugin-badge-tests.ts" + ] +} diff --git a/types/cordova-plugin-badge/tslint.json b/types/cordova-plugin-badge/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/cordova-plugin-badge/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/country-list/country-list-tests.ts b/types/country-list/country-list-tests.ts new file mode 100644 index 0000000000..d96fe630e2 --- /dev/null +++ b/types/country-list/country-list-tests.ts @@ -0,0 +1,16 @@ +import countries from 'country-list'; +const Countries = countries(); + +Countries.getCode('Barbados'); // BB + +Countries.getCodes(); + +Countries.getCodeList(); + +Countries.getData(); + +Countries.getName('BB'); // Barbados + +Countries.getNameList(); + +Countries.getNames(); diff --git a/types/country-list/index.d.ts b/types/country-list/index.d.ts new file mode 100644 index 0000000000..6c1747ff2a --- /dev/null +++ b/types/country-list/index.d.ts @@ -0,0 +1,41 @@ +// Type definitions for country-list 1.1 +// Project: https://github.com/fannarsh/country-list +// Definitions by: Kyle Roach +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export default function Countries(): { + /** + * Expects a two-digit country code. Returns the name for that country. If not found, it returns undefined. + */ + getName(code: string): string | undefined; + + /** + * Expects the English country name. Returns the code for that country. If not found, it returns undefined. + */ + getCode(name: string): string | undefined; + + /** + * Returns an array of all country names. + */ + getNames(): string[]; + + /** + * Returns an array of all country codes. + */ + getCodes(): string[]; + + /** + * Returns a key-value object of all countries using the name as key. + */ + getNameList(): {[name: string]: string}; + + /** + * Returns a key-value object of all countries using the code as key. + */ + getCodeList(): {[code: string]: string}; + + /** + * Returns an array of all country information, in the same format as it gets imported. + */ + getData(): Array<{ code: string, name: string }>; +}; diff --git a/types/country-list/tsconfig.json b/types/country-list/tsconfig.json new file mode 100644 index 0000000000..dce3c4a287 --- /dev/null +++ b/types/country-list/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "country-list-tests.ts" + ] +} diff --git a/types/country-list/tslint.json b/types/country-list/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/country-list/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/delaunator/delaunator-tests.ts b/types/delaunator/delaunator-tests.ts new file mode 100644 index 0000000000..1d50e0273a --- /dev/null +++ b/types/delaunator/delaunator-tests.ts @@ -0,0 +1,31 @@ +import * as Delaunator from 'delaunator'; +import { Points, GetPoint } from 'delaunator'; + +// Default [x, y] +const points: Points = [[168, 180], [168, 178], [168, 179], [168, 181], [168, 183], [167, 183], [167, 184]]; +const d = new Delaunator(points); + +// Custom getX & getY +interface CustomPoint { + x: number; + y: number; +} +const customPoints = [{x: 168, y: 180}, {x: 168, y: 178}, {x: 168, y: 179}, {x: 168, y: 181}, {x: 168, y: 183}, {x: 167, y: 183}, {x: 167, y: 184}]; + +const getX = (point: CustomPoint) => point.x; +const getY = (point: CustomPoint) => point.y; + +new Delaunator(customPoints, point => point.x, point => point.y); +new Delaunator(customPoints, getX, getY); + +// To get the coordinates of all triangles, use: +const triangles = d.triangles; +const halfedges = d.halfedges; +const coordinates: number[][][] = []; +for (let i = 0; i < triangles.length; i += 3) { + coordinates.push([ + points[triangles[i]], + points[triangles[i + 1]], + points[triangles[i + 2]] + ]); +} diff --git a/types/delaunator/index.d.ts b/types/delaunator/index.d.ts new file mode 100644 index 0000000000..5761fec4a8 --- /dev/null +++ b/types/delaunator/index.d.ts @@ -0,0 +1,35 @@ +// Type definitions for delaunator 1.0 +// Project: https://github.com/mapbox/delaunator#readme +// Definitions by: Denis Carriere +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare class Delaunator { + /** + * A flat Int32Array array of triangle vertex indices (each group of three numbers forms a triangle). All triangles are directed counterclockwise. + */ + triangles: Int32Array; + + /** + * A flat Int32Array array of triangle half-edge indices that allows you to traverse the triangulation. + * i-th half-edge in the array corresponds to vertex triangles[i] the half-edge is coming from. + * halfedges[i] is the index of a twin half-edge in an adjacent triangle (or -1 for outer half-edges on the convex hull). + * + * The flat array-based data structures might be counterintuitive, but they're one of the key reasons this library is fast. + */ + halfedges: Int32Array; + + /** + * Constructs a delaunay triangulation object given an array of points ([x, y] by default). Duplicate points are skipped. + */ + constructor(points: Delaunator.Points); + constructor(points: T[], getX: Delaunator.GetPoint, getY: Delaunator.GetPoint); +} + +declare namespace Delaunator { + type Point = number[]; + type Points = Point[]; + type Triangles = Int32Array; + type HalfEdges = Int32Array; + type GetPoint = (point: T) => number; +} +export = Delaunator; diff --git a/types/delaunator/tsconfig.json b/types/delaunator/tsconfig.json new file mode 100644 index 0000000000..438b1c53af --- /dev/null +++ b/types/delaunator/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "delaunator-tests.ts" + ] +} diff --git a/types/delaunator/tslint.json b/types/delaunator/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/delaunator/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/devexpress-web/index.d.ts b/types/devexpress-web/index.d.ts index 466f002f36..50aac382b1 100644 --- a/types/devexpress-web/index.d.ts +++ b/types/devexpress-web/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for DevExpress ASP.NET v171.3 +// Type definitions for DevExpress ASP.NET v171.4 // Project: http://devexpress.com/ // Definitions by: DevExpress Inc. // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -2554,12 +2554,27 @@ interface ASPxClientDashboardDrillUpPerformedEventArgs extends ASPxClientEventAr */ ItemName: string; } +interface CardWidgetCustomizeTextEventArgs { + getValue(): Object; + getDefaultText(): string; +} +/** + * A Card widget that visualizes a Card dashboard item's data. + */ +interface CardWidget { + /** + * Gets or sets the background color for a card. + * Value: A string that specifies the HTML color used to paint a card's background. + */ + cardBackColor: string; + onCustomizeText: Object; +} /** * When implemented, represents the Web Dashboard extension. */ interface IExtension { /** - * A unique name of a Web Dashboard extension. + * Gets a unique name of a Web Dashboard extension. * Value: A string value that is a unique name of a Web Dashboard extension. */ name: string; @@ -2577,12 +2592,12 @@ interface IExtension { */ interface DashboardControl { /** - * Gets or sets knockout templates that you can used in the Web Dashboard. - * Value: A object that is a knockout template. + * Gets or sets knockout templates that you can use in the Web Dashboard. + * Value: A object that is a knockout template collection. */ customTemplates: KnockoutObservableArray; /** - * Provide an access to the collection of registered dashboard extensions. + * Provides an access to the collection of registered dashboard extensions. * Value: An array of IExtension objects that are dashboard extensions. */ extensions: IExtension[]; @@ -2719,7 +2734,7 @@ interface DashboardPanelExtension extends IExtension { */ panelWidth: number; /** - * Allows you to control the Dashboard Panel's visibility. + * Gets or sets whether the Dashboard Panel is visible. * Value: true, to display the Dashboard Panel; otherwise, false. */ visible: KnockoutObservableBoolean; @@ -2739,8 +2754,8 @@ interface AvailableDataSourcesExtension extends IExtension { */ interface DashboardMenuItem { /** - * Gets or sets a unique id of a dashboard menu item. - * Value: A string value that is a menu item's unique name. + * Gets or sets a unique identifier of a dashboard menu item. + * Value: A string value that is a menu item's unique identifier. */ id: string; /** @@ -2749,13 +2764,13 @@ interface DashboardMenuItem { */ title: string; /** - * Gets or sets a position of the dashboard menu item group within the dashboard menu. + * Gets or sets a position of the dashboard menu item within the dashboard menu. * Value: A zero-based integer specifying the position of the current dashboard menu item. */ index: number; /** - * Gets or sets a keyboard shortcut used to invoke the command. - * Value: An integer value that specifies a hotkey combination. + * Gets or sets a code of the key used in the keyboard shortcut. This shortcut allows you to invoke the current menu item. + * Value: An integer value that specifies a key code. */ hotKey: number; /** @@ -2774,7 +2789,7 @@ interface DashboardMenuItem { */ selected: KnockoutObservableBoolean; /** - * Gets or sets whether a dashboard menu item should be disabled. + * Gets whether a dashboard menu item is disabled. * Value: true, if a dashboard menu item should be disabled; otherwise, false. */ disabled: KnockoutObservableBoolean; @@ -2845,7 +2860,7 @@ interface DashboardToolbarItem { title: string; /** * Gets or sets whether a toolbar item should be disabled. - * Value: true, if a toolbar item should be disabled; otherwise, false. + * Value: true, if a toolbar item is disabled; otherwise, false. */ disabled: KnockoutObservableBoolean; /** @@ -3441,6 +3456,10 @@ interface ASPxClientTextEdit extends ASPxClientEdit { * @param position An integer value that specifies the zero-based index of a text character that shall precede the caret. */ SetCaretPosition(position: number): void; + /** + * Obtains the caret position within the edited text. + */ + GetCaretPosition(): number; /** * Selects the specified portion of the editor's text. * @param startPos A zero-based integer value specifying the selection's starting position. @@ -5022,6 +5041,11 @@ interface ASPxClientGridToolbarItemClickEventArgs extends ASPxClientProcessingMo * Value: An integer value that is the toolbar index. */ toolbarIndex: number; + /** + * Gets the toolbar name. + * Value: A string value that is the toolbar name. + */ + toolbarName: string; /** * Gets the clicked toolbar item. * Value: A ASPxClientMenuItem object that is the toolbar item. @@ -9900,7 +9924,7 @@ interface ASPxClientHtmlEditorDialogBase { GetCancelButton(): ASPxClientButton; } /** - * Provides client functionality for Html Editor's dialogs operated with the elements. + * Provides client functionality for Html Editor dialogs operated with its elements. */ interface ASPxClientHtmlEditorEditElementDialog extends ASPxClientHtmlEditorDialogBase { /** @@ -10949,7 +10973,7 @@ interface RichEditCommands { */ changeFontBackColor: ChangeFontBackColorCommand; /** - * Gets a command to reset the selected text's formatting to default. + * Gets a command to reset text and paragraph formatting in the selected range to default. * Value: A object that provides methods for executing the command and checking its state. */ clearFormatting: ClearFormattingCommand; @@ -10979,7 +11003,7 @@ interface RichEditCommands { */ increaseIndent: IncreaseIndentCommand; /** - * Gets a command to decrement the indent level of paragraphs in a selected range. + * Gets a command to decrease the indent level of paragraphs in a selected range. * Value: A object that provides methods for executing the command and checking its state. */ decreaseIndent: DecreaseIndentCommand; @@ -11079,7 +11103,7 @@ interface RichEditCommands { */ openInsertTableDialog: OpenInsertTableDialogCommand; /** - * Gets a command to invoke the Insert Table dialog window. + * Gets a command to insert a rectangle table of a specified size. * Value: A object that provides methods for executing the command and checking its state. */ insertTable: InsertTableCommand; @@ -11089,7 +11113,7 @@ interface RichEditCommands { */ openInsertPictureDialog: OpenInsertPictureDialogCommand; /** - * Gets a command to insert a picture from a file. + * Gets a command to insert an inline picture stored by specifed web address. * Value: A object that provides methods for executing the command and checking its state. */ insertPicture: InsertPictureCommand; @@ -11304,7 +11328,7 @@ interface RichEditCommands { */ openTabsDialog: OpenTabsDialogCommand; /** - * Gets a command to change paragraph tab stops. + * Gets a command to change the tab stop value of a document or selected paragraphs * Value: A object that provides methods for executing the command and checking its state. */ changeTabs: ChangeTabsCommand; @@ -11334,7 +11358,7 @@ interface RichEditCommands { */ decrementNumberingIndent: DecrementNumberingIndentCommand; /** - * Gets a command to create an empty field in the document. + * Gets a command to create a field with an empty code and populate it with the selection (if it is not collapsed). * Value: A object that provides methods for executing the command and checking its state. */ createField: CreateFieldCommand; @@ -11374,17 +11398,17 @@ interface RichEditCommands { */ updateAllFields: UpdateAllFieldsCommand; /** - * Gets a command to insert a DATE field displaying the current date. + * Gets a command to insert and update a field with a DATE code. * Value: A object that provides methods for executing the command and checking its state. */ createDateField: CreateDateFieldCommand; /** - * Gets a command to insert a TIME field displaying the current time. + * Gets a command to replace the selection with a TIME field displaying the current time. * Value: A object that provides methods for executing the command and checking its state. */ createTimeField: CreateTimeFieldCommand; /** - * A command to insert a PAGE field displaying the current page number. + * A command to replace the selection with a PAGE field displaying the current page number. * Value: A object that provides methods for executing the command and checking its state. */ createPageField: CreatePageFieldCommand; @@ -11434,7 +11458,7 @@ interface RichEditCommands { */ mergeFieldDialog: MergeFieldDialogCommand; /** - * Gets a command to insert a MERGEFIELD field (with a data source column name) at the current position in the document. + * Gets a command to replace the selection with a MERGEFIELD (a data source column name is passed with a parameter). * Value: A object that provides methods for executing the command and checking its state. */ createMergeField: CreateMergeFieldCommand; @@ -11504,7 +11528,7 @@ interface RichEditCommands { */ closeHeaderFooter: CloseHeaderFooterCommand; /** - * Gets a command to insert a NUMPAGES field displaying the total number of pages. + * Gets a command to replace the selection with a NUMPAGES field displaying the total number of pages. * Value: A object that provides methods for executing the command and checking its state. */ createPageCountField: CreatePageCountFieldCommand; @@ -11863,6 +11887,7 @@ interface RichEditCommands { * Value: A object that provides methods for executing the command and checking its state. */ changeTextBoxContentMargins: ChangeTextBoxContentMarginsCommand; + changeTextBoxResizeShapeToFitText: ChangeTextBoxResizeShapeToFitTextCommand; } /** * Serves as a base for objects that implement different client command functionalities. @@ -12762,9 +12787,9 @@ interface OpenInsertBookmarkDialogCommand extends CommandWithSimpleStateBase { interface InsertBookmarkCommand extends CommandWithSimpleStateBase { /** * Executes the InsertBookmarkCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param name A string value specifying name of creating bookmark. - * @param start An integer value specifying the start position of bookmark's range. - * @param length An integer value specifying the length of bookmark's range. + * @param name A string value specifying a name of the created bookmark. + * @param start An integer value specifying the start position of the bookmark's range. + * @param length An integer value specifying the length of the bookmark's range. */ execute(name: string, start: number, length: number): boolean; } @@ -12774,7 +12799,7 @@ interface InsertBookmarkCommand extends CommandWithSimpleStateBase { interface DeleteBookmarkCommand extends CommandWithSimpleStateBase { /** * Executes the DeleteBookmarkCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param name A string value specifying name of the deleted bookmark. + * @param name A string value specifying a name of the deleted bookmark. */ execute(name: string): boolean; } @@ -13233,8 +13258,8 @@ interface HideFindResultsCommand extends CommandWithSimpleStateBase { interface ReplaceAllCommand extends CommandWithSimpleStateBase { /** * Executes the ReplaceAllCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param text A string value specifying text to replace. - * @param replaceText A string value specifying replacing text. + * @param text A string value specifying a text to replace. + * @param replaceText A string value specifying the replacing text. * @param matchCase true, to perform a case-sensitive search; otherwise, false. */ execute(text: string, replaceText: string, matchCase: boolean): boolean; @@ -13448,6 +13473,10 @@ interface ChangeTextBoxContentMarginsCommand extends CommandBase { */ getState(): any; } +interface ChangeTextBoxResizeShapeToFitTextCommand extends CommandBase { + execute(resizeShapeToFitText: boolean): boolean; + getState(): any; +} /** * Contains alignment position settings for floating objects. */ @@ -13919,7 +13948,7 @@ interface InsertNumerationCommand extends CommandWithSimpleStateBase { execute(abstractNumberingListIndex: number): boolean; /** * Executes the InsertNumerationCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param numberingListIndex An integer value specifying index of numbering list. + * @param numberingListIndex An integer value specifying an index of the numbering list. * @param isAbstractNumberingList true, to insert an abstract numbering list; otherwise, false. */ execute(numberingListIndex: number, isAbstractNumberingList: boolean): boolean; @@ -14105,7 +14134,7 @@ interface InsertSymbolCommand extends CommandWithSimpleStateBase { /** * Executes the InsertSymbolCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. * @param symbol A string value specifying symbols to insert. - * @param fontName A string value specifying font of symbols to insert. + * @param fontName A string value specifying the font of symbols to insert. */ execute(symbol: string, fontName: string): boolean; } @@ -14124,7 +14153,7 @@ interface InsertParagraphCommand extends CommandWithSimpleStateBase { interface InsertTextCommand extends CommandWithSimpleStateBase { /** * Executes the InsertTextCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param text A string value specifying text to insert. + * @param text A string value specifying a text to insert. */ execute(text: string): boolean; } @@ -14217,7 +14246,15 @@ interface InsertTabCommand extends CommandWithSimpleStateBase { * Defines the scaling settings. */ interface Scale { + /** + * Gets or sets the image's y-scale factor as a percent. + * Value: An integer value that is the y-scale factor as a percent. + */ x: number; + /** + * Gets or sets the image's x-scale factor as a percent. + * Value: An integer value that is the x-scale factor as a percent. + */ y: number; } /** @@ -14346,7 +14383,7 @@ interface ChangeSectionColumnsCommand extends CommandBase { interface ChangePageColorCommand extends CommandBase { /** * Executes the ChangePageColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param color A string specifying background color of the page. May be specified as color name or hex color value. + * @param color A string specifying a background color the page. May be specified as a color name or a hex color value. */ execute(color: string): boolean; /** @@ -14427,7 +14464,7 @@ interface SetDifferentFirstPageHeaderFooterCommand extends CommandWithBooleanSta execute(): boolean; /** * Executes the SetDifferentFirstPageHeaderFooterCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param differentFirstPage true to apply different text for first page's header and footer, false to remove difference. + * @param differentFirstPage true to apply a different text for the first page's header and footer, false to remove the difference. */ execute(differentFirstPage: boolean): boolean; } @@ -14441,7 +14478,7 @@ interface SetDifferentOddAndEvenPagesHeaderFooterCommand extends CommandWithBool execute(): boolean; /** * Executes the SetDifferentOddAndEvenPagesHeaderFooterCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param differentOddAndEvenPages true to apply different text for odd and even pages' header and footer, false to remove difference. + * @param differentOddAndEvenPages true to apply a different text for the header and footer of the odd and even pages , false to remove the difference. */ execute(differentOddAndEvenPages: boolean): boolean; } @@ -14650,7 +14687,7 @@ interface RemoveSpacingAfterParagraphCommand extends CommandWithSimpleStateBase interface ChangeParagraphBackColorCommand extends CommandBase { /** * Executes the ChangeParagraphBackColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param color A string specifying highlighting color of the paragraphs in a selected range. May be specified as color name or hex color value. + * @param color A string specifying a background color of the paragraphs in a selected range. May be specified as a color name or a hex color value. */ execute(color: string): boolean; /** @@ -14906,8 +14943,8 @@ interface OpenInsertTableDialogCommand extends CommandWithSimpleStateBase { interface InsertTableCommand extends CommandWithSimpleStateBase { /** * Executes the InsertTableCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param columnCount An integer value specifying number of columns in a generated table. - * @param rowCount An integer value specifying number of rows in a generated table. + * @param columnCount An integer value specifying a number of columns in a generated table. + * @param rowCount An integer value specifying a number of rows in a generated table. */ execute(columnCount: number, rowCount: number): boolean; } @@ -15122,9 +15159,9 @@ interface SplitTableCellsDialogCommand extends CommandWithSimpleStateBase { interface SplitTableCellsCommand extends CommandWithSimpleStateBase { /** * Executes the SplitTableCellsCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param rowCount An integer value specifying number of rows in the splitted table cells. - * @param columnCount An integer value specifying number of columns in the splitted table cells. - * @param mergeBeforeSplit true to merge the selected cells before splitting; otherwise, false. + * @param rowCount An integer value specifying a number of rows in the split table cells. + * @param columnCount An integer value specifying a number of columns in the split table cells. + * @param mergeBeforeSplit true to merge the selected cells before the splitting; otherwise, false. */ execute(rowCount: number, columnCount: number, mergeBeforeSplit: boolean): boolean; } @@ -15385,7 +15422,7 @@ interface ChangeTableBorderRepositoryItemCommand extends CommandBase { interface ChangeTableCellShadingCommand extends CommandBase { /** * Executes the ChangeTableCellShadingCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param color A string specifying color of the selected cells' shading. May be specified as color name or hex color value. + * @param color A string specifying the color of the selected cells' shading. May be specified as a color name or a hex color value. */ execute(color: string): boolean; /** @@ -15856,7 +15893,7 @@ declare enum TableWidthUnitType { interface ChangeFontNameCommand extends CommandBase { /** * Executes the ChangeFontNameCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param fontName A string specifying font name. + * @param fontName A string specifying the font name. */ execute(fontName: string): boolean; /** @@ -15870,7 +15907,7 @@ interface ChangeFontNameCommand extends CommandBase { interface ChangeFontSizeCommand extends CommandBase { /** * Executes the ChangeFontSizeCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param fontSize An integer number specifying font size. + * @param fontSize An integer number specifying the font size. */ execute(fontSize: number): boolean; /** @@ -16022,7 +16059,7 @@ interface ChangeFontSubscriptCommand extends CommandWithBooleanStateBase { interface ChangeFontForeColorCommand extends CommandBase { /** * Executes the ChangeFontForeColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param color A string specifying font color. May be specified as color name or hex color value. + * @param color A string specifying the font color. May be specified as a color name or a hex color value. */ execute(color: string): boolean; /** @@ -16036,7 +16073,7 @@ interface ChangeFontForeColorCommand extends CommandBase { interface ChangeFontBackColorCommand extends CommandBase { /** * Executes the ChangeFontBackColorCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param color A string specifying highlighting color. May be specified as color name or hex color value. + * @param color A string specifying the background font color. May be specified as a color name or a hex color value. */ execute(color: string): boolean; /** @@ -16064,8 +16101,8 @@ interface ChangeStyleCommand extends CommandBase { execute(style: StyleBase): boolean; /** * Executes the ChangeStyleCommand command by applying the specified settings. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param styleName A string specifying the name of applying style. - * @param isParagraphStyle true to apply style to paragraph, false to apply style to character. + * @param styleName A string specifying the applying style's name. + * @param isParagraphStyle true to apply the style to a paragraph, false to apply the style to a character. */ execute(styleName: string, isParagraphStyle: boolean): boolean; /** @@ -16213,7 +16250,7 @@ interface SetFullscreenCommand extends CommandWithBooleanStateBase { execute(): boolean; /** * Executes the SetFullscreenCommand command by applying the specified setting. May result in taking no action if the command's state does not allow command execution. Use the object's getState method to check the command state. - * @param fullscreen true to apply fullscreen mode, false to remove fullscreen mode. + * @param fullscreen true to apply the fullscreen mode, false to disable the fullscreen mode. */ execute(fullscreen: boolean): boolean; } @@ -17101,7 +17138,7 @@ interface ASPxClientScheduler extends ASPxClientControl { */ ActiveViewChanged: ASPxClientEvent>; /** - * Occurs when an end-user pressers a keyboard shortcut. + * Occurs when an end-user presses a keyboard shortcut. */ Shortcut: ASPxClientEvent>; /** @@ -17926,8 +17963,8 @@ interface ASPxClientToolTipBase { */ Close(): void; /** - * - * @param bounds + * Gets the tooltip position. + * @param bounds An object that represents the tooltip bounds. */ CalculatePosition(bounds: Object): ASPxClientPoint; /** @@ -19184,6 +19221,11 @@ interface ASPxClientTreeListToolbarItemClickEventArgs extends ASPxClientProcessi * Value: An integer value that is the toolbar index. */ toolbarIndex: number; + /** + * Gets the toolbar name. + * Value: A string object that is the toolbar name. + */ + toolbarName: string; /** * Gets the toolbar item related to the event. * Value: An ASPxClientMenuItem object that is the toolbar item. @@ -19526,11 +19568,6 @@ interface BootstrapClientDropDownEdit extends ASPxClientDropDownEdit { */ interface BootstrapClientFormLayout extends ASPxClientFormLayout { } -/** - * Represents a client-side equivalent of the BootstrapGridView control. - */ -interface BootstrapClientGridView extends ASPxClientGridView { -} /** * Represents a client-side equivalent of the BootstrapHyperLink control. */ @@ -19795,6 +19832,8 @@ interface BootstrapUIWidgetBase extends ASPxClientControl { IncidentOccurred: ASPxClientEvent>; GetInstance(): Object; SetOptions(options: Object): void; + SetDataSource(dataSource: Object): void; + GetDataSource(): Object; ExportTo(format: string, fileName: string): void; Print(): void; } @@ -19848,6 +19887,8 @@ interface BootstrapUIWidgetElementClickEventArgs extends BootstrapUIWidgetElemen */ interface BootstrapClientUploadControl extends ASPxClientUploadControl { } +interface BootstrapClientGridView extends ASPxClientGridView { +} /** * A client-side counterpart of the Calendar and CalendarFor extensions. */ @@ -20489,6 +20530,9 @@ interface MVCxClientRoundPanel extends ASPxClientRoundPanel { * A client-side counterpart of the Scheduler extension. */ interface MVCxClientScheduler extends ASPxClientScheduler { + /** + * Occurs on the client side when the tooltip is about to be displayed. + */ ToolTipDisplaying: ASPxClientEvent>; /** * Occurs when a callback for server-side processing is initiated. @@ -20515,6 +20559,10 @@ interface MVCxClientScheduler extends ASPxClientScheduler { * A template that is rendered to display a tooltip. */ interface MVCxClientSchedulerTemplateToolTip extends ASPxClientToolTipBase { + /** + * Gets the tooltip type. + * Value: A MVCxSchedulerToolTipType object that specifies the tooltip type. + */ type: MVCxSchedulerToolTipType; } /** @@ -20532,7 +20580,15 @@ interface MVCxClientSchedulerToolTipDisplayingEventHandler { * Provides data for the ToolTipDisplaying event. */ interface MVCxClientSchedulerToolTipDisplayingEventArgs extends ASPxClientEventArgs { + /** + * Gets the tooltip related to the event. + * Value: A MVCxClientSchedulerTemplateToolTip object that specifies the tooltip. + */ toolTip: MVCxClientSchedulerTemplateToolTip; + /** + * Gets information about the tooltip related to the event. + * Value: A ASPxClientSchedulerToolTipData object that specifies information about the tooltip. + */ data: ASPxClientSchedulerToolTipData; } /** @@ -23396,6 +23452,11 @@ interface ASPxClientHintShowingEventArgs extends ASPxClientEventArgs { * Value: An object representing the hint's title element related to the event. */ titleElement: Object; + /** + * Gets or sets a value indicating whether the event should be canceled. + * Value: true, if the event should be canceled; otherwise, false. + */ + cancel: boolean; } /** * A method that will handle the Hiding event. @@ -32198,8 +32259,6 @@ interface BootstrapClientDropDownEditStatic extends ASPxClientDropDownEditStatic } interface BootstrapClientFormLayoutStatic extends ASPxClientFormLayoutStatic { } -interface BootstrapClientGridViewStatic extends ASPxClientGridViewStatic { -} interface BootstrapClientHyperLinkStatic extends ASPxClientHyperLinkStatic { } interface BootstrapClientImageStatic extends ASPxClientImageStatic { @@ -32238,6 +32297,8 @@ interface BootstrapUIWidgetBaseStatic extends ASPxClientControlStatic { } interface BootstrapClientUploadControlStatic extends ASPxClientUploadControlStatic { } +interface BootstrapClientGridViewStatic extends ASPxClientGridViewStatic { +} interface MVCxClientCalendarStatic extends ASPxClientCalendarStatic { /** * Converts the specified object to the current object's type. This method is effective when you utilize the Client API IntelliSense feature provided by DevExpress. @@ -32702,15 +32763,15 @@ interface ASPxClientHintStatic extends ASPxClientControlStatic { */ Register(targetSelector: string, options: ASPxClientHintOptions): ASPxClientHint; /** - * - * @param targetSelector - * @param contentAttribute + * Registers a hint's functionality with the specified settings. + * @param targetSelector A string value that is the CSS selector. Specifies to which UI elements the hint is displayed. + * @param contentAttribute A string value that is the attribute name. Specifies from which target element's attribute a hint obtains its content. */ Register(targetSelector: string, contentAttribute: string): ASPxClientHint; /** - * - * @param targetSelector - * @param onShowing + * Registers a hint's functionality with the specified settings. + * @param targetSelector A string value that is the CSS selector. Specifies for which UI elements the hint is displayed. + * @param onShowing An ASPxClientHintShowingEventHandler object that is a handler for the displayed event. */ Register(targetSelector: string, onShowing: ASPxClientHintShowingEventHandler): ASPxClientHint; /** @@ -33521,7 +33582,6 @@ declare var BootstrapClientComboBox: BootstrapClientComboBoxStatic; declare var BootstrapClientDateEdit: BootstrapClientDateEditStatic; declare var BootstrapClientDropDownEdit: BootstrapClientDropDownEditStatic; declare var BootstrapClientFormLayout: BootstrapClientFormLayoutStatic; -declare var BootstrapClientGridView: BootstrapClientGridViewStatic; declare var BootstrapClientHyperLink: BootstrapClientHyperLinkStatic; declare var BootstrapClientImage: BootstrapClientImageStatic; declare var BootstrapClientListBox: BootstrapClientListBoxStatic; @@ -33541,6 +33601,7 @@ declare var BootstrapClientButtonEdit: BootstrapClientButtonEditStatic; declare var BootstrapClientTreeView: BootstrapClientTreeViewStatic; declare var BootstrapUIWidgetBase: BootstrapUIWidgetBaseStatic; declare var BootstrapClientUploadControl: BootstrapClientUploadControlStatic; +declare var BootstrapClientGridView: BootstrapClientGridViewStatic; declare var MVCxClientCalendar: MVCxClientCalendarStatic; declare var MVCxClientCallbackPanel: MVCxClientCallbackPanelStatic; declare var MVCxClientCardView: MVCxClientCardViewStatic; diff --git a/types/devexpress-web/v162/index.d.ts b/types/devexpress-web/v162/index.d.ts index 89d0b0d657..e345c2e13b 100644 --- a/types/devexpress-web/v162/index.d.ts +++ b/types/devexpress-web/v162/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for DevExpress ASP.NET v162.7 +// Type definitions for DevExpress ASP.NET v162.8 // Project: http://devexpress.com/ // Definitions by: DevExpress Inc. // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -2409,6 +2409,10 @@ interface ASPxClientTextEdit extends ASPxClientEdit { * @param position An integer value that specifies the zero-based index of a text character that shall precede the caret. */ SetCaretPosition(position: number): void; + /** + * Obtains the caret position within the edited text. + */ + GetCaretPosition(): number; /** * Selects the specified portion of the editor's text. * @param startPos A zero-based integer value specifying the selection's starting position. @@ -7822,8 +7826,20 @@ interface ASPxClientHtmlEditorCommandStyleSettings { * Value: A string that specifies an element's left margin in any correct format. */ marginLeft: string; + /** + * Gets or sets a media element's background color. + * Value: A string that specifies a background color in any correct format. + */ backgroundColor: string; + /** + * Gets or sets the element's text alignment. + * Value: A string value that specifies the element's text alignment in any correct format. + */ textAlign: string; + /** + * Gets or sets the element's vertical alignment. + * Value: A string value that specifies the element's vertical alignment in any correct format. + */ verticalAlign: string; } /** @@ -7895,6 +7911,10 @@ interface ASPxClientHtmlEditorInsertLinkCommandArguments extends ASPxClientHtmlE * Value: A string value defining the title of the target link. */ title: string; + /** + * Contains the style settings defining the appearance of the target link element. + * Value: An object that contains the style settings defining the appearance of the target link element. + */ styleSettings: ASPxClientHtmlEditorCommandStyleSettings; } /** diff --git a/types/dom-inputevent/dom-inputevent-tests.ts b/types/dom-inputevent/dom-inputevent-tests.ts new file mode 100644 index 0000000000..91c427d701 --- /dev/null +++ b/types/dom-inputevent/dom-inputevent-tests.ts @@ -0,0 +1,10 @@ +const input = document.createElement('input'); +input.addEventListener('input', (event: InputEvent) => { + return event.data === 'foo' && event.isComposing === true; +}); + +const foo = new InputEvent('input'); +const bar = new InputEvent('beforeinput', { + data: 'bar', + isComposing: true, +}); diff --git a/types/dom-inputevent/index.d.ts b/types/dom-inputevent/index.d.ts new file mode 100644 index 0000000000..df1cce5ec4 --- /dev/null +++ b/types/dom-inputevent/index.d.ts @@ -0,0 +1,17 @@ +// Type definitions for UI Events W3C Working Draft — Input Events — Interface InputEvent 1.0 +// Project: https://w3c.github.io/uievents/#interface-inputevent +// Definitions by: Steven Sinatra +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +interface InputEventInit extends UIEventInit { + data?: string; + isComposing: boolean; +} +interface InputEvent extends UIEvent { + readonly data: string; + readonly isComposing: boolean; +} + +declare class InputEvent { + constructor(typeArg: 'input' | 'beforeinput', inputEventInit?: InputEventInit); +} diff --git a/types/dom-inputevent/tsconfig.json b/types/dom-inputevent/tsconfig.json new file mode 100644 index 0000000000..1577efb197 --- /dev/null +++ b/types/dom-inputevent/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "dom-inputevent-tests.ts" + ] +} diff --git a/types/dom-inputevent/tslint.json b/types/dom-inputevent/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/dom-inputevent/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/draggabilly/draggabilly-tests.ts b/types/draggabilly/draggabilly-tests.ts new file mode 100644 index 0000000000..6ab38e6c13 --- /dev/null +++ b/types/draggabilly/draggabilly-tests.ts @@ -0,0 +1,46 @@ +import Draggabilly from 'draggabilly'; + +const elem = document.querySelector('.draggable') as Element; + +const draggieA = new Draggabilly('.test'); +const draggieB = new Draggabilly(elem); + +const draggie = new Draggabilly(elem, { + axis: 'x', + containment: true, + grid: [20, 20], + handle: '.handle' +}); + +const draggiePosX: number = draggie.position.x; +const draggiePosY: number = draggie.position.y; + +draggie.on( 'dragMove', (event, pointer, moveVector) => { + const pointerPageX: number = pointer.pageX; + const pointePageY: number = pointer.pageY; + + const moveVectorX: number = moveVector.x; + const moveVectorY: number = moveVector.y; +}); + +draggie.on( 'dragStart', (event, pointer) => {}); + +draggie.on( 'dragEnd', (event, pointer) => {}); + +draggie.on( 'pointerDown', (event, pointer) => {}); + +draggie.on( 'pointerMove', (event, pointer, moveVector) => {}); + +draggie.on( 'pointerUp', (event, pointer) => {}); + +draggie.on( 'staticClick', (event, pointer) => {}); + +draggie.off('dragMove', (event, pointer, moveVector) => {}); + +draggie.once('dragMove', (event, pointer, moveVector) => {}); + +draggie.enable(); + +draggie.disable(); + +draggie.destroy(); diff --git a/types/draggabilly/index.d.ts b/types/draggabilly/index.d.ts new file mode 100644 index 0000000000..6307c424ab --- /dev/null +++ b/types/draggabilly/index.d.ts @@ -0,0 +1,45 @@ +// Type definitions for draggabilly 2.1 +// Project: http://draggabilly.desandro.com/ +// Definitions by: Jason Wu +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +export interface Position { + x: number; + y: number; +} + +export interface DraggabillyOptions { + axis?: 'x' | 'y'; + containment?: Element | string | boolean; + grid?: [number, number]; + handle?: string; +} + +export type DraggabillyClickEventName = 'dragStart' | 'dragEnd' | 'pointerDown' | 'pointerUp' | 'staticClick'; + +export type DraggabillyMoveEventName = 'dragMove' | 'pointerMove'; + +export default class Draggabilly { + position: Position; + + constructor(element: Element | string, options?: DraggabillyOptions); + + on(eventName: DraggabillyClickEventName, listener: (event: Event, pointer: MouseEvent | Touch) => void): Draggabilly; + + on(eventName: DraggabillyMoveEventName, listener: (event: Event, pointer: MouseEvent | Touch, moveVector: Position) => void): Draggabilly; + + off(eventName: DraggabillyClickEventName, listener: (event: Event, pointer: MouseEvent | Touch) => void): Draggabilly; + + off(eventName: DraggabillyMoveEventName, listener: (event: Event, pointer: MouseEvent | Touch, moveVector: Position) => void): Draggabilly; + + once(eventName: DraggabillyClickEventName, listener: (event: Event, pointer: MouseEvent | Touch) => void): Draggabilly; + + once(eventName: DraggabillyMoveEventName, listener: (event: Event, pointer: MouseEvent | Touch, moveVector: Position) => void): Draggabilly; + + enable(): void; + + disable(): void; + + destroy(): void; +} diff --git a/types/draggabilly/tsconfig.json b/types/draggabilly/tsconfig.json new file mode 100644 index 0000000000..32cc6ee235 --- /dev/null +++ b/types/draggabilly/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "draggabilly-tests.ts" + ] +} diff --git a/types/draggabilly/tslint.json b/types/draggabilly/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/draggabilly/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/dropzone/dropzone-tests.ts b/types/dropzone/dropzone-tests.ts index f52cbc303e..53cedba333 100644 --- a/types/dropzone/dropzone-tests.ts +++ b/types/dropzone/dropzone-tests.ts @@ -1,9 +1,13 @@ const dropzoneFromString = new Dropzone(".test"); const dropzoneFromElement = new Dropzone(document.getElementById("test")); -const dropzoneRenameFunction = function (name:string):string { - return name + 'new'; +const dropzoneRenameFunction = function (name: string): string { + return name + 'new'; }; +Dropzone.createElement('
'); +Dropzone.isBrowserSupported(); +console.log(Dropzone.instances.length); + const dropzoneWithOptions = new Dropzone(".test", { url: "/some/url", method: "post", @@ -14,8 +18,14 @@ const dropzoneWithOptions = new Dropzone(".test", { paramName: "file", createImageThumbnails: true, maxThumbnailFilesize: 1024, - thumbnailWidth: 50, - thumbnailHeight: 50, + thumbnailWidth: 120, + thumbnailHeight: 120, + thumbnailMethod: 'crop', + resizeWidth: 1024, + resizeHeight: 1024, + resizeMimeType: 'image.jpeg', + resizeQuality: .8, + resizeMethod: 'contain', filesizeBase: 1000, maxFiles: 100, params: { @@ -47,7 +57,7 @@ const dropzoneWithOptions = new Dropzone(".test", { dictRemoveFileConfirmation: "", dictMaxFilesExceeded: "", - accept: (file:Dropzone.DropzoneFile, done:(error?:string|Error) => void) => { + accept: (file: Dropzone.DropzoneFile, done: (error?: string | Error) => void) => { if (file.accepted) { file.previewElement.classList.add("accepted"); file.previewTemplate.classList.add("accepted"); @@ -61,7 +71,7 @@ const dropzoneWithOptions = new Dropzone(".test", { init: () => console.log("Initialized"), forceFallback: false, fallback: () => console.log("Fallback"), - resize: (file:Dropzone.DropzoneFile) => ({ + resize: (file: Dropzone.DropzoneFile, width: 120, height: 120, resizeMethod: 'contain') => ({ srcX: 0, srcY: 0, trgX: 10, @@ -70,54 +80,52 @@ const dropzoneWithOptions = new Dropzone(".test", { srcHeight: 100, trgWidth: 50, trgHeight: 50, - optWidth: 50, - optHeight: 50 }), - drop: (e:DragEvent) => console.log("Drop"), - dragstart: (e:DragEvent) => console.log("Dragstart"), - dragend: (e:DragEvent) => console.log("Dragend"), - dragenter: (e:DragEvent) => console.log("Dragenter"), - dragover: (e:DragEvent) => console.log("Dragover"), - dragleave: (e:DragEvent) => console.log("Dragleave"), - paste: (e:DragEvent) => console.log("Paste"), + drop: (e: DragEvent) => console.log("Drop"), + dragstart: (e: DragEvent) => console.log("Dragstart"), + dragend: (e: DragEvent) => console.log("Dragend"), + dragenter: (e: DragEvent) => console.log("Dragenter"), + dragover: (e: DragEvent) => console.log("Dragover"), + dragleave: (e: DragEvent) => console.log("Dragleave"), + paste: (e: DragEvent) => console.log("Paste"), reset: () => console.log("Reset"), - addedfile: (file:Dropzone.DropzoneFile) => console.log("Addedfile"), - addedfiles: (files:Dropzone.DropzoneFile[]) => console.log("Addedfiles"), - removedfile: (file:Dropzone.DropzoneFile) => console.log("Removedfile"), - thumbnail: (file:Dropzone.DropzoneFile, dataUrl:string) => console.log("Thumbnail"), + addedfile: (file: Dropzone.DropzoneFile) => console.log("Addedfile"), + addedfiles: (files: Dropzone.DropzoneFile[]) => console.log("Addedfiles"), + removedfile: (file: Dropzone.DropzoneFile) => console.log("Removedfile"), + thumbnail: (file: Dropzone.DropzoneFile, dataUrl: string) => console.log("Thumbnail"), - error: (file:Dropzone.DropzoneFile, message:string|Error) => console.log("Error"), - errormultiple: (files:Dropzone.DropzoneFile[], message:string|Error) => console.log("Errormultiple"), + error: (file: Dropzone.DropzoneFile, message: string | Error) => console.log("Error"), + errormultiple: (files: Dropzone.DropzoneFile[], message: string | Error) => console.log("Errormultiple"), - processing: (file:Dropzone.DropzoneFile) => console.log("Processing"), - processingmultiple: (files:Dropzone.DropzoneFile[]) => console.log("Processingmultiple"), + processing: (file: Dropzone.DropzoneFile) => console.log("Processing"), + processingmultiple: (files: Dropzone.DropzoneFile[]) => console.log("Processingmultiple"), - uploadprogress: (file:Dropzone.DropzoneFile, progress:number, bytesSent:number) => console.log("Uploadprogress"), - totaluploadprogress: (totalProgress:number, totalBytes:number, totalBytesSent:number) => console.log("Totaluploadprogress"), + uploadprogress: (file: Dropzone.DropzoneFile, progress: number, bytesSent: number) => console.log("Uploadprogress"), + totaluploadprogress: (totalProgress: number, totalBytes: number, totalBytesSent: number) => console.log("Totaluploadprogress"), - sending: (file:Dropzone.DropzoneFile, xhr:XMLHttpRequest, formData:{}) => console.log("Sending"), - sendingmultiple: (files:Dropzone.DropzoneFile[], xhr:XMLHttpRequest, formData:{}) => console.log("Sendingmultiple"), + sending: (file: Dropzone.DropzoneFile, xhr: XMLHttpRequest, formData: {}) => console.log("Sending"), + sendingmultiple: (files: Dropzone.DropzoneFile[], xhr: XMLHttpRequest, formData: {}) => console.log("Sendingmultiple"), - success: (file:Dropzone.DropzoneFile) => console.log("Success"), - successmultiple: (files:Dropzone.DropzoneFile[]) => console.log("Successmultiple"), + success: (file: Dropzone.DropzoneFile) => console.log("Success"), + successmultiple: (files: Dropzone.DropzoneFile[]) => console.log("Successmultiple"), - canceled: (file:Dropzone.DropzoneFile) => console.log("Canceled"), - canceledmultiple: (file:Dropzone.DropzoneFile[]) => console.log("Canceledmultiple"), + canceled: (file: Dropzone.DropzoneFile) => console.log("Canceled"), + canceledmultiple: (file: Dropzone.DropzoneFile[]) => console.log("Canceledmultiple"), - complete: (file:Dropzone.DropzoneFile) => console.log("Complete"), - completemultiple: (file:Dropzone.DropzoneFile[]) => console.log("Completemultiple"), + complete: (file: Dropzone.DropzoneFile) => console.log("Complete"), + completemultiple: (file: Dropzone.DropzoneFile[]) => console.log("Completemultiple"), - maxfilesexceeded: (file:Dropzone.DropzoneFile) => console.log("Maxfilesexceeded"), - maxfilesreached: (files:Dropzone.DropzoneFile[]) => console.log("Maxfilesreached"), + maxfilesexceeded: (file: Dropzone.DropzoneFile) => console.log("Maxfilesexceeded"), + maxfilesreached: (files: Dropzone.DropzoneFile[]) => console.log("Maxfilesreached"), queuecomplete: () => console.log("Queuecomplete"), previewTemplate: "
", }); -var dropzoneWithOptionsVariations:Dropzone; +var dropzoneWithOptionsVariations: Dropzone; dropzoneWithOptionsVariations = new Dropzone(".test", { clickable: ".test" }); @@ -135,10 +143,10 @@ dropzoneWithOptionsVariations = new Dropzone(".test", { }); dropzoneWithOptionsVariations = new Dropzone(".test", { - success: (file:Dropzone.DropzoneFile, response:Object) => console.log(file, response) + success: (file: Dropzone.DropzoneFile, response: Object) => console.log(file, response) }); dropzoneWithOptionsVariations = new Dropzone(".test", { - success: (file:Dropzone.DropzoneFile, response:string) => console.log(file, response) + success: (file: Dropzone.DropzoneFile, response: string) => console.log(file, response) }); const dropzone = new Dropzone(".test"); @@ -167,19 +175,34 @@ dropzone.enqueueFile(firstFile); dropzone.processFile(firstFile); dropzone.uploadFile(firstFile); dropzone.cancelUpload(firstFile); -dropzone.createThumbnail(firstFile, () => { + +dropzone.createThumbnail(firstFile); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod, true); +dropzone.createThumbnail(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod, true, () => { console.log("createThumbnail") }); -dropzone.createThumbnailFromUrl(firstFile, "/some/url", () => { + +dropzone.createThumbnailFromUrl(firstFile); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod, true); +dropzone.createThumbnailFromUrl(firstFile, dropzone.defaultOptions.resizeWidth, dropzone.defaultOptions.resizeHeight, dropzone.defaultOptions.resizeMethod, true, () => { console.log("createThumbnailFromUrl") }); -dropzone.accept(firstFile, (e:string|Error) => { +dropzone.accept(firstFile, (e: string | Error) => { console.log(e); }); const acceptedFiles = dropzone.getAcceptedFiles(); dropzone.processFiles(acceptedFiles); +const addedFiles = dropzone.getAddedFiles(); +dropzone.processFiles(addedFiles); + const rejectedFiles = dropzone.getRejectedFiles(); dropzone.enqueueFiles(rejectedFiles); @@ -192,12 +215,18 @@ dropzone.processFiles(uploadingFiles); const activeFiles = dropzone.getActiveFiles(); dropzone.processFiles(activeFiles); -const addedFiles = dropzone.getFilesWithStatus(Dropzone.ADDED); -dropzone.processFiles(addedFiles); +const getFileWithStatusAdded = dropzone.getFilesWithStatus(Dropzone.ADDED); +dropzone.processFiles(getFileWithStatusAdded); dropzone.processQueue(); dropzone.removeAllFiles(true); +dropzone.resizeImage(firstFile); +dropzone.resizeImage(firstFile, 120); +dropzone.resizeImage(firstFile, 120, 120); +dropzone.resizeImage(firstFile, 120, 120, 'contain'); +dropzone.resizeImage(firstFile, 120, 120, 'contain', function () { }); + dropzone .on("drop", () => { console.count('drop'); @@ -287,9 +316,9 @@ dropzone console.count('queuecomplete'); }); - dropzone.off("drop", () => { - console.count('drop'); - }) +dropzone.off("drop", () => { + console.count('drop'); +}) .off("dragstart") .off(); diff --git a/types/dropzone/index.d.ts b/types/dropzone/index.d.ts index 703172072f..18a70ca7fb 100644 --- a/types/dropzone/index.d.ts +++ b/types/dropzone/index.d.ts @@ -1,6 +1,6 @@ -// Type definitions for Dropzone 4.3.0 +// Type definitions for Dropzone 5.0.0 // Project: http://www.dropzonejs.com/ -// Definitions by: Natan Vivo , Andy Hawkins , Vasya Aksyonov , Simon Huber , Sebastiaan de Rooij +// Definitions by: Natan Vivo , Andy Hawkins , Vasya Aksyonov , Simon Huber , Sebastiaan de Rooij , Ted Bicknell // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -8,16 +8,14 @@ declare namespace Dropzone { export interface DropzoneResizeInfo { - srcX?:number; - srcY?:number; - trgX?:number; - trgY?:number; - srcWidth?:number; - srcHeight?:number; - trgWidth?:number; - trgHeight?:number; - optWidth?:number; - optHeight?:number; + srcX?: number; + srcY?: number; + trgX?: number; + trgY?: number; + srcWidth?: number; + srcHeight?: number; + trgWidth?: number; + trgHeight?: number; } export interface DropzoneFile extends File { @@ -41,18 +39,24 @@ declare namespace Dropzone { maxThumbnailFilesize?: number; thumbnailWidth?: number; thumbnailHeight?: number; + thumbnailMethod?: string; + resizeWidth?: number; + resizeHeight?: number; + resizeMimeType?: string; + resizeQuality?: number; + resizeMethod?: string; filesizeBase?: number; maxFiles?: number; params?: {}; headers?: {}; - clickable?: boolean|string|HTMLElement|(string|HTMLElement)[]; + clickable?: boolean | string | HTMLElement | (string | HTMLElement)[]; ignoreHiddenFiles?: boolean; acceptedFiles?: string; - renameFilename?(name:string): string; + renameFilename?(name: string): string; autoProcessQueue?: boolean; autoQueue?: boolean; addRemoveLinks?: boolean; - previewsContainer?: boolean|string|HTMLElement; + previewsContainer?: boolean | string | HTMLElement; hiddenInputContainer?: HTMLElement; capture?: string; @@ -68,209 +72,225 @@ declare namespace Dropzone { dictRemoveFileConfirmation?: string; dictMaxFilesExceeded?: string; - accept?(file:DropzoneFile, done:(error?:string|Error) => void):void; - init?():void; + accept?(file: DropzoneFile, done: (error?: string | Error) => void): void; + init?(): void; forceFallback?: boolean; - fallback?():void; - resize?(file:DropzoneFile):DropzoneResizeInfo; + fallback?(): void; + resize?(file: DropzoneFile, width?: number, height?: number, resizeMethod?: string): DropzoneResizeInfo; - drop?(e:DragEvent):void; - dragstart?(e:DragEvent):void; - dragend?(e:DragEvent):void; - dragenter?(e:DragEvent):void; - dragover?(e:DragEvent):void; - dragleave?(e:DragEvent):void; - paste?(e:DragEvent):void; + drop?(e: DragEvent): void; + dragstart?(e: DragEvent): void; + dragend?(e: DragEvent): void; + dragenter?(e: DragEvent): void; + dragover?(e: DragEvent): void; + dragleave?(e: DragEvent): void; + paste?(e: DragEvent): void; - reset?():void; + reset?(): void; - addedfile?(file:DropzoneFile):void; - addedfiles?(files:DropzoneFile[]):void; - removedfile?(file:DropzoneFile):void; - thumbnail?(file:DropzoneFile, dataUrl:string):void; + addedfile?(file: DropzoneFile): void; + addedfiles?(files: DropzoneFile[]): void; + removedfile?(file: DropzoneFile): void; + thumbnail?(file: DropzoneFile, dataUrl: string): void; - error?(file:DropzoneFile, message:string|Error, xhr:XMLHttpRequest):void; - errormultiple?(files:DropzoneFile[], message:string|Error, xhr:XMLHttpRequest):void; + error?(file: DropzoneFile, message: string | Error, xhr: XMLHttpRequest): void; + errormultiple?(files: DropzoneFile[], message: string | Error, xhr: XMLHttpRequest): void; - processing?(file:DropzoneFile):void; - processingmultiple?(files:DropzoneFile[]):void; + processing?(file: DropzoneFile): void; + processingmultiple?(files: DropzoneFile[]): void; - uploadprogress?(file:DropzoneFile, progress:number, bytesSent:number):void; - totaluploadprogress?(totalProgress:number, totalBytes:number, totalBytesSent:number):void; + uploadprogress?(file: DropzoneFile, progress: number, bytesSent: number): void; + totaluploadprogress?(totalProgress: number, totalBytes: number, totalBytesSent: number): void; - sending?(file:DropzoneFile, xhr:XMLHttpRequest, formData:FormData):void; - sendingmultiple?(files:DropzoneFile[], xhr:XMLHttpRequest, formData:FormData):void; + sending?(file: DropzoneFile, xhr: XMLHttpRequest, formData: FormData): void; + sendingmultiple?(files: DropzoneFile[], xhr: XMLHttpRequest, formData: FormData): void; - success?(file: DropzoneFile, response: Object|string): void; - successmultiple?(files:DropzoneFile[], responseText:string):void; + success?(file: DropzoneFile, response: Object | string): void; + successmultiple?(files: DropzoneFile[], responseText: string): void; - canceled?(file:DropzoneFile):void; - canceledmultiple?(file:DropzoneFile[]):void; + canceled?(file: DropzoneFile): void; + canceledmultiple?(file: DropzoneFile[]): void; - complete?(file:DropzoneFile):void; - completemultiple?(file:DropzoneFile[]):void; + complete?(file: DropzoneFile): void; + completemultiple?(file: DropzoneFile[]): void; - maxfilesexceeded?(file:DropzoneFile):void; - maxfilesreached?(files:DropzoneFile[]):void; - queuecomplete?():void; + maxfilesexceeded?(file: DropzoneFile): void; + maxfilesreached?(files: DropzoneFile[]): void; + queuecomplete?(): void; previewTemplate?: string; } } declare class Dropzone { - constructor(container:string|HTMLElement, options?:Dropzone.DropzoneOptions); + constructor(container: string | HTMLElement, options?: Dropzone.DropzoneOptions); - static autoDiscover:boolean; - static options:any; - static confirm:(question:string, accepted:() => void, rejected?:() => void) => void; + static autoDiscover: boolean; + static options: any; + static confirm: (question: string, accepted: () => void, rejected?: () => void) => void; + static createElement(string: string): HTMLElement; + static isBrowserSupported(): boolean; + static instances: Dropzone[]; - static ADDED:string; - static QUEUED:string; - static ACCEPTED:string; - static UPLOADING:string; - static PROCESSING:string; - static CANCELED:string; - static ERROR:string; - static SUCCESS:string; + static ADDED: string; + static QUEUED: string; + static ACCEPTED: string; + static UPLOADING: string; + static PROCESSING: string; + static CANCELED: string; + static ERROR: string; + static SUCCESS: string; - files:Dropzone.DropzoneFile[]; + files: Dropzone.DropzoneFile[]; + defaultOptions: Dropzone.DropzoneOptions; - enable():void; + enable(): void; - disable():void; + disable(): void; - destroy():Dropzone; + destroy(): Dropzone; - addFile(file:Dropzone.DropzoneFile):void; + addFile(file: Dropzone.DropzoneFile): void; - removeFile(file:Dropzone.DropzoneFile):void; + removeFile(file: Dropzone.DropzoneFile): void; - removeAllFiles(cancelIfNecessary?:boolean):void; + removeAllFiles(cancelIfNecessary?: boolean): void; - processQueue():void; + resizeImage(file: Dropzone.DropzoneFile, width?: number, height?: number, resizeMethod?: string, callback?: (...args: any[]) => void): void; - cancelUpload(file:Dropzone.DropzoneFile):void; + processQueue(): void; - processFiles(files:Dropzone.DropzoneFile[]):void; + cancelUpload(file: Dropzone.DropzoneFile): void; - processFile(file:Dropzone.DropzoneFile):void; + createThumbnail(file: Dropzone.DropzoneFile, width?: number, height?: number, resizeMethod?: string, fixOrientation?: boolean, callback?: (...args: any[]) => void): any; - uploadFile(file:Dropzone.DropzoneFile):void; + createThumbnailFromUrl(file: Dropzone.DropzoneFile, width?: number, height?: number, resizeMethod?: string, fixOrientation?: boolean, callback?: (...args: any[]) => void, crossOrigin?: string): any; - getAcceptedFiles():Dropzone.DropzoneFile[]; + processFiles(files: Dropzone.DropzoneFile[]): void; - getRejectedFiles():Dropzone.DropzoneFile[]; + processFile(file: Dropzone.DropzoneFile): void; - getQueuedFiles():Dropzone.DropzoneFile[]; + uploadFile(file: Dropzone.DropzoneFile): void; - getUploadingFiles():Dropzone.DropzoneFile[]; + uploadFiles(files: Dropzone.DropzoneFile[]): void; - accept(file:Dropzone.DropzoneFile, done:(error?:string|Error) => void):void; + getAcceptedFiles(): Dropzone.DropzoneFile[]; - getActiveFiles():Dropzone.DropzoneFile[]; + getActiveFiles(): Dropzone.DropzoneFile[]; - getFilesWithStatus(status:string):Dropzone.DropzoneFile[]; + getAddedFiles(): Dropzone.DropzoneFile[]; - enqueueFile(file:Dropzone.DropzoneFile):void; + getRejectedFiles(): Dropzone.DropzoneFile[]; - enqueueFiles(file:Dropzone.DropzoneFile[]):void; + getQueuedFiles(): Dropzone.DropzoneFile[]; - createThumbnail(file:Dropzone.DropzoneFile, callback?:(...args:any[]) => void):any; + getUploadingFiles(): Dropzone.DropzoneFile[]; - createThumbnailFromUrl(file:Dropzone.DropzoneFile, url:string, callback?:(...args:any[]) => void):any; + accept(file: Dropzone.DropzoneFile, done: (error?: string | Error) => void): void; - on(eventName:string, callback:(...args:any[]) => void):Dropzone; + getActiveFiles(): Dropzone.DropzoneFile[]; + + getFilesWithStatus(status: string): Dropzone.DropzoneFile[]; + + enqueueFile(file: Dropzone.DropzoneFile): void; + + enqueueFiles(file: Dropzone.DropzoneFile[]): void; + + createThumbnail(file: Dropzone.DropzoneFile, callback?: (...args: any[]) => void): any; + + createThumbnailFromUrl(file: Dropzone.DropzoneFile, url: string, callback?: (...args: any[]) => void): any; + + on(eventName: string, callback: (...args: any[]) => void): Dropzone; off(): Dropzone; - off(eventName:string, callback?:(...args:any[]) => void):Dropzone; + off(eventName: string, callback?: (...args: any[]) => void): Dropzone; - emit(eventName:string, ...args:any[]):Dropzone; + emit(eventName: string, ...args: any[]): Dropzone; - on(eventName:"drop", callback:(e:DragEvent) => any):Dropzone; - on(eventName:"dragstart", callback:(e:DragEvent) => any):Dropzone; - on(eventName:"dragend", callback:(e:DragEvent) => any):Dropzone; - on(eventName:"dragenter", callback:(e:DragEvent) => any):Dropzone; - on(eventName:"dragover", callback:(e:DragEvent) => any):Dropzone; - on(eventName:"dragleave", callback:(e:DragEvent) => any):Dropzone; - on(eventName:"paste", callback:(e:DragEvent) => any):Dropzone; + on(eventName: "drop", callback: (e: DragEvent) => any): Dropzone; + on(eventName: "dragstart", callback: (e: DragEvent) => any): Dropzone; + on(eventName: "dragend", callback: (e: DragEvent) => any): Dropzone; + on(eventName: "dragenter", callback: (e: DragEvent) => any): Dropzone; + on(eventName: "dragover", callback: (e: DragEvent) => any): Dropzone; + on(eventName: "dragleave", callback: (e: DragEvent) => any): Dropzone; + on(eventName: "paste", callback: (e: DragEvent) => any): Dropzone; - on(eventName:"reset"):Dropzone; + on(eventName: "reset"): Dropzone; - on(eventName:"addedfile", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; - on(eventName:"addedfiles", callback:(files:Dropzone.DropzoneFile[]) => any):Dropzone; - on(eventName:"removedfile", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; - on(eventName:"thumbnail", callback:(file:Dropzone.DropzoneFile, dataUrl:string) => any):Dropzone; + on(eventName: "addedfile", callback: (file: Dropzone.DropzoneFile) => any): Dropzone; + on(eventName: "addedfiles", callback: (files: Dropzone.DropzoneFile[]) => any): Dropzone; + on(eventName: "removedfile", callback: (file: Dropzone.DropzoneFile) => any): Dropzone; + on(eventName: "thumbnail", callback: (file: Dropzone.DropzoneFile, dataUrl: string) => any): Dropzone; - on(eventName:"error", callback:(file:Dropzone.DropzoneFile, message:string|Error) => any):Dropzone; - on(eventName:"errormultiple", callback:(files:Dropzone.DropzoneFile[], message:string|Error) => any):Dropzone; + on(eventName: "error", callback: (file: Dropzone.DropzoneFile, message: string | Error) => any): Dropzone; + on(eventName: "errormultiple", callback: (files: Dropzone.DropzoneFile[], message: string | Error) => any): Dropzone; - on(eventName:"processing", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; - on(eventName:"processingmultiple", callback:(files:Dropzone.DropzoneFile[]) => any):Dropzone; + on(eventName: "processing", callback: (file: Dropzone.DropzoneFile) => any): Dropzone; + on(eventName: "processingmultiple", callback: (files: Dropzone.DropzoneFile[]) => any): Dropzone; - on(eventName:"uploadprogress", callback:(file:Dropzone.DropzoneFile, progress:number, bytesSent:number) => any):Dropzone; - on(eventName:"totaluploadprogress", callback:(totalProgress:number, totalBytes:number, totalBytesSent:number) => any):Dropzone; + on(eventName: "uploadprogress", callback: (file: Dropzone.DropzoneFile, progress: number, bytesSent: number) => any): Dropzone; + on(eventName: "totaluploadprogress", callback: (totalProgress: number, totalBytes: number, totalBytesSent: number) => any): Dropzone; - on(eventName:"sending", callback:(file:Dropzone.DropzoneFile, xhr:XMLHttpRequest, formData:FormData) => any):Dropzone; - on(eventName:"sendingmultiple", callback:(files:Dropzone.DropzoneFile[], xhr:XMLHttpRequest, formData:FormData) => any):Dropzone; + on(eventName: "sending", callback: (file: Dropzone.DropzoneFile, xhr: XMLHttpRequest, formData: FormData) => any): Dropzone; + on(eventName: "sendingmultiple", callback: (files: Dropzone.DropzoneFile[], xhr: XMLHttpRequest, formData: FormData) => any): Dropzone; - on(eventName:"success", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; - on(eventName:"successmultiple", callback:(files:Dropzone.DropzoneFile[]) => any):Dropzone; + on(eventName: "success", callback: (file: Dropzone.DropzoneFile) => any): Dropzone; + on(eventName: "successmultiple", callback: (files: Dropzone.DropzoneFile[]) => any): Dropzone; - on(eventName:"canceled", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; - on(eventName:"canceledmultiple", callback:(file:Dropzone.DropzoneFile[]) => any):Dropzone; + on(eventName: "canceled", callback: (file: Dropzone.DropzoneFile) => any): Dropzone; + on(eventName: "canceledmultiple", callback: (file: Dropzone.DropzoneFile[]) => any): Dropzone; - on(eventName:"complete", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; - on(eventName:"completemultiple", callback:(file:Dropzone.DropzoneFile[]) => any):Dropzone; + on(eventName: "complete", callback: (file: Dropzone.DropzoneFile) => any): Dropzone; + on(eventName: "completemultiple", callback: (file: Dropzone.DropzoneFile[]) => any): Dropzone; - on(eventName:"maxfilesexceeded", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; - on(eventName:"maxfilesreached", callback:(files:Dropzone.DropzoneFile[]) => any):Dropzone; - on(eventName:"queuecomplete"):Dropzone; + on(eventName: "maxfilesexceeded", callback: (file: Dropzone.DropzoneFile) => any): Dropzone; + on(eventName: "maxfilesreached", callback: (files: Dropzone.DropzoneFile[]) => any): Dropzone; + on(eventName: "queuecomplete"): Dropzone; - emit(eventName:"drop", e:DragEvent):Dropzone; - emit(eventName:"dragstart", e:DragEvent):Dropzone; - emit(eventName:"dragend", e:DragEvent):Dropzone; - emit(eventName:"dragenter", e:DragEvent):Dropzone; - emit(eventName:"dragover", e:DragEvent):Dropzone; - emit(eventName:"dragleave", e:DragEvent):Dropzone; - emit(eventName:"paste", e:DragEvent):Dropzone; + emit(eventName: "drop", e: DragEvent): Dropzone; + emit(eventName: "dragstart", e: DragEvent): Dropzone; + emit(eventName: "dragend", e: DragEvent): Dropzone; + emit(eventName: "dragenter", e: DragEvent): Dropzone; + emit(eventName: "dragover", e: DragEvent): Dropzone; + emit(eventName: "dragleave", e: DragEvent): Dropzone; + emit(eventName: "paste", e: DragEvent): Dropzone; - emit(eventName:"reset"):Dropzone; + emit(eventName: "reset"): Dropzone; - emit(eventName:"addedfile", file:Dropzone.DropzoneFile):Dropzone; - emit(eventName:"addedfiles", files:Dropzone.DropzoneFile[]):Dropzone; - emit(eventName:"removedfile", file:Dropzone.DropzoneFile):Dropzone; - emit(eventName:"thumbnail", file:Dropzone.DropzoneFile, dataUrl:string):Dropzone; + emit(eventName: "addedfile", file: Dropzone.DropzoneFile): Dropzone; + emit(eventName: "addedfiles", files: Dropzone.DropzoneFile[]): Dropzone; + emit(eventName: "removedfile", file: Dropzone.DropzoneFile): Dropzone; + emit(eventName: "thumbnail", file: Dropzone.DropzoneFile, dataUrl: string): Dropzone; - emit(eventName:"error", file:Dropzone.DropzoneFile, message:string|Error):Dropzone; - emit(eventName:"errormultiple", files:Dropzone.DropzoneFile[], message:string|Error):Dropzone; + emit(eventName: "error", file: Dropzone.DropzoneFile, message: string | Error): Dropzone; + emit(eventName: "errormultiple", files: Dropzone.DropzoneFile[], message: string | Error): Dropzone; - emit(eventName:"processing", file:Dropzone.DropzoneFile):Dropzone; - emit(eventName:"processingmultiple", files:Dropzone.DropzoneFile[]):Dropzone; + emit(eventName: "processing", file: Dropzone.DropzoneFile): Dropzone; + emit(eventName: "processingmultiple", files: Dropzone.DropzoneFile[]): Dropzone; - emit(eventName:"uploadprogress", file:Dropzone.DropzoneFile, progress:number, bytesSent:number):Dropzone; - emit(eventName:"totaluploadprogress", totalProgress:number, totalBytes:number, totalBytesSent:number):Dropzone; + emit(eventName: "uploadprogress", file: Dropzone.DropzoneFile, progress: number, bytesSent: number): Dropzone; + emit(eventName: "totaluploadprogress", totalProgress: number, totalBytes: number, totalBytesSent: number): Dropzone; - emit(eventName:"sending", file:Dropzone.DropzoneFile, xhr:XMLHttpRequest, formData:FormData):Dropzone; - emit(eventName:"sendingmultiple", files:Dropzone.DropzoneFile[], xhr:XMLHttpRequest, formData:FormData):Dropzone; + emit(eventName: "sending", file: Dropzone.DropzoneFile, xhr: XMLHttpRequest, formData: FormData): Dropzone; + emit(eventName: "sendingmultiple", files: Dropzone.DropzoneFile[], xhr: XMLHttpRequest, formData: FormData): Dropzone; - emit(eventName:"success", file:Dropzone.DropzoneFile):Dropzone; - emit(eventName:"successmultiple", files:Dropzone.DropzoneFile[]):Dropzone; + emit(eventName: "success", file: Dropzone.DropzoneFile): Dropzone; + emit(eventName: "successmultiple", files: Dropzone.DropzoneFile[]): Dropzone; - emit(eventName:"canceled", file:Dropzone.DropzoneFile):Dropzone; - emit(eventName:"canceledmultiple", file:Dropzone.DropzoneFile[]):Dropzone; + emit(eventName: "canceled", file: Dropzone.DropzoneFile): Dropzone; + emit(eventName: "canceledmultiple", file: Dropzone.DropzoneFile[]): Dropzone; - emit(eventName:"complete", file:Dropzone.DropzoneFile):Dropzone; - emit(eventName:"completemultiple", file:Dropzone.DropzoneFile[]):Dropzone; + emit(eventName: "complete", file: Dropzone.DropzoneFile): Dropzone; + emit(eventName: "completemultiple", file: Dropzone.DropzoneFile[]): Dropzone; - emit(eventName:"maxfilesexceeded", file:Dropzone.DropzoneFile):Dropzone; - emit(eventName:"maxfilesreached", files:Dropzone.DropzoneFile[]):Dropzone; - emit(eventName:"queuecomplete"):Dropzone; + emit(eventName: "maxfilesexceeded", file: Dropzone.DropzoneFile): Dropzone; + emit(eventName: "maxfilesreached", files: Dropzone.DropzoneFile[]): Dropzone; + emit(eventName: "queuecomplete"): Dropzone; } interface JQuery { - dropzone(options:Dropzone.DropzoneOptions): Dropzone; + dropzone(options: Dropzone.DropzoneOptions): Dropzone; } export = Dropzone; diff --git a/types/dropzone/v4/dropzone-tests.ts b/types/dropzone/v4/dropzone-tests.ts new file mode 100644 index 0000000000..3b56c0c50a --- /dev/null +++ b/types/dropzone/v4/dropzone-tests.ts @@ -0,0 +1,296 @@ +const dropzoneFromString = new Dropzone(".test"); +const dropzoneFromElement = new Dropzone(document.getElementById("test")); +const dropzoneRenameFunction = function (name:string):string { + return name + 'new'; +}; + +const dropzoneWithOptions = new Dropzone(".test", { + url: "/some/url", + method: "post", + withCredentials: false, + parallelUploads: 2, + uploadMultiple: true, + maxFilesize: 1024, + paramName: "file", + createImageThumbnails: true, + maxThumbnailFilesize: 1024, + thumbnailWidth: 50, + thumbnailHeight: 50, + filesizeBase: 1000, + maxFiles: 100, + params: { + additional: "param" + }, + headers: { + "Some-Header": "Value" + }, + clickable: true, + ignoreHiddenFiles: true, + acceptedFiles: "image/*", + renameFilename: dropzoneRenameFunction, + autoProcessQueue: true, + autoQueue: true, + addRemoveLinks: true, + previewsContainer: "
", + hiddenInputContainer: document.createElement("input"), + capture: "camera", + + dictDefaultMessage: "", + dictFallbackMessage: "", + dictFallbackText: "", + dictFileTooBig: "", + dictInvalidFileType: "", + dictResponseError: "", + dictCancelUpload: "", + dictCancelUploadConfirmation: "", + dictRemoveFile: "", + dictRemoveFileConfirmation: "", + dictMaxFilesExceeded: "", + + accept: (file:Dropzone.DropzoneFile, done:(error?:string|Error) => void) => { + if (file.accepted) { + file.previewElement.classList.add("accepted"); + file.previewTemplate.classList.add("accepted"); + file.previewsContainer.classList.add("accepted"); + done(); + } + else { + done(new Error(file.status)); + } + }, + init: () => console.log("Initialized"), + forceFallback: false, + fallback: () => console.log("Fallback"), + resize: (file:Dropzone.DropzoneFile) => ({ + srcX: 0, + srcY: 0, + trgX: 10, + trgY: 10, + srcWidth: 100, + srcHeight: 100, + trgWidth: 50, + trgHeight: 50, + optWidth: 50, + optHeight: 50 + }), + + drop: (e:DragEvent) => console.log("Drop"), + dragstart: (e:DragEvent) => console.log("Dragstart"), + dragend: (e:DragEvent) => console.log("Dragend"), + dragenter: (e:DragEvent) => console.log("Dragenter"), + dragover: (e:DragEvent) => console.log("Dragover"), + dragleave: (e:DragEvent) => console.log("Dragleave"), + paste: (e:DragEvent) => console.log("Paste"), + + reset: () => console.log("Reset"), + + addedfile: (file:Dropzone.DropzoneFile) => console.log("Addedfile"), + addedfiles: (files:Dropzone.DropzoneFile[]) => console.log("Addedfiles"), + removedfile: (file:Dropzone.DropzoneFile) => console.log("Removedfile"), + thumbnail: (file:Dropzone.DropzoneFile, dataUrl:string) => console.log("Thumbnail"), + + error: (file:Dropzone.DropzoneFile, message:string|Error) => console.log("Error"), + errormultiple: (files:Dropzone.DropzoneFile[], message:string|Error) => console.log("Errormultiple"), + + processing: (file:Dropzone.DropzoneFile) => console.log("Processing"), + processingmultiple: (files:Dropzone.DropzoneFile[]) => console.log("Processingmultiple"), + + uploadprogress: (file:Dropzone.DropzoneFile, progress:number, bytesSent:number) => console.log("Uploadprogress"), + totaluploadprogress: (totalProgress:number, totalBytes:number, totalBytesSent:number) => console.log("Totaluploadprogress"), + + sending: (file:Dropzone.DropzoneFile, xhr:XMLHttpRequest, formData:{}) => console.log("Sending"), + sendingmultiple: (files:Dropzone.DropzoneFile[], xhr:XMLHttpRequest, formData:{}) => console.log("Sendingmultiple"), + + success: (file:Dropzone.DropzoneFile) => console.log("Success"), + successmultiple: (files:Dropzone.DropzoneFile[]) => console.log("Successmultiple"), + + canceled: (file:Dropzone.DropzoneFile) => console.log("Canceled"), + canceledmultiple: (file:Dropzone.DropzoneFile[]) => console.log("Canceledmultiple"), + + complete: (file:Dropzone.DropzoneFile) => console.log("Complete"), + completemultiple: (file:Dropzone.DropzoneFile[]) => console.log("Completemultiple"), + + maxfilesexceeded: (file:Dropzone.DropzoneFile) => console.log("Maxfilesexceeded"), + maxfilesreached: (files:Dropzone.DropzoneFile[]) => console.log("Maxfilesreached"), + queuecomplete: () => console.log("Queuecomplete"), + + previewTemplate: "
", +}); + +var dropzoneWithOptionsVariations:Dropzone; +dropzoneWithOptionsVariations = new Dropzone(".test", { + clickable: ".test" +}); +dropzoneWithOptionsVariations = new Dropzone(".test", { + clickable: document.getElementById("test") +}); +dropzoneWithOptionsVariations = new Dropzone(".test", { + clickable: [".test", ".test"] +}); +dropzoneWithOptionsVariations = new Dropzone(".test", { + clickable: [document.getElementById("test"), document.getElementById("test")] +}); +dropzoneWithOptionsVariations = new Dropzone(".test", { + clickable: ["test", document.getElementById("test")] +}); + +dropzoneWithOptionsVariations = new Dropzone(".test", { + success: (file:Dropzone.DropzoneFile, response:Object) => console.log(file, response) +}); +dropzoneWithOptionsVariations = new Dropzone(".test", { + success: (file:Dropzone.DropzoneFile, response:string) => console.log(file, response) +}); + +const dropzone = new Dropzone(".test"); + +dropzone.enable(); +dropzone.disable(); + +dropzone.files.forEach(f => { + if (f.xhr) { + console.log(f.xhr.readyState) + } + if (f.accepted) { + f.previewElement.classList.add("accepted"); + f.previewTemplate.classList.add("accepted"); + f.previewsContainer.classList.add("accepted"); + } + else { + console.log(f.status.toUpperCase()); + } +}); + +const firstFile = dropzone.files[0]; +dropzone.removeFile(firstFile); +dropzone.addFile(firstFile); +dropzone.enqueueFile(firstFile); +dropzone.processFile(firstFile); +dropzone.uploadFile(firstFile); +dropzone.cancelUpload(firstFile); +dropzone.createThumbnail(firstFile, () => { + console.log("createThumbnail") +}); +dropzone.createThumbnailFromUrl(firstFile, "/some/url", () => { + console.log("createThumbnailFromUrl") +}); +dropzone.accept(firstFile, (e:string|Error) => { + console.log(e); +}); + +const acceptedFiles = dropzone.getAcceptedFiles(); +dropzone.processFiles(acceptedFiles); + +const rejectedFiles = dropzone.getRejectedFiles(); +dropzone.enqueueFiles(rejectedFiles); + +const queuedFiles = dropzone.getQueuedFiles(); +dropzone.processFiles(queuedFiles); + +const uploadingFiles = dropzone.getUploadingFiles(); +dropzone.processFiles(uploadingFiles); + +const activeFiles = dropzone.getActiveFiles(); +dropzone.processFiles(activeFiles); + +const addedFiles = dropzone.getFilesWithStatus(Dropzone.ADDED); +dropzone.processFiles(addedFiles); + +dropzone.processQueue(); +dropzone.removeAllFiles(true); + +dropzone + .on("drop", () => { + console.count('drop'); + }) + .on("dragstart", () => { + console.count('dragstart'); + }) + .on("dragend", () => { + console.count('dragend'); + }) + .on("dragenter", () => { + console.count('dragenter'); + }) + .on("dragover", () => { + console.count('dragover'); + }) + .on("dragleave", () => { + console.count('dragleave'); + }) + .on("paste", () => { + console.count('paste'); + }) + .on("reset", () => { + console.count('reset'); + }) + .on("addedfile", () => { + console.count('addedfile'); + }) + .on("addedfiles", () => { + console.count('addedfiles'); + }) + .on("removedfile", () => { + console.count('removedfile'); + }) + .on("thumbnail", () => { + console.count('thumbnail'); + }) + .on("error", () => { + console.count('error'); + }) + .on("errormultiple", () => { + console.count('errormultiple'); + }) + .on("processing", () => { + console.count('processing'); + }) + .on("processingmultiple", () => { + console.count('processingmultiple'); + }) + .on("uploadprogress", () => { + console.count('uploadprogress'); + }) + .on("totaluploadprogress", () => { + console.count('totaluploadprogress'); + }) + .on("sending", () => { + console.count('sending'); + }) + .on("sendingmultiple", () => { + console.count('sendingmultiple'); + }) + .on("success", () => { + console.count('success'); + }) + .on("successmultiple", () => { + console.count('successmultiple'); + }) + .on("canceled", () => { + console.count('canceled'); + }) + .on("canceledmultiple", () => { + console.count('canceledmultiple'); + }) + .on("complete", () => { + console.count('complete'); + }) + .on("completemultiple", () => { + console.count('completemultiple'); + }) + .on("maxfilesexceeded", () => { + console.count('maxfilesexceeded'); + }) + .on("maxfilesreached", () => { + console.count('maxfilesreached'); + }) + .on("queuecomplete", () => { + console.count('queuecomplete'); + }); + + dropzone.off("drop", () => { + console.count('drop'); + }) + .off("dragstart") + .off(); + +dropzone.destroy(); \ No newline at end of file diff --git a/types/dropzone/v4/index.d.ts b/types/dropzone/v4/index.d.ts new file mode 100644 index 0000000000..171552a240 --- /dev/null +++ b/types/dropzone/v4/index.d.ts @@ -0,0 +1,279 @@ +// Type definitions for Dropzone 4.3.0 +// Project: http://www.dropzonejs.com/ +// Definitions by: Natan Vivo , Andy Hawkins , Vasya Aksyonov , Simon Huber , Sebastiaan de Rooij +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +import * as $ from "jquery"; + +declare namespace Dropzone { + export interface DropzoneResizeInfo { + srcX?:number; + srcY?:number; + trgX?:number; + trgY?:number; + srcWidth?:number; + srcHeight?:number; + trgWidth?:number; + trgHeight?:number; + optWidth?:number; + optHeight?:number; + } + + export interface DropzoneFile extends File { + previewElement: HTMLElement; + previewTemplate: HTMLElement; + previewsContainer: HTMLElement; + status: string; + accepted: boolean; + xhr?: XMLHttpRequest; + } + + export interface DropzoneOptions { + url?: string; + method?: string; + withCredentials?: boolean; + parallelUploads?: number; + uploadMultiple?: boolean; + maxFilesize?: number; + paramName?: string; + createImageThumbnails?: boolean; + maxThumbnailFilesize?: number; + thumbnailWidth?: number; + thumbnailHeight?: number; + filesizeBase?: number; + maxFiles?: number; + params?: {}; + headers?: {}; + clickable?: boolean|string|HTMLElement|(string|HTMLElement)[]; + ignoreHiddenFiles?: boolean; + acceptedFiles?: string; + renameFilename?(name:string): string; + autoProcessQueue?: boolean; + autoQueue?: boolean; + addRemoveLinks?: boolean; + previewsContainer?: boolean|string|HTMLElement; + hiddenInputContainer?: HTMLElement; + capture?: string; + + dictDefaultMessage?: string; + dictFallbackMessage?: string; + dictFallbackText?: string; + dictFileTooBig?: string; + dictInvalidFileType?: string; + dictResponseError?: string; + dictCancelUpload?: string; + dictCancelUploadConfirmation?: string; + dictRemoveFile?: string; + dictRemoveFileConfirmation?: string; + dictMaxFilesExceeded?: string; + + accept?(file:DropzoneFile, done:(error?:string|Error) => void):void; + init?():void; + forceFallback?: boolean; + fallback?():void; + resize?(file:DropzoneFile):DropzoneResizeInfo; + + drop?(e:DragEvent):void; + dragstart?(e:DragEvent):void; + dragend?(e:DragEvent):void; + dragenter?(e:DragEvent):void; + dragover?(e:DragEvent):void; + dragleave?(e:DragEvent):void; + paste?(e:DragEvent):void; + + reset?():void; + + addedfile?(file:DropzoneFile):void; + addedfiles?(files:DropzoneFile[]):void; + removedfile?(file:DropzoneFile):void; + thumbnail?(file:DropzoneFile, dataUrl:string):void; + + error?(file:DropzoneFile, message:string|Error, xhr:XMLHttpRequest):void; + errormultiple?(files:DropzoneFile[], message:string|Error, xhr:XMLHttpRequest):void; + + processing?(file:DropzoneFile):void; + processingmultiple?(files:DropzoneFile[]):void; + + uploadprogress?(file:DropzoneFile, progress:number, bytesSent:number):void; + totaluploadprogress?(totalProgress:number, totalBytes:number, totalBytesSent:number):void; + + sending?(file:DropzoneFile, xhr:XMLHttpRequest, formData:FormData):void; + sendingmultiple?(files:DropzoneFile[], xhr:XMLHttpRequest, formData:FormData):void; + + success?(file: DropzoneFile, response: Object|string): void; + successmultiple?(files:DropzoneFile[], responseText:string):void; + + canceled?(file:DropzoneFile):void; + canceledmultiple?(file:DropzoneFile[]):void; + + complete?(file:DropzoneFile):void; + completemultiple?(file:DropzoneFile[]):void; + + maxfilesexceeded?(file:DropzoneFile):void; + maxfilesreached?(files:DropzoneFile[]):void; + queuecomplete?():void; + + previewTemplate?: string; + } +} + +declare class Dropzone { + constructor(container:string|HTMLElement, options?:Dropzone.DropzoneOptions); + + static autoDiscover:boolean; + static options:any; + static confirm:(question:string, accepted:() => void, rejected?:() => void) => void; + + static ADDED:string; + static QUEUED:string; + static ACCEPTED:string; + static UPLOADING:string; + static PROCESSING:string; + static CANCELED:string; + static ERROR:string; + static SUCCESS:string; + + files:Dropzone.DropzoneFile[]; + + enable():void; + + disable():void; + + destroy():Dropzone; + + addFile(file:Dropzone.DropzoneFile):void; + + removeFile(file:Dropzone.DropzoneFile):void; + + removeAllFiles(cancelIfNecessary?:boolean):void; + + processQueue():void; + + cancelUpload(file:Dropzone.DropzoneFile):void; + + processFiles(files:Dropzone.DropzoneFile[]):void; + + processFile(file:Dropzone.DropzoneFile):void; + + uploadFile(file:Dropzone.DropzoneFile):void; + + getAcceptedFiles():Dropzone.DropzoneFile[]; + + getRejectedFiles():Dropzone.DropzoneFile[]; + + getQueuedFiles():Dropzone.DropzoneFile[]; + + getUploadingFiles():Dropzone.DropzoneFile[]; + + accept(file:Dropzone.DropzoneFile, done:(error?:string|Error) => void):void; + + getActiveFiles():Dropzone.DropzoneFile[]; + + getFilesWithStatus(status:string):Dropzone.DropzoneFile[]; + + enqueueFile(file:Dropzone.DropzoneFile):void; + + enqueueFiles(file:Dropzone.DropzoneFile[]):void; + + createThumbnail(file:Dropzone.DropzoneFile, callback?:(...args:any[]) => void):any; + + createThumbnailFromUrl(file:Dropzone.DropzoneFile, url:string, callback?:(...args:any[]) => void):any; + + on(eventName:string, callback:(...args:any[]) => void):Dropzone; + + off(): Dropzone; + off(eventName:string, callback?:(...args:any[]) => void):Dropzone; + + emit(eventName:string, ...args:any[]):Dropzone; + + on(eventName:"drop", callback:(e:DragEvent) => any):Dropzone; + on(eventName:"dragstart", callback:(e:DragEvent) => any):Dropzone; + on(eventName:"dragend", callback:(e:DragEvent) => any):Dropzone; + on(eventName:"dragenter", callback:(e:DragEvent) => any):Dropzone; + on(eventName:"dragover", callback:(e:DragEvent) => any):Dropzone; + on(eventName:"dragleave", callback:(e:DragEvent) => any):Dropzone; + on(eventName:"paste", callback:(e:DragEvent) => any):Dropzone; + + on(eventName:"reset"):Dropzone; + + on(eventName:"addedfile", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; + on(eventName:"addedfiles", callback:(files:Dropzone.DropzoneFile[]) => any):Dropzone; + on(eventName:"removedfile", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; + on(eventName:"thumbnail", callback:(file:Dropzone.DropzoneFile, dataUrl:string) => any):Dropzone; + + on(eventName:"error", callback:(file:Dropzone.DropzoneFile, message:string|Error) => any):Dropzone; + on(eventName:"errormultiple", callback:(files:Dropzone.DropzoneFile[], message:string|Error) => any):Dropzone; + + on(eventName:"processing", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; + on(eventName:"processingmultiple", callback:(files:Dropzone.DropzoneFile[]) => any):Dropzone; + + on(eventName:"uploadprogress", callback:(file:Dropzone.DropzoneFile, progress:number, bytesSent:number) => any):Dropzone; + on(eventName:"totaluploadprogress", callback:(totalProgress:number, totalBytes:number, totalBytesSent:number) => any):Dropzone; + + on(eventName:"sending", callback:(file:Dropzone.DropzoneFile, xhr:XMLHttpRequest, formData:FormData) => any):Dropzone; + on(eventName:"sendingmultiple", callback:(files:Dropzone.DropzoneFile[], xhr:XMLHttpRequest, formData:FormData) => any):Dropzone; + + on(eventName:"success", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; + on(eventName:"successmultiple", callback:(files:Dropzone.DropzoneFile[]) => any):Dropzone; + + on(eventName:"canceled", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; + on(eventName:"canceledmultiple", callback:(file:Dropzone.DropzoneFile[]) => any):Dropzone; + + on(eventName:"complete", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; + on(eventName:"completemultiple", callback:(file:Dropzone.DropzoneFile[]) => any):Dropzone; + + on(eventName:"maxfilesexceeded", callback:(file:Dropzone.DropzoneFile) => any):Dropzone; + on(eventName:"maxfilesreached", callback:(files:Dropzone.DropzoneFile[]) => any):Dropzone; + on(eventName:"queuecomplete"):Dropzone; + + emit(eventName:"drop", e:DragEvent):Dropzone; + emit(eventName:"dragstart", e:DragEvent):Dropzone; + emit(eventName:"dragend", e:DragEvent):Dropzone; + emit(eventName:"dragenter", e:DragEvent):Dropzone; + emit(eventName:"dragover", e:DragEvent):Dropzone; + emit(eventName:"dragleave", e:DragEvent):Dropzone; + emit(eventName:"paste", e:DragEvent):Dropzone; + + emit(eventName:"reset"):Dropzone; + + emit(eventName:"addedfile", file:Dropzone.DropzoneFile):Dropzone; + emit(eventName:"addedfiles", files:Dropzone.DropzoneFile[]):Dropzone; + emit(eventName:"removedfile", file:Dropzone.DropzoneFile):Dropzone; + emit(eventName:"thumbnail", file:Dropzone.DropzoneFile, dataUrl:string):Dropzone; + + emit(eventName:"error", file:Dropzone.DropzoneFile, message:string|Error):Dropzone; + emit(eventName:"errormultiple", files:Dropzone.DropzoneFile[], message:string|Error):Dropzone; + + emit(eventName:"processing", file:Dropzone.DropzoneFile):Dropzone; + emit(eventName:"processingmultiple", files:Dropzone.DropzoneFile[]):Dropzone; + + emit(eventName:"uploadprogress", file:Dropzone.DropzoneFile, progress:number, bytesSent:number):Dropzone; + emit(eventName:"totaluploadprogress", totalProgress:number, totalBytes:number, totalBytesSent:number):Dropzone; + + emit(eventName:"sending", file:Dropzone.DropzoneFile, xhr:XMLHttpRequest, formData:FormData):Dropzone; + emit(eventName:"sendingmultiple", files:Dropzone.DropzoneFile[], xhr:XMLHttpRequest, formData:FormData):Dropzone; + + emit(eventName:"success", file:Dropzone.DropzoneFile):Dropzone; + emit(eventName:"successmultiple", files:Dropzone.DropzoneFile[]):Dropzone; + + emit(eventName:"canceled", file:Dropzone.DropzoneFile):Dropzone; + emit(eventName:"canceledmultiple", file:Dropzone.DropzoneFile[]):Dropzone; + + emit(eventName:"complete", file:Dropzone.DropzoneFile):Dropzone; + emit(eventName:"completemultiple", file:Dropzone.DropzoneFile[]):Dropzone; + + emit(eventName:"maxfilesexceeded", file:Dropzone.DropzoneFile):Dropzone; + emit(eventName:"maxfilesreached", files:Dropzone.DropzoneFile[]):Dropzone; + emit(eventName:"queuecomplete"):Dropzone; + +} + +interface JQuery { + dropzone(options:Dropzone.DropzoneOptions): Dropzone; +} + +export = Dropzone; +export as namespace Dropzone; \ No newline at end of file diff --git a/types/dropzone/v4/tsconfig.json b/types/dropzone/v4/tsconfig.json new file mode 100644 index 0000000000..36eb5f0aef --- /dev/null +++ b/types/dropzone/v4/tsconfig.json @@ -0,0 +1,26 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": false, + "baseUrl": "../../", + "typeRoots": [ + "../../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "paths": { + "dropzone": ["dropzone/v4"] + } + }, + "files": [ + "index.d.ts", + "dropzone-tests.ts" + ] +} \ No newline at end of file diff --git a/types/ej.web.all/index.d.ts b/types/ej.web.all/index.d.ts index 9f46649c3e..035c98d1f0 100644 --- a/types/ej.web.all/index.d.ts +++ b/types/ej.web.all/index.d.ts @@ -8,7 +8,7 @@ /*! * filename: ej.web.all.d.ts -* version : 15.2.0.43 +* version : 15.2.0.46 * Copyright Syncfusion Inc. 2001 - 2017. All rights reserved. * Use of this code is subject to the terms of our license. * A copy of the current license can be obtained at any time by e-mailing @@ -16,59701 +16,62142 @@ * applicable laws. */ declare namespace ej { - const dataUtil: dataUtil; - function isMobile(): boolean; - function isIOS(): boolean; - function isAndroid(): boolean; - function isFlat(): boolean; - function isWindows(): boolean; - function isCssCalc(): boolean; - function getCurrentPage(): JQuery; - function isLowerResolution(): boolean; - function browserInfo(): browserInfoOptions; - function isTouchDevice(): boolean; - function addPrefix(style: string): string; - function animationEndEvent(): string; - function blockDefaultActions(e: any): void; - function buildTag(tag: string, innerHtml?: string, styles?: any, attrs?: any): JQuery; - function cancelEvent(): string; - function copyObject(): string; - function createObject(nameSpace: string, value: any, initIn: any): JQuery; - function createObject(element: any, eventEmitter: any, model: any): any; - function setCulture(culture: string): void; - function getObject(element: string, model: any): T; - function getObject(nameSpace: string, fromdata?: any): any; - function defineClass(className: string, constructor: any, proto: any, replace: boolean): any; - function destroyWidgets(element: any): void; - function endEvent(): string; - function event(type: string, data: any, eventProp: any): any; - function getAndroidVersion(): any; - function getAttrVal(ele: any, val: string, option: any): any; - function getBooleanVal(ele: any, val: string, option: any): any; - function getClearString(): string; - function getDimension(element: any, method: string): any; - function getFontString(fontObj: any): string; - function getFontStyle(style: string): string; - function getMaxZindex(): number; - function getNameSpace(className: string): string; - function getOffset(ele: string): any; - function getRenderMode(): string; - function getScrollableParents(element: any): void; - function getTheme(): string; - function getZindexPartial(element: any, popupEle: string): number; - function hasRenderMode(element: string): void; - function hasStyle(prop: string): boolean; - function hasTheme(element: string): string; - function hexFromRGB(color: string): string; - function ieClearRemover(element: string): void; - function isAndroidWebView(): string; - function isDevice(): boolean; - function isIOS7(): boolean; - function isIOSWebView(): boolean; - function isLowerAndroid(): boolean; - function isNullOrUndefined(value: any): boolean; - function isPlainObject(): JQuery; - function isPortrait(): any; - function isTablet(): boolean; - function isWindowsWebView(): string; - function listenEvents(selectors: any, eventTypes: any, handlers: any, remove?: any, pluginObj?: any, disableMouse?: boolean): void; - function listenTouchEvent(selectors: any, eventTypes: any, handlers: any, remove?: any, pluginObj?: any, disableMouse?: boolean): void; - function logBase(val: string, base: string): number; - function measureText(text: string, maxwidth: number, font: string): string; - function moveEvent(): string; - function print(element: string, printWindow: any): void; - function proxy(fn: any, context?: string, arg?: string): any; - function round(value: string, div: string, up: string): any; - function sendAjaxRequest(ajaxOptions: any): void; - function setCaretToPos(nput: string, pos1: string, pos2: string): void; - function setRenderMode(element: string): void; - function setTheme(): any; - function startEvent(): string; - function tapEvent(): string; - function tapHoldEvent(): string; - function throwError(): any; - function transitionEndEvent(): any; - function userAgent(): boolean; - function widget(pluginName: string, className: string, proto: any): any; - function avg(json: any, filedName: string): any; - function getGuid(prefix: string): number; - function group(jsonArray: any, field: string, agg: string, level: number, groupDs: string): any; - function isJson(jsonData: string): string; - function max(jsonArray: any, fieldName?: string, comparer?: string): any; - function min(jsonArray: any, fieldName: string, comparer: string): any; - function merge(first: string, second: string): any; - function mergeshort(jsonArray: any, fieldName: string, comparer: string): any; - function parseJson(jsonText: string): string; - function parseTable(table: number, headerOption: string, headerRowIndex: string): any; - function select(jsonArray: any, fields: string): any; - function setTransition(): boolean; - function sum(json: string, fieldName: string): string; - function swap(array: any, x: string, y: string): any; - const cssUA: string; - const serverTimezoneOffset: number; - const transform: string; - const transformOrigin: string; - const transformStyle: string; - const transition: string; - const transitionDelay: string; - const transitionDuration: string; - const transitionProperty: string; - const transitionTimingFunction: string; - const template: any; - const util: { - valueFunction(val: string): any; - }; - export namespace device { - function isAndroid(): boolean; - function isIOS(): boolean; - function isFlat(): boolean; - function isIOS7(): boolean; - function isWindows(): boolean; - } - export namespace widget { - const autoInit: boolean; - const registeredInstances: any[]; - const registeredWidgets: any[]; - function register(pluginName: string, className: string, prototype: any): void; - function destroyAll(elements: Element): void; - function init(element: Element): void; - function registerInstance(element: Element, pluginName: string, className: string, prototype: any): void; - } - interface browserInfoOptions { - name: string; - version: string; - culture: any; - isMSPointerEnabled: boolean; - } - class WidgetBase { - destroy(): void; - element: JQuery; - setModel(options: any, forceSet?: boolean): any; - option(prop?: any, value?: any, forceSet?: boolean): any; - _trigger(eventName?: string, eventProp?: any): any; - _on(element: JQuery, eventType?: string, handler?: (eventObject: JQueryEventObject) => any): any; - _on(element: JQuery, eventType?: string, selector?: string, handler?: (eventObject: JQueryEventObject) => any): any; - _off(element: JQuery, eventName: string, handler?: (eventObject: JQueryEventObject) => any): any; - _off(element: JQuery, eventType?: string, selector?: string, handler?: (eventObject: JQueryEventObject) => any): any; - persistState(): void; - restoreState(silent: boolean): void; - } - - class Widget extends WidgetBase { - constructor(pluginName: string, className: string, proto: any); - static fn: Widget; - static extend(widget: Widget): any; - register(pluginName: string, className: string, prototype: any): void; - destroyAll(elements: Element): void; - model: any; - } - - - interface BaseEvent { - cancel: boolean; - type: string; - } - class DataManager { - constructor(dataSource?: any, query?: ej.Query, adaptor?: any); - setDefaultQuery(query: ej.Query): void; - executeQuery(query?: ej.Query, done?: any, fail?: any, always?: any): JQueryPromise; - executeLocal(query?: ej.Query): ej.DataManager; - saveChanges(changes?: Changes, key?: string, tableName?: string): JQueryDeferred; - insert(data: any, tableName?: string): JQueryPromise; - remove(keyField: string, value: any, tableName?: string): any; - update(keyField: string, value: any, tableName?: string): any; - } - - class Query { - constructor(); - static fn: Query; - static extend(prototype: any): Query; - key(field: string): ej.Query; - using(dataManager: ej.DataManager): ej.Query; - execute(dataManager: ej.DataManager, done: any, fail?: string, always?: string): any; - executeLocal(dataManager: ej.DataManager): ej.DataManager; - clone(): ej.Query; - from(tableName: any): ej.Query; - addParams(key: string, value: string): ej.Query; - expand(tables: any): ej.Query; - where(fieldName: string, operator: ej.FilterOperators, value: any, ignoreCase?: boolean): ej.Query; - where(predicate: ej.Predicate): ej.Query; - search(searchKey: any, fieldNames?: any, operator?: string, ignoreCase?: boolean): ej.Query; - sortBy(fieldName: string, comparer?: ej.SortOrder, isFromGroup?: boolean): ej.Query; - sortByDesc(fieldName: string): ej.Query; - group(fieldName: string): ej.Query; - page(pageIndex: number, pageSize: number): ej.Query; - take(nos: number): ej.Query; - skip(nos: number): ej.Query; - select(fieldNames: any): ej.Query; - hierarchy(query: ej.Query, selectorFn: any): ej.Query; - foreignKey(key: string): ej.Query; - requiresCount(): ej.Query; - range(start: number, end: number): ej.Query; - } - - class Adaptor { - constructor(ds: any); - pvt: any; - type: ej.Adaptor; - options: AdaptorOptions; - extend(overrides: any): ej.Adaptor; - processQuery(dm: ej.DataManager, query: ej.Query): any; - processResponse(data: any, ds: any, query: ej.Query, xhr: JQueryXHR, request?: any, changes?: Changes): any; - convertToQueryString(req: any, query: ej.Query, dm: ej.DataManager): JQueryParam; - } - - interface AdaptorOptions { - from?: string; - requestType?: string; - sortBy?: string; - select?: string; - skip?: string; - group?: string; - take?: string; - search?: string; - count?: string; - where?: string; - aggregates?: string; - } - - class UrlAdaptor extends ej.Adaptor { - constructor(); - processQuery(dm: ej.DataManager, query: ej.Query, hierarchyFilters?: any): { - type: string; url: string; ejPvtData: any; contentType?: string; data?: any; - }; - convertToQueryString(req: any, query: ej.Query, dm: ej.DataManager): JQueryParam; - processResponse(data: any, ds: any, query: ej.Query, xhr: JQueryXHR, request?: any, changes?: Changes): any; - onGroup(e: any): void; - onAggregates(e: any): void; - batchRequest(dm: ej.DataManager, changes: Changes, e: any): void; - beforeSend(dm: ej.DataManager, request: any, settings?: any): void; - insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any }; - remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data?: any }; - update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data: any }; - getFiltersFrom(data: any, query: ej.Query): ej.Predicate; - } - class WebMethodAdaptor extends ej.UrlAdaptor { - constructor(); - processQuery(dm: ej.DataManager, query: ej.Query, hierarchyFilters?: any): { - type: string; url: string; ejPvtData: any; contentType?: string; data?: any; - }; - } - class CacheAdaptor extends ej.UrlAdaptor { - constructor(); - init(adaptor: any, timeStamp: number, pageSize: number): void; - generateKey(url: string, query: ej.Query): string; - processQuery(dm: ej.DataManager, query: ej.Query, hierarchyFilters?: any): any; - processResponse(data: any, ds: any, query: ej.Query, xhr: JQueryXHR, request?: any, changes?: Changes): any; - insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any }; - remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data?: any }; - update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data: any }; - batchRequest(dm: ej.DataManager, changes: Changes, e: any): { url: string; type: string; data: any; contentType: string }; - - } - class ODataAdaptor extends ej.UrlAdaptor { - constructor(); - options: UrlAdaptorOptions; - onEachWhere(filter: any, requiresCast: boolean): any; - onPredicate(pred: ej.Predicate, query: ej.Query, requiresCast: boolean): string; - onComplexPredicate(pred: ej.Predicate, requiresCast: boolean): string; - onWhere(filters: string[]): string; - onEachSearch(e: any): void; - onSearch(e: any): string; - onEachSort(e: any): string; - onSortBy(e: any): string; - onGroup(e: any): string; - onSelect(e: any): string; - onAggregates(e: any): string; - onCount(e: any): string; - beforeSend(dm: ej.DataManager, request: any, settings?: any): void; - processResponse(data: any, ds: any, query: ej.Query, xhr: any, request: any, changes: Changes): { - result: any; count: number - }; - convertToQueryString(req: any, query: ej.Query, dm: ej.DataManager): JQueryParam; - insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any; }; - remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): { url: string; type: string; }; - update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { url: string; type: string; data: any; accept: string; }; - batchRequest(dm: ej.DataManager, changes: Changes, e: any): { url: string; type: string; data: any; contentType: string; }; - generateDeleteRequest(arr: any[], e: any): string; - generateInsertRequest(arr: any[], e: any): string; - generateUpdateRequest(arr: any[], e: any): string; - } - interface UrlAdaptorOptions { - requestType?: string; - accept?: string; - multipartAccept?: string; - sortBy?: string; - select?: string; - skip?: string; - take?: string; - count?: string; - where?: string; - expand?: string; - batch?: string; - changeSet?: string; - batchPre?: string; - contentId?: string; - batchContent?: string; - changeSetContent?: string; - batchChangeSetContentType?: string; - } - - class WebApiAdaptor extends ej.ODataAdaptor { - constructor(); - insert(dm: ej.DataManager, data: any, tableName?: string): { url: string; type: string; data: any; }; - remove(dm: ej.DataManager, value: any, keyField?: string, tableName?: string): { url: string; type: string; data: any; }; - update(dm: ej.DataManager, value: any, keyField?: string, tableName?: string): { url: string; type: string; data: any; accept: string; }; - processResponse(data: any, ds: any, query: ej.Query, xhr: any, request: any, changes: Changes): { - result: any; count: number - }; - } - - class ODataV4Adaptor extends ej.ODataAdaptor { - constructor(); - options: ODataAdaptorOptions; - onCount(e: any): string; - onEachSearch(e: any): void; - onSearch(e: any): string; - beforeSend(dm: ej.DataManager, request: any, settings?: any): void; - processQuery(ds: any, query: ej.Query): { - type: string; url: string; ejPvtData: any; contentType?: string; data?: any; - }; - processResponse(data: any, ds: any, query: ej.Query, xhr: any, request: any, changes: Changes): { - result: any; count: number - }; - - } - interface ODataAdaptorOptions { - requestType?: string; - accept?: string; - multipartAccept?: string; - sortBy?: string; - select?: string; - skip?: string; - take?: string; - count?: string; - search?: string; - where?: string; - expand?: string; - batch?: string; - changeSet?: string; - batchPre?: string; - contentId?: string; - batchContent?: string; - changeSetContent?: string; - batchChangeSetContentType?: string; - } - - class JsonAdaptor extends ej.Adaptor { - constructor(); - processQuery(ds: any, query: ej.Query): string; - batchRequest(dm: ej.DataManager, changes: Changes, e: any): Changes; - onWhere(ds: any, e: any): any; - onAggregates(ds: any, e: any): any; - onSearch(ds: any, e: any): any; - onSortBy(ds: any, e: any, query: ej.Query): any; - onGroup(ds: any, e: any, query: ej.Query): any; - onPage(ds: any, e: any, query: ej.Query): any; - onRange(ds: any, e: any): any; - onTake(ds: any, e: any): any; - onSkip(ds: any, e: any): any; - onSelect(ds: any, e: any): any; - insert(dm: ej.DataManager, data: any, tableName?: string): any; - remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): any; - update(dm: ej.DataManager, keyField: string, value: any, tableName: string): any; - } - class ForeignKeyAdaptor extends ej.JsonAdaptor { - constructor(); - processQuery(ds: any, query: ej.Query): any; - insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any }; - update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { url: string; type: string; data: any }; - } - class remoteSaveAdaptor extends ej.UrlAdaptor { - constructor(); - batchRequest(dm: ej.DataManager, changes: Changes, e: any): void; - beforeSend(dm: ej.DataManager, request: any, settings?: any): void; - insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any }; - remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data?: any }; - update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data: any }; - } - class TableModel { - constructor(name: string, jsonArray: any[], dataManager: ej.DataManager, modelComputed: any); - on(eventName: string, handler: any): void; - off(eventName: string, handler: any): void; - setDataManager(dataManager: DataManager): void; - saveChanges(): void; - rejectChanges(): void; - insert(json: any): void; - update(value: any): void; - remove(key: string): void; - isDirty(): boolean; - getChanges(): Changes; - toArray(): any[]; - setDirty(dirty: any, model: any): void; - get(index: number): void; - length(): number; - bindTo(element: any): void; - } - class Model { - constructor(json: any, table: string, name: string); - formElements: string[]; - computes(value: any): void; - on(eventName: string, handler: any): void; - off(eventName: string, handler: any): void; - set(field: string, value: any): void; - get(field: string): any; - revert(suspendEvent: any): void; - save(dm: ej.DataManager, key: string): void; - markCommit(): void; - markDelete(): void; - changeState(state: boolean, args: any): void; - properties(): any; - bindTo(element: any): void; - unbind(element: any): void; - } - interface Changes { - changed?: any[]; - added?: any[]; - deleted?: any[]; - } - class Predicate { - constructor(); - constructor(field: string, operator: ej.FilterOperators, value: any, ignoreCase: boolean); - and(field: string, operator: any, value: any, ignoreCase: boolean): ej.Predicate; - or(field: string, operator: any, value: any, ignoreCase: boolean): ej.Predicate; - or(predicate: any[]): any; - validate(record: any): boolean; - toJSON(): { - isComplex: boolean; - field: string; - operator: string; - value: any; - ignoreCase: boolean; - condition: string; - predicates: any; - }; - } - interface dataUtil { - swap(array: any[], x: number, y: number): void; - mergeSort(jsonArray: any[], fieldName?: string, comparer?: any): any[]; - max(jsonArray: any[], fieldName?: string, comparer?: string): any[]; - min(jsonArray: any[], fieldName: string, comparer: string): any[]; - distinct(jsonArray: any[], fieldName?: string, requiresCompleteRecord?: any): any[]; - sum(json: any, fieldName: string): number; - avg(json: any, fieldName: string): number; - select(jsonArray: any[], fieldName: string, fields: string): any[]; - group(jsonArray: any[], field: string, /* internal */ level: number): any[]; - parseTable(table: string, headerOption: ej.headerOption, headerRowIndex: number): any; - } - interface AjaxSettings { - type?: string; - cache: boolean; - data?: any; - dataType?: string; - contentType?: any; - async?: boolean; - } - enum FilterOperators { - contains, - endsWith, - equal, - greaterThan, - greaterThanOrEqual, - lessThan, - lessThanOrEqual, - notEqual, - startsWith - } - - enum MatrixDefaults { - m11, - m12, - m21, - m22, - offsetX, - offsetY, - type - } - enum MatrixTypes { - Identity, - Scaling, - Translation, - Unknown - } - - enum Orientation { - Horizontal, - Vertical - } - - enum SliderType { - Default, - MinRange, - Range - } - - enum eventType { - click, - mouseDown, - mouseLeave, - mouseMove, - mouseUp - } - enum headerOption { - row, - tHead - } - enum filterType { - StartsWith, - Contains, - EndsWith, - LessThan, - GreaterThan, - LessThanOrEqual, - GreaterThanOrEqual, - Equal, - NotEqual - } - enum Animation { - Fade, - None, - Slide - } - enum Type { - Overlay, - Slide - } - enum SortOrder { - Ascending, - Descending - } - class Draggable extends ej.Widget { - static fn: Draggable; - constructor(element: JQuery | Element, options?: Draggable.Model); - static Locale: any; - model: Draggable.Model; - defaults: Draggable.Model; - - /** destroy in the draggable. - * @returns {void} - */ - _destroy(): void; - } - export namespace Draggable { - - export interface Model { - - /** If clone is specified. - * @Default {false} - */ - clone?: boolean; - - /** Sets the offset of the dragging helper relative to the mouse cursor. - * @Default {{ top: -1, left: -2 }} - */ - cursorAt?: any; - - /** Distance in pixels after mousedown the mouse must move before dragging should start. This option can be used to prevent unwanted drags when clicking on an element. - * @Default {1} - */ - distance?: number; - - /** The drag area is used to restrict the dragging element bounds. - * @Default {false} - */ - dragArea?: boolean; - - /** If specified, restricts drag start click to the specified element(s). - * @Default {null} - */ - handle?: string; - - /** Used to group sets of draggable and droppable items, in addition to droppable's accept option. A draggable with the same scope value as a droppable will be accepted by the droppable. - * @Default {'default'} - */ - scope?: string; - - /** This event is triggered when dragging element is destroyed. */ - destroy?(e: DestroyEventArgs): void; - - /** This event is triggered when the mouse is moved during the dragging. */ - drag?(e: DragEventArgs): void; - - /** Supply a callback function to handle the drag start event as an init option. */ - dragStart?(e: DragStartEventArgs): void; - - /** This event is triggered when the mouse is moved during the dragging. */ - dragStop?(e: DragStopEventArgs): void; - - /** This event is triggered when dragged. */ - helper?(e: HelperEventArgs): void; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the autocomplete model - */ - model?: ej.Draggable.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DragEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the draggable model - */ - model?: ej.Draggable.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the event model values - */ - event?: any; - - /** returns the exact mouse down target element - */ - target?: any; - } - - export interface DragStartEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the draggable model - */ - model?: ej.Draggable.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the event model values - */ - event?: any; - - /** returns the exact mouse down target element - */ - target?: any; - } - - export interface DragStopEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the draggable model - */ - model?: ej.Draggable.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the event model values - */ - event?: any; - - /** returns the exact mouse down target element - */ - target?: any; - } - - export interface HelperEventArgs { - - /** returns the draggable element object - */ - element?: any; - - /** returns the event model values - */ - sender?: any; - } - } - - class Droppable extends ej.Widget { - static fn: Droppable; - constructor(element: JQuery | Element, options?: Droppable.Model); - static Locale: any; - model: Droppable.Model; - defaults: Droppable.Model; - - /** destroy in the Droppable. - * @returns {void} - */ - _destroy(): void; - } - export namespace Droppable { - - export interface Model { - - /** Used to accept the specified draggable items. - * @Default {null} - */ - accept?: any; - - /** Used to group sets of droppable items, in addition to droppable's accept option. A draggable with the same scope value as a droppable will be accepted by the droppable. - * @Default {'default'} - */ - scope?: string; - - /** This event is triggered when the mouse up is moved during the dragging. */ - drop?(e: DropEventArgs): void; - - /** This event is triggered when the mouse is moved out. */ - out?(e: OutEventArgs): void; - - /** This event is triggered when the mouse is moved over. */ - over?(e: OverEventArgs): void; - } - - export interface DropEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the autocomplete model - */ - model?: ej.Droppable.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the element which accepts the droppable element. - */ - target?: any; - } - - export interface OutEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the autocomplete model - */ - model?: ej.Droppable.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mouse out over the element - */ - target?: any; - } - - export interface OverEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the autocomplete model - */ - model?: ej.Droppable.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mouse over the element - */ - target?: any; - } - } - - class Resizable extends ej.Widget { - static fn: Resizable; - constructor(element: JQuery | Element, options?: Resizable.Model); - static Locale: any; - model: Resizable.Model; - defaults: Resizable.Model; - - /** destroy in the Resizable. - * @returns {void} - */ - _destroy(): void; - } - export namespace Resizable { - - export interface Model { - - /** Sets the offset of the resizing helper relative to the mouse cursor. - * @Default {{ top: -1, left: -2 }} - */ - cursorAt?: any; - - /** Distance in pixels after mousedown the mouse must move before resizing should start. This option can be used to prevent unwanted drags when clicking on an element. - * @Default {1} - */ - distance?: number; - - /** If specified, restricts resize start click to the specified element(s). - * @Default {null} - */ - handle?: string; - - /** Sets the max height for resizing - * @Default {null} - */ - maxHeight?: number; - - /** Sets the max width for resizing - * @Default {null} - */ - maxWidth?: number; - - /** Sets the min Height for resizing - * @Default {10} - */ - minHeight?: number; - - /** Sets the min Width for resizing - * @Default {10} - */ - minWidth?: number; - - /** Used to group sets of resizable items. - * @Default {'default'} - */ - scope?: string; - - /** This event is triggered when the widget destroys. */ - destroy?(e: DestroyEventArgs): void; - - /** This event is triggered when resized. */ - helper?(e: HelperEventArgs): void; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the autocomplete model - */ - model?: ej.Resizable.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface HelperEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the autocomplete model - */ - model?: ej.Resizable.Model; - - /** returns the name of the event - */ - type?: string; - } - } - - - const globalize: globalize; - const cultures: culture; - function addCulture(name: string, culture?: any): void; - function preferredCulture(culture?: string): culture; - function format(value: any, format: string, culture?: string): string; - function parseInt(value: string, radix?: any, culture?: string): number; - function parseFloat(value: string, radix?: any, culture?: string): number; - function parseDate(value: string, format: string, culture?: string): Date; - function getLocalizedConstants(controlName: string, culture?: string): any; - - interface globalize { - addCulture(name: string, culture?: any): void; - preferredCulture(culture?: string): culture; - format(value: any, format: string, culture?: string): string; - parseInt(value: string, radix?: any, culture?: string): number; - parseFloat(value: string, radix?: any, culture?: string): number; - parseDate(value: string, format: string, culture?: string): Date; - getLocalizedConstants(controlName: string, culture?: string): any; - } - interface culture { - name?: string; - englishName?: string; - namtiveName?: string; - language?: string; - isRTL: boolean; - numberFormat?: formatSettings; - calendars?: calendarsSettings; - } - interface formatSettings { - pattern: string[]; - decimals: number; - groupSizes: number[]; - percent: percentSettings; - currency: currencySettings; - } - interface percentSettings { - pattern: string[]; - decimals: number; - groupSizes: number[]; - symbol: string; - } - interface currencySettings { - pattern: string[]; - decimals: number; - groupSizes: number[]; - symbol: string; - } - interface calendarsSettings { - standard: standardSettings; - } - interface standardSettings { - firstDay: number; - days: daySettings; - months: monthSettings; - AM: string[]; - PM: string[]; - twoDigitYearMax: number; - patterns: patternSettings; - } - interface daySettings { - names: string[]; - namesAbbr: string[]; - namesShort: string[]; - } - interface monthSettings { - names: string[]; - namesAbbr: string[]; - } - interface patternSettings { - d: string; - D: string; - t: string; - T: string; - f: string; - F: string; - M: string; - Y: string; - S: string; - } - class Scroller extends ej.Widget { - static fn: Scroller; - constructor(element: JQuery | Element, options?: Scroller.Model); - static Locale: any; - model: Scroller.Model; - defaults: Scroller.Model; - - /** destroy the Scroller control, unbind the all ej control related events automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** User disables the Scroller control at any time. - * @returns {void} - */ - disable(): void; - - /** User enables the Scroller control at any time. - * @returns {void} - */ - enable(): void; - - /** Returns true if horizontal scrollbar is shown, else return false. - * @returns {boolean} - */ - isHScroll(): boolean; - - /** Returns true if vertical scrollbar is shown, else return false. - * @returns {boolean} - */ - isVScroll(): boolean; - - /** User refreshes the Scroller control at any time. - * @returns {void} - */ - refresh(): void; - - /** Horizontal scroller moves to given pixel from its origin position. We can also specify the animation speed,in which the scroller has to move while re-positioning it. - * @param {number|string} Horizontal scroller moves to the specified pixel. - * @param {boolean} Specifies to enable/disable the animation. - * @param {number} Specifies the animation speed when scrolling, if animation is enabled. - * @returns {void} - */ - scrollX(pixel: number | string, disableAnimation: boolean, animationSpeed: number): void; - - /** Vertical scroller moves to given pixel from its origin position. We can also specify the animation speed,in which the scroller has to move while re-positioning it. - * @param {number|string} Vertical scroller moves to the specified pixel. - * @param {boolean} Specifies to enable/disable the animation. - * @param {number} Specifies the animation speed when scrolling, if animation is enabled. - * @returns {void} - */ - scrollY(pixel: number | string, disableAnimation: boolean, animationSpeed: number): void; - } - export namespace Scroller { - - export interface Model { - - /** Specifies the swipe scrolling speed(in millisecond). - * @Default {600} - */ - animationSpeed?: number; - - /** Set true to hides the scrollbar, when mouseout the content area. - * @Default {false} - */ - autoHide?: boolean; - - /** Specifies the height and width of button in the scrollbar. - * @Default {18} - */ - buttonSize?: number; - - /** Specifies to enable or disable the scroller - * @Default {true} - */ - enabled?: boolean; - - /** Save current model value to browser cookies for state maintenance. While refresh the page Rating control values are retained. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Indicates the Right to Left direction to scroller - * @Default {undefined} - */ - enableRTL?: boolean; - - /** Enables or Disable the touch Scroll - * @Default {true} - */ - enableTouchScroll?: boolean; - - /** Specifies the height of Scroll panel and scrollbars. - * @Default {250} - */ - height?: number | string; - - /** If the scrollbar has vertical it set as width, else it will set as height of the handler. - * @Default {18} - */ - scrollerSize?: number; - - /** The Scroller content and scrollbars move left with given value. - * @Default {0} - */ - scrollLeft?: number; - - /** While press on the arrow key the scrollbar position added to the given pixel value. - * @Default {57} - */ - scrollOneStepBy?: number; - - /** The Scroller content and scrollbars move to top position with specified value. - * @Default {0} - */ - scrollTop?: number; - - /** Indicates the target area to which scroller have to appear. - * @Default {null} - */ - targetPane?: string; - - /** Specifies the width of Scroll panel and scrollbars. - * @Default {0} - */ - width?: number | string; - - /** Fires when Scroller control is created. */ - create?(e: CreateEventArgs): void; - - /** Fires when Scroller control is destroyed. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when a thumb point is moved along the touch surface. */ - thumbMove?(e: ThumbMoveEventArgs): void; - - /** Fires when a thumb point is placed on the touch surface. */ - thumbStart?(e: ThumbStartEventArgs): void; - - /** Fires when a thumb point is removed from the touch surface. */ - thumbEnd?(e: ThumbEndEventArgs): void; - - /** It fires whenever the mouse wheel is rotated either in upwards or downwards. */ - wheelMove?(e: WheelMoveEventArgs): void; - - /** It will fire when mouse trackball has been start to wheel. */ - wheelStart?(e: WheelStartEventArgs): void; - - /** It will fire when mouse trackball has been stop to wheel. */ - wheelStop?(e: WheelStopEventArgs): void; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the scroller model - */ - model?: ej.Scroller.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** returns the scroller model - */ - model?: ej.Scroller.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface ThumbMoveEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the scroller model - */ - model?: ej.Scroller.Model; - - /** returns the original event name and its event properties of the current event. - */ - originalEvent?: any; - - /** returns the current data related to the event. - */ - scrollData?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface ThumbStartEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the scroller model - */ - model?: ej.Scroller.Model; - - /** returns the original event name and its event properties of the current event. - */ - originalEvent?: any; - - /** returns the current data related to the event. - */ - scrollData?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface ThumbEndEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the scroller model - */ - model?: ej.Scroller.Model; - - /** returns the original event name and its event properties of the current event. - */ - originalEvent?: any; - - /** returns the current data related to the event. - */ - scrollData?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface WheelMoveEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the scroller model - */ - model?: ej.Scroller.Model; - - /** returns the original event name and its event properties of the current event. - */ - originalEvent?: any; - } - - export interface WheelStartEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the scroller model - */ - model?: ej.Scroller.Model; - - /** returns the original event name and its event properties of the current event. - */ - originalEvent?: any; - - /** returns the current data related to the event. - */ - scrollData?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface WheelStopEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the scroller model - */ - model?: ej.Scroller.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the original event name and its event properties of the current event. - */ - originalEvent?: any; - } - } - - class Accordion extends ej.Widget { - static fn: Accordion; - constructor(element: JQuery | Element, options?: Accordion.Model); - static Locale: any; - model: Accordion.Model; - defaults: Accordion.Model; - - /** AddItem method is used to add the panel in dynamically. It receives the following parameters - * @param {string} specify the name of the header - * @param {string} content of the new panel - * @param {number} insertion place of the new panel - * @param {boolean} Enable or disable the AJAX request to the added panel - * @returns {void} - */ - addItem(header_name: string, content: string, index: number, isAjaxReq: boolean): void; - - /** This method used to collapse the all the expanded items in accordion at a time. - * @returns {void} - */ - collapseAll(): void; - - /** This method used to Collapses the specified items in accordion at a time. - * @returns {void} - */ - collapsePanel(): void; - - /** destroy the Accordion widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** Disables the accordion widget includes all the headers and content panels. - * @returns {void} - */ - disable(): void; - - /** Disable the accordion widget item based on specified header index. - * @param {Array} index values to disable the panels - * @returns {void} - */ - disableItems(index: any[]): void; - - /** Enable the accordion widget includes all the headers and content panels. - * @returns {void} - */ - enable(): void; - - /** Enable the accordion widget item based on specified header index. - * @param {Array} index values to enable the panels - * @returns {void} - */ - enableItems(index: any[]): void; - - /** To expand all the accordion widget items. - * @returns {void} - */ - expandAll(): void; - - /** This method used to Expand the specified items in accordion at a time. - * @returns {void} - */ - expandPanel(): void; - - /** Returns the total number of panels in the control. - * @returns {number} - */ - getItemsCount(): number; - - /** Hides the visible Accordion control. - * @returns {void} - */ - hide(): void; - - /** The refresh method is used to adjust the control size based on the parent element dimension. - * @returns {void} - */ - refresh(): void; - - /** RemoveItem method is used to remove the specified index panel.It receives the parameter as number. - * @param {number} specify the index value for remove the accordion panel. - * @returns {void} - */ - removeItem(index: number): void; - - /** Shows the hidden Accordion control. - * @returns {void} - */ - show(): void; - } - export namespace Accordion { - - export interface Model { - - /** Specifies the ajaxSettings option to load the content to the accordion control. - * @Default {null} - */ - ajaxSettings?: AjaxSettings; - - /** Accordion headers can be expanded and collapsed on keyboard action. - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** To set the Accordion headers Collapse Speed. - * @Default {300} - */ - collapseSpeed?: number; - - /** Specifies the collapsible state of accordion control. - * @Default {false} - */ - collapsible?: boolean; - - /** Sets the root CSS class for Accordion theme, which is used customize. - */ - cssClass?: string; - - /** Allows you to set the custom header Icon. It accepts two key values “header”, ”selectedHeader”. - * @Default {{ header: e-collapse, selectedHeader: e-expand }} - */ - customIcon?: CustomIcon; - - /** Disables the specified indexed items in accordion. - * @Default {[]} - */ - disabledItems?: number[]; - - /** Specifies the animation behavior in accordion. - * @Default {true} - */ - enableAnimation?: boolean; - - /** With this enabled property, you can enable or disable the Accordion. - * @Default {true} - */ - enabled?: boolean; - - /** Used to enable the disabled items in accordion. - * @Default {[]} - */ - enabledItems?: number[]; - - /** Multiple content panels to activate at a time. - * @Default {false} - */ - enableMultipleOpen?: boolean; - - /** Save current model value to browser cookies for maintaining states. When refreshing the accordion control page, the model value is applied from browser cookies or HTML 5local storage. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Display headers and panel text from right-to-left. - * @Default {false} - */ - enableRTL?: boolean; - - /** The events API binds the action for activating the accordion header. Users can activate the header by using mouse actions such as mouse-over, mouse-up, mouse-down, and soon. - * @Default {click} - */ - events?: string; - - /** To set the Accordion headers Expand Speed. - * @Default {300} - */ - expandSpeed?: number; - - /** Sets the height for Accordion items header. - */ - headerSize?: number | string; - - /** Specifies height of the accordion. - * @Default {null} - */ - height?: number | string; - - /** Adjusts the content panel height based on the given option (content, auto, or fill). By default, the panel heights are adjusted based on the content. - * @Default {content} - */ - heightAdjustMode?: ej.Accordion.HeightAdjustMode | string; - - /** It allows to define the characteristics of the Accordion control. It will helps to extend the capability of an HTML element. - * @Default {{}} - */ - htmlAttributes?: any; - - /** The given index header will activate (open). If collapsible is set to true, and a negative value is given, then all headers are collapsed. Otherwise, the first panel isactivated. - * @Default {0} - */ - selectedItemIndex?: number; - - /** Activate the specified indexed items of the accordion - * @Default {[0]} - */ - selectedItems?: number[]; - - /** Used to determines the close button visibility an each accordion items. This close button helps to remove the accordion item from the control. - * @Default {false} - */ - showCloseButton?: boolean; - - /** Displays rounded corner borders on the Accordion control's panels and headers. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specifies width of the accordion. - * @Default {null} - */ - width?: number | string; - - /** Triggered after a Accordion item is active or inactive. Argument values are activeIndex, activeHeader, inActiveHeader, inActiveIndex and current model value. */ - activate?(e: ActivateEventArgs): void; - - /** Triggered before the AJAX content is loaded in a content panel. Arguments have location of the content (URL) and current model value. */ - ajaxBeforeLoad?(e: AjaxBeforeLoadEventArgs): void; - - /** Triggered after AJAX load failed action. Arguments have URL, error message, and current model value. */ - ajaxError?(e: AjaxErrorEventArgs): void; - - /** Triggered after the AJAX content loads. Arguments have current model values. */ - ajaxLoad?(e: AjaxLoadEventArgs): void; - - /** Triggered after AJAX success action. Arguments have URL, content, and current model values. */ - ajaxSuccess?(e: AjaxSuccessEventArgs): void; - - /** Triggered before a tab item is active. Arguments have active index and model values. */ - beforeActivate?(e: BeforeActivateEventArgs): void; - - /** Triggered after a Accordion item is active or inactive. Argument values are activeIndex, activeHeader, inActiveHeader, inActiveIndex and current model value. */ - beforeInactivate?(e: BeforeInactivateEventArgs): void; - - /** Triggered after Accordion control creation. */ - create?(e: CreateEventArgs): void; - - /** Triggered after Accordion control destroy. */ - destroy?(e: DestroyEventArgs): void; - - /** Triggered after a Accordion item is active or inactive. Argument values are activeIndex, activeHeader, inActiveHeader, inActiveIndex and current model value. */ - inActivate?(e: InActivateEventArgs): void; - } - - export interface ActivateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns active index - */ - activeIndex?: number; - - /** returns current active header - */ - activeHeader?: any; - - /** returns true when the Accordion index activated by user interaction otherwise returns false - */ - isInteraction?: boolean; - } - - export interface AjaxBeforeLoadEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns current AJAX content location - */ - URL?: string; - } - - export interface AjaxErrorEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns current AJAX content location - */ - URL?: string; - - /** returns the failed data sent. - */ - data?: string; - } - - export interface AjaxLoadEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the name of the URL - */ - URL?: string; - } - - export interface AjaxSuccessEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns current AJAX content location - */ - URL?: string; - - /** returns the successful data sent. - */ - data?: string; - - /** returns the AJAX content. - */ - content?: string; - } - - export interface BeforeActivateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns active index - */ - activeIndex?: number; - - /** returns true when the Accordion index activated by user interaction otherwise returns false - */ - isInteraction?: boolean; - } - - export interface BeforeInactivateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns active index - */ - inActiveIndex?: number; - - /** returns true when the Accordion index activated by user interaction otherwise returns false - */ - isInteraction?: boolean; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface InActivateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the accordion model - */ - model?: ej.Accordion.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns active index - */ - inActiveIndex?: number; - - /** returns in active element - */ - inActiveHeader?: any; - - /** returns true when the Accordion index activated by user interaction otherwise returns false - */ - isInteraction?: boolean; - } - - export interface AjaxSettings { - - /** It specifies, whether to enable or disable asynchronous request. - */ - async?: boolean; - - /** It specifies the page will be cached in the web browser. - */ - cache?: boolean; - - /** It specifies the type of data is send in the query string. - */ - contentType?: string; - - /** It specifies the data as an object, will be passed in the query string. - */ - data?: any; - - /** It specifies the type of data that you're expecting back from the response. - */ - dataType?: string; - - /** It specifies the HTTP request type. - */ - type?: string; - } - - export interface CustomIcon { - - /** This class name set to collapsing header. - */ - header?: string; - - /** This class name set to expanded (active) header. - */ - selectedHeader?: string; - } - - enum HeightAdjustMode { - - ///Height fit to the content in the panel - Content, - - ///Height set to the largest content in the panel - Auto, - - ///Height filled to the content of the panel - Fill - } - - } - - class Autocomplete extends ej.Widget { - static fn: Autocomplete; - constructor(element: JQuery | Element, options?: Autocomplete.Model); - static Locale: any; - model: Autocomplete.Model; - defaults: Autocomplete.Model; - - /** Clears the text in the Autocomplete textbox. - * @returns {void} - */ - clearText(): void; - - /** Destroys the Autocomplete widget. - * @returns {void} - */ - destroy(): void; - - /** Disables the autocomplete widget. - * @returns {void} - */ - disable(): void; - - /** Enables the autocomplete widget. - * @returns {void} - */ - enable(): void; - - /** Returns objects (data object) of all the selected items in the autocomplete textbox. - * @returns {any} - */ - getSelectedItems(): any; - - /** Returns the current selected value from the Autocomplete textbox. - * @returns {string} - */ - getValue(): string; - - /** Returns the current active text value in the Autocomplete suggestion list. - * @returns {string} - */ - getActiveText(): string; - - /** Search the entered text and show it in the suggestion list if available. - * @returns {void} - */ - search(): void; - - /** Open up the autocomplete suggestion popup with all list items. - * @returns {void} - */ - open(): void; - - /** Sets the value of the Autocomplete textbox based on the given key value. - * @param {string} The key value of the specific suggestion item. - * @returns {void} - */ - selectValueByKey(Key: string): void; - - /** Sets the value of the Autocomplete textbox based on the given input text value. - * @param {string} The text (label) value of the specific suggestion item. - * @returns {void} - */ - selectValueByText(Text: string): void; - } - export namespace Autocomplete { - - export interface Model { - - /** Customize "Add New" text (label) to be added in the autocomplete popup list for the entered text when there are no suggestions for it. - * @Default {Add New} - */ - addNewText?: boolean; - - /** Allows new values to be added to the autocomplete input other than the values in the suggestion list. - * Normally, when there are no suggestions it will display “No suggestions” label in the popup. - * @Default {false} - */ - allowAddNew?: boolean; - - /** Enables or disables the sorting of suggestion list item. The default sort order is ascending order. You customize sort order. - * @Default {true} - */ - allowSorting?: boolean; - - /** Enables or disables selecting the animation style for the popup list. Animation types can be selected through either of the following options, - * @Default {slide} - */ - animateType?: ej.Autocomplete.Animation | string; - - /** To focus the items in the suggestion list when the popup is shown. By default first item will be focused. - * @Default {false} - */ - autoFocus?: boolean; - - /** Enables or disables the case sensitive search. - * @Default {false} - */ - caseSensitiveSearch?: boolean; - - /** The root class for the Autocomplete textbox widget which helps in customizing its theme. - * @Default {””} - */ - cssClass?: string; - - /** The data source contains the list of data for the suggestions list. It can be a string array or JSON array. - * @Default {null} - */ - dataSource?: any | any[]; - - /** The time delay (in milliseconds) after which the suggestion popup will be shown. - * @Default {200} - */ - delaySuggestionTimeout?: number; - - /** The special character which acts as a separator for the given words for multi-mode search i.e. the text after the delimiter are considered as a separate word or query for search operation. - * @Default {’,’} - */ - delimiterChar?: string; - - /** The text to be displayed in the popup when there are no suggestions available for the entered text. - * @Default {“No suggestions”} - */ - emptyResultText?: string; - - /** Fills the autocomplete textbox with the first matched item from the suggestion list automatically based on the entered text when enabled. - * @Default {false} - */ - enableAutoFill?: boolean; - - /** Enables or disables the Autocomplete textbox widget. - * @Default {true} - */ - enabled?: boolean; - - /** Enables or disables displaying the duplicate names present in the search result. - * @Default {false} - */ - enableDistinct?: boolean; - - /** Allows the current model values to be saved in local storage or browser cookies for state maintenance - * when it is set to true. - * While refreshing the page, it retains the model value from browser cookies or local storage. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Displays the Autocomplete widget’s content from right to left when enabled. - * @Default {false} - */ - enableRTL?: boolean; - - /** Mapping fields for the suggestion items of the Autocomplete textbox widget. - * @Default {null} - */ - fields?: Fields; - - /** Specifies the search filter type. - * There are several types of search filter available such as ‘startswith’, - * ‘contains’, ‘endswith’, ‘lessthan’, ‘lessthanorequal’, ‘greaterthan’, - * ‘greaterthanorequal’, ‘equal’, ‘notequal’. - * @Default {ej.filterType.StartsWith} - */ - filterType?: string; - - /** The height of the Autocomplete textbox. - * @Default {null} - */ - height?: string | number; - - /** The search text can be highlighted in the AutoComplete suggestion list when enabled. - * @Default {false} - */ - highlightSearch?: boolean; - - /** Number of items to be displayed in the suggestion list. - * @Default {0} - */ - itemsCount?: number; - - /** Set the localization culture for Autocomplete Widget. - */ - locale?: string; - - /** Minimum number of character to be entered in the Autocomplete textbox to show the suggestion list. - * @Default {1} - */ - minCharacter?: number; - - /** An Autocomplete column collection can be defined and customized through the multiColumnSettings property.Column's header, field, and stringFormat can be define - * via multiColumnSettings properties. - */ - multiColumnSettings?: MultiColumnSettings; - - /** Enables or disables selecting multiple values from the suggestion list. Multiple values can be selected through either of the following options, - * @Default {ej.MultiSelectMode.None} - */ - multiSelectMode?: ej.Autocomplete.MultiSelectMode | string; - - /** The height of the suggestion list. - * @Default {“152px”} - */ - popupHeight?: string; - - /** The width of the suggestion list. - * @Default {“auto”} - */ - popupWidth?: string; - - /** The query to retrieve the data from the data source. - * @Default {null} - */ - query?: ej.Query; - - /** Indicates that the autocomplete textbox values can only be readable. - * @Default {false} - */ - readOnly?: boolean; - - /** Sets the value for the Autocomplete textbox based on the given input key value. - */ - selectValueByKey?: number; - - /** Enables or disables showing the message when there are no suggestions for the entered text. - * @Default {true} - */ - showEmptyResultText?: boolean; - - /** Enables or disables the loading icon to intimate the searching operation. The loading icon is visible when there is a time delay to perform the search. - * @Default {true} - */ - showLoadingIcon?: boolean; - - /** Enables the showPopup button in autocomplete textbox. When the showPopup button is clicked, it displays all the available data from the data source. - * @Default {false} - */ - showPopupButton?: boolean; - - /** Enables or disables rounded corner. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Enables or disables reset icon to clear the textbox values. - * @Default {false} - */ - showResetIcon?: boolean; - - /** Sort order specifies whether the suggestion list values has to be displayed in ascending or descending order. - * @Default {ej.SortOrder.Ascending} - */ - sortOrder?: ej.Autocomplete.SortOrder | string; - - /** The template to display the suggestion list items with customized appearance. - * @Default {null} - */ - template?: string; - - /** The jQuery validation error message to be displayed on form validation. - * @Default {null} - */ - validationMessage?: any; - - /** The jQuery validation rules for form validation. - * @Default {null} - */ - validationRules?: any; - - /** The value to be displayed in the autocomplete textbox. - * @Default {null} - */ - value?: string; - - /** Enables or disables the visibility of the autocomplete textbox. - * @Default {true} - */ - visible?: boolean; - - /** The text to be displayed when the value of the autocomplete textbox is empty. - * @Default {null} - */ - watermarkText?: string; - - /** The width of the Autocomplete textbox. - * @Default {null} - */ - width?: string | number; - - /** Triggers when the AJAX requests Begins. */ - actionBegin?(e: ActionBeginEventArgs): void; - - /** Triggers when the data requested from AJAX will get successfully loaded in the Autocomplete widget. */ - actionSuccess?(e: ActionSuccessEventArgs): void; - - /** Triggers when the AJAX requests complete. The request may get failed or succeed. */ - actionComplete?(e: ActionCompleteEventArgs): void; - - /** Triggers when the data requested from AJAX get failed. */ - actionFailure?(e: ActionFailureEventArgs): void; - - /** Triggers when the text box value is changed. */ - change?(e: ChangeEventArgs): void; - - /** Triggers after the suggestion popup is closed. */ - close?(e: CloseEventArgs): void; - - /** Triggers when Autocomplete widget is created. */ - create?(e: CreateEventArgs): void; - - /** Triggers after the Autocomplete widget is destroyed. */ - destroy?(e: DestroyEventArgs): void; - - /** Triggers after the autocomplete textbox is focused. */ - focusIn?(e: FocusInEventArgs): void; - - /** Triggers after the Autocomplete textbox gets out of the focus. */ - focusOut?(e: FocusOutEventArgs): void; - - /** Triggers after the suggestion list is opened. */ - open?(e: OpenEventArgs): void; - - /** Triggers when an item has been selected from the suggestion list. */ - select?(e: SelectEventArgs): void; - } - - export interface ActionBeginEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface ActionSuccessEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface ActionCompleteEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface ActionFailureEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface ChangeEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the autocomplete model object. - */ - model?: ej.Autocomplete.Model; - - /** Name of the event. - */ - type?: string; - - /** Value of the autocomplete textbox. - */ - value?: string; - } - - export interface CloseEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the autocomplete model object. - */ - model?: ej.Autocomplete.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface CreateEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the autocomplete model object. - */ - model?: ej.Autocomplete.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the autocomplete model object. - */ - model?: ej.Autocomplete.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface FocusInEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the autocomplete model object. - */ - model?: ej.Autocomplete.Model; - - /** Name of the event. - */ - type?: string; - - /** Value of the autocomplete textbox. - */ - value?: string; - } - - export interface FocusOutEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the autocomplete model object. - */ - model?: ej.Autocomplete.Model; - - /** Name of the event. - */ - type?: string; - - /** Value of the autocomplete textbox. - */ - value?: string; - } - - export interface OpenEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the autocomplete model object. - */ - model?: ej.Autocomplete.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface SelectEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the autocomplete model object. - */ - model?: ej.Autocomplete.Model; - - /** Name of the event. - */ - type?: string; - - /** Value of the autocomplete textbox. - */ - value?: string; - - /** Text of the selected item. - */ - text?: string; - - /** Key of the selected item. - */ - key?: string; - - /** Data object of the selected item. - */ - Item?: ej.Autocomplete.Model; - } - - export interface Fields { - - /** Used to group the suggestion list items. - */ - groupBy?: string; - - /** Defines the HTML attributes such as id, class, styles for the item. - */ - htmlAttributes?: any; - - /** Defines the specific field name which contains unique key values for the list items. - */ - key?: string; - - /** Defines the specific field name in the data source to load the suggestion list with data. - */ - text?: string; - } - - export interface MultiColumnSettingsColumn { - - /** Get or set a value that indicates to display the columns in the autocomplete mapping with column name of the dataSource. - */ - field?: string; - - /** Get or set a value that indicates to display the title of that particular column. - */ - headerText?: string; - - /** Gets or sets a value that indicates to render the multicolumn with custom theme. - */ - cssClass?: string; - - /** Specifies the search data type. There are four types of data types available such as string, ‘number’, ‘boolean’ and ‘date’. - * @Default {ej.Type.String} - */ - type?: ej.Type | string; - - /** Specifies the search filter type. There are several types of search filter available such as ‘startswith’, - * ‘contains’, ‘endswith’, ‘lessthan’, ‘lessthanorequal’, ‘greaterthan’, - * ‘greaterthanorequal’, ‘equal’, ‘notequal’. - * @Default {ej.filterType.StartsWith} - */ - filterType?: ej.filterType | string; - - /** This defines the text alignment of a particular column header cell value. See headerTextAlign - * @Default {ej.TextAlign.Left} - */ - headerTextAlign?: ej.TextAlign | string; - - /** Gets or sets a value that indicates to align the text within the column. See textAlign - * @Default {ej.TextAlign.Left} - */ - textAlign?: ej.TextAlign | string; - } - - export interface MultiColumnSettings { - - /** Allow list of data to be displayed in several columns. - * @Default {false} - */ - enable?: boolean; - - /** Allow header text to be displayed in corresponding columns. - * @Default {true} - */ - showHeader?: boolean; - - /** Displayed selected value and autocomplete search based on mentioned column value specified in that format. - */ - stringFormat?: string; - - /** Field and Header Text collections can be defined and customized through columns field. - */ - columns?: MultiColumnSettingsColumn[]; - } - - enum Animation { - - ///Supports to animation type with none type only. - None, - - ///Supports to animation type with slide type only. - Slide, - - ///Supports to animation type with fade type only. - Fade - } - - - enum MultiSelectMode { - - ///Multiple values are separated using a given special character. - Delimiter, - - ///Each values are displayed in separate box with close button. - VisualMode - } - - - enum SortOrder { - - ///Items to be displayed in the suggestion list in ascending order. - Ascending, - - ///Items to be displayed in the suggestion list in descending order. - Descending - } - - } - - class Button extends ej.Widget { - static fn: Button; - constructor(element: JQuery | Element, options?: Button.Model); - static Locale: any; - model: Button.Model; - defaults: Button.Model; - - /** destroy the button widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** To disable the button - * @returns {void} - */ - disable(): void; - - /** To enable the button - * @returns {void} - */ - enable(): void; - } - export namespace Button { - - export interface Model { - - /** Specifies the contentType of the Button. See below to know available ContentType - * @Default {ej.ContentType.TextOnly} - */ - contentType?: ej.ContentType | string; - - /** Sets the root CSS class for Button theme, which is used customize. - */ - cssClass?: string; - - /** Specifies the button control state. - * @Default {true} - */ - enabled?: boolean; - - /** Specify the Right to Left direction to button - * @Default {false} - */ - enableRTL?: boolean; - - /** Specifies the height of the Button. - * @Default {28} - */ - height?: number; - - /** It allows to define the characteristics of the Button control. It will helps to extend the capability of an HTML element. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specifies the image position of the Button. This image position is applicable - * only with the textandimage contentType property. The images can be positioned in both - * imageLeft and imageRight options. See below to know about available ImagePosition - * @Default {ej.ImagePosition.ImageLeft} - */ - imagePosition?: ej.ImagePosition | string; - - /** Specifies the primary icon for Button. This icon will be displayed from the left margin of the button. - * @Default {null} - */ - prefixIcon?: string; - - /** Convert the button as repeat button. It raises the 'Click' event repeatedly from the it is pressed until it is released. - * @Default {false} - */ - repeatButton?: boolean; - - /** Displays the Button with rounded corners. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specifies the size of the Button. See below to know available ButtonSize - * @Default {ej.ButtonSize.Normal} - */ - size?: ej.ButtonSize | string; - - /** Specifies the secondary icon for Button. This icon will be displayed from the right margin of the button. - * @Default {null} - */ - suffixIcon?: string; - - /** Specifies the text content for Button. - * @Default {null} - */ - text?: string; - - /** Specified the time interval between two consecutive 'click' event on the button. - * @Default {150} - */ - timeInterval?: string; - - /** Specifies the Type of the Button. See below to know available ButtonType - * @Default {ej.ButtonType.Submit} - */ - type?: ej.ButtonType | string; - - /** Specifies the width of the Button. - * @Default {100px} - */ - width?: string | number; - - /** Fires when Button control is clicked successfully.Consider the scenario to perform any validation, - * modification of content or any other operations click on button,we can make use of this click event - * to achieve the scenario. - */ - click?(e: ClickEventArgs): void; - - /** Fires after Button control is created.If the user want to perform any operation after the button control creation then the user can make use of this create event. */ - create?(e: CreateEventArgs): void; - - /** Fires when the button is destroyed successfully.If the user want to perform any operation after the destroy button control then the user can make use of this destroy event. */ - destroy?(e: DestroyEventArgs): void; - } - - export interface ClickEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the button model - */ - model?: ej.Button.Model; - - /** returns the name of the event - */ - type?: string; - - /** return the button state - */ - status?: boolean; - - /** return the event model for sever side processing. - */ - e?: any; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the button model - */ - model?: ej.Button.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the button model - */ - model?: ej.Button.Model; - - /** returns the name of the event - */ - type?: string; - } - } - enum ContentType { - //To display the text content only in button - TextOnly, - //To display the image only in button - ImageOnly, - //Supports to display image for both ends of the button - ImageBoth, - //Supports to display image with the text content - TextAndImage, - //Supports to display image with both ends of the text - ImageTextImage, - } - enum ImagePosition { - //support for aligning text in left and image in right - ImageRight, - //support for aligning text in right and image in left - ImageLeft, - //support for aligning text in bottom and image in top. - ImageTop, - //support for aligning text in top and image in bottom - ImageBottom, - } - enum ButtonSize { - //Creates button with Built-in default size height, width specified - Normal, - //Creates button with Built-in mini size height, width specified - Mini, - //Creates button with Built-in small size height, width specified - Small, - //Creates button with Built-in medium size height, width specified - Medium, - //Creates button with Built-in large size height, width specified - Large, - } - enum ButtonType { - //Creates button with Built-in button type specified - Button, - //Creates button with Built-in reset type specified - Reset, - //Creates button with Built-in submit type specified - Submit, - } - - class Captcha extends ej.Widget { - static fn: Captcha; - constructor(element: JQuery | Element, options?: Captcha.Model); - static Locale: any; - model: Captcha.Model; - defaults: Captcha.Model; - } - export namespace Captcha { - - export interface Model { - - /** Specifies the character set of the Captcha that will be used to generate captcha text randomly. - */ - characterSet?: string; - - /** Specifies the error message to be displayed when the Captcha mismatch. - */ - customErrorMessage?: string; - - /** Set the Captcha validation automatically. - */ - enableAutoValidation?: boolean; - - /** Specifies the case sensitivity for the characters typed in the Captcha. - */ - enableCaseSensitivity?: boolean; - - /** Specifies the background patterns for the Captcha. - */ - enablePattern?: boolean; - - /** Sets the Captcha direction as right to left alignment. - */ - enableRTL?: boolean; - - /** Specifies the background appearance for the captcha. - */ - hatchStyle?: ej.HatchStyle | string; - - /** Specifies the height of the Captcha. - */ - height?: number; - - /** Specifies the method with values to be mapped in the Captcha. - */ - mapper?: string; - - /** Specifies the maximum number of characters used in the Captcha. - */ - maximumLength?: number; - - /** Specifies the minimum number of characters used in the Captcha. - */ - minimumLength?: number; - - /** Specifies the method to map values to Captcha. - */ - requestMapper?: string; - - /** Sets the Captcha with audio support, that enables to dictate the captcha text. - */ - showAudioButton?: boolean; - - /** Sets the Captcha with a refresh button. - */ - showRefreshButton?: boolean; - - /** Specifies the target button of the Captcha to validate the entered text and captcha text. - */ - targetButton?: string; - - /** Specifies the target input element that will verify the Captcha. - */ - targetInput?: string; - - /** Specifies the width of the Captcha. - */ - width?: number; - - /** Fires when captcha refresh begins. */ - refreshBegin?(e: RefreshBeginEventArgs): void; - - /** Fires after captcha refresh completed. */ - refreshComplete?(e: RefreshCompleteEventArgs): void; - - /** Fires when captcha refresh fails to load. */ - refreshFailure?(e: RefreshFailureEventArgs): void; - - /** Fires after captcha refresh succeeded. */ - refreshSuccess?(e: RefreshSuccessEventArgs): void; - } - - export interface RefreshBeginEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Captcha model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface RefreshCompleteEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Captcha model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface RefreshFailureEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Captcha model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface RefreshSuccessEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Captcha model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - } - enum HatchStyle { - //Set background as None to Captcha - None, - //Set background as BackwardDiagonal to Captcha - BackwardDiagonal, - //Set background as Cross to Captcha - Cross, - //Set background as DarkDownwardDiagonal to Captcha - DarkDownwardDiagonal, - //Set background as DarkHorizontal to Captcha - DarkHorizontal, - //Set background as DarkUpwardDiagonal to Captcha - DarkUpwardDiagonal, - //Set background as DarkVertical to Captcha - DarkVertical, - //Set background as DashedDownwardDiagonal to Captcha - DashedDownwardDiagonal, - //Set background as DashedHorizontal to Captcha - DashedHorizontal, - //Set background as DashedUpwardDiagonal to Captcha - DashedUpwardDiagonal, - //Set background as DashedVertical to Captcha - DashedVertical, - //Set background as DiagonalBrick to Captcha - DiagonalBrick, - //Set background as DiagonalCross to Captcha - DiagonalCross, - //Set background as Divot to Captcha - Divot, - //Set background as DottedDiamond to Captcha - DottedDiamond, - //Set background as DottedGrid to Captcha - DottedGrid, - //Set background as ForwardDiagonal to Captcha - ForwardDiagonal, - //Set background as Horizontal to Captcha - Horizontal, - //Set background as HorizontalBrick to Captcha - HorizontalBrick, - //Set background as LargeCheckerBoard to Captcha - LargeCheckerBoard, - //Set background as LargeConfetti to Captcha - LargeConfetti, - //Set background as LargeGrid to Captcha - LargeGrid, - //Set background as LightDownwardDiagonal to Captcha - LightDownwardDiagonal, - //Set background as LightHorizontal to Captcha - LightHorizontal, - //Set background as LightUpwardDiagonal to Captcha - LightUpwardDiagonal, - //Set background as LightVertical to Captcha - LightVertical, - //Set background as Max to Captcha - Max, - //Set background as Min to Captcha - Min, - //Set background as NarrowHorizontal to Captcha - NarrowHorizontal, - //Set background as NarrowVertical to Captcha - NarrowVertical, - //Set background as OutlinedDiamond to Captcha - OutlinedDiamond, - //Set background as Percent90 to Captcha - Percent90, - //Set background as Wave to Captcha - Wave, - //Set background as Weave to Captcha - Weave, - //Set background as WideDownwardDiagonal to Captcha - WideDownwardDiagonal, - //Set background as WideUpwardDiagonal to Captcha - WideUpwardDiagonal, - //Set background as ZigZag to Captcha - ZigZag, - } - - class ListBox extends ej.Widget { - static fn: ListBox; - constructor(element: JQuery | Element, options?: ListBox.Model); - static Locale: any; - model: ListBox.Model; - defaults: ListBox.Model; - - /** Adds a given list items in the ListBox widget at a specified index. It accepts two parameters. - * @param {any|string} This can be a list item object (for JSON binding) or a string (for UL and LI rendering). - * Also we can the specify this as an array of list item object or an array of strings to add multiple items. - * @param {number} The index value to add the given items at the specified index. If index is not specified, the given items will be added at the end of the list. - * @returns {void} - */ - addItem(listItem: any | string, index: number): void; - - /** Checks all the list items in the ListBox widget. It is dependent on showCheckbox property. - * @returns {void} - */ - checkAll(): void; - - /** Checks a list item by using its index. It is dependent on showCheckbox property. - * @param {number} Index of the listbox item to be checked. If index is not specified, the given items will be added at the end of the list. - * @returns {void} - */ - checkItemByIndex(index: number): void; - - /** Checks multiple list items by using its index values. It is dependent on showCheckbox property. - * @param {number[]} Index/Indices of the listbox items to be checked. If index is not specified, the given items will be added at the end of the list. - * @returns {void} - */ - checkItemsByIndices(indices: number[]): void; - - /** Disables the ListBox widget. - * @returns {void} - */ - disable(): void; - - /** Disables a list item by passing the item text as parameter. - * @param {string} Text of the listbox item to be disabled. - * @returns {void} - */ - disableItem(text: string): void; - - /** Disables a list Item using its index value. - * @param {number} Index of the listbox item to be disabled. - * @returns {void} - */ - disableItemByIndex(index: number): void; - - /** Disables set of list Items using its index values. - * @param {number[]|string} Indices of the listbox items to be disabled. - * @returns {void} - */ - disableItemsByIndices(Indices: number[] | string): void; - - /** Enables the ListBox widget when it is disabled. - * @returns {void} - */ - enable(): void; - - /** Enables a list Item using its item text value. - * @param {string} Text of the listbox item to be enabled. - * @returns {void} - */ - enableItem(text: string): void; - - /** Enables a list item using its index value. - * @param {number} Index of the listbox item to be enabled. - * @returns {void} - */ - enableItemByIndex(index: number): void; - - /** Enables a set of list Items using its index values. - * @param {number[]|string} Indices of the listbox items to be enabled. - * @returns {void} - */ - enableItemsByIndices(indices: number[] | string): void; - - /** Returns the list of checked items in the ListBox widget. It is dependent on showCheckbox property. - * @returns {any} - */ - getCheckedItems(): any; - - /** Returns the list of selected items in the ListBox widget. - * @returns {any} - */ - getSelectedItems(): any; - - /** Returns an item’s index based on the given text. - * @param {string} The list item text (label) - * @returns {number} - */ - getIndexByText(text: string): number; - - /** Returns an item’s index based on the value given. - * @param {string} The list item’s value - * @returns {number} - */ - getIndexByValue(indices: string): number; - - /** Returns an item’s text (label) based on the index given. - * @returns {string} - */ - getTextByIndex(): string; - - /** Returns a list item’s object using its index. - * @returns {any} - */ - getItemByIndex(): any; - - /** Returns a list item’s object based on the text given. - * @param {string} The list item text. - * @returns {any} - */ - getItemByText(text: string): any; - - /** Merges the given data with the existing data items in the listbox. - * @param {Array} Data to merge in listbox. - * @returns {void} - */ - mergeData(data: any[]): void; - - /** Selects the next item based on the current selection. - * @returns {void} - */ - moveDown(): void; - - /** Selects the previous item based on the current selection. - * @returns {void} - */ - moveUp(): void; - - /** Refreshes the ListBox widget. - * @param {boolean} Refreshes both the datasource and the dimensions of the ListBox widget when the parameter is passed as true, otherwise only the ListBox dimensions will be refreshed. - * @returns {void} - */ - refresh(refreshData: boolean): void; - - /** Removes all the list items from listbox. - * @returns {void} - */ - removeAll(): void; - - /** Removes the selected list items from the listbox. - * @returns {void} - */ - removeSelectedItems(): void; - - /** Removes a list item by using its text. - * @param {string} Text of the listbox item to be removed. - * @returns {void} - */ - removeItemByText(text: string): void; - - /** Removes a list item by using its index value. - * @param {number} Index of the listbox item to be removed. - * @returns {void} - */ - removeItemByIndex(index: number): void; - - /** - * @returns {void} - */ - selectAll(): void; - - /** Selects the list item using its text value. - * @param {string} Text of the listbox item to be selected. - * @returns {void} - */ - selectItemByText(text: string): void; - - /** Selects list item using its value property. - * @param {string} Value of the listbox item to be selected. - * @returns {void} - */ - selectItemByValue(value: string): void; - - /** Selects list item using its index value. - * @param {number} Index of the listbox item to be selected. - * @returns {void} - */ - selectItemByIndex(index: number): void; - - /** Selects a set of list items through its index values. - * @param {number|number[]} Index/Indices of the listbox item to be selected. - * @returns {void} - */ - selectItemsByIndices(Indices: number | number[]): void; - - /** Unchecks all the checked list items in the ListBox widget. To use this method showCheckbox property to be set as true. - * @returns {void} - */ - uncheckAll(): void; - - /** Unchecks a checked list item using its index value. To use this method showCheckbox property to be set as true. - * @param {number} Index of the listbox item to be unchecked. - * @returns {void} - */ - uncheckItemByIndex(index: number): void; - - /** Unchecks the set of checked list items using its index values. To use this method showCheckbox property must be set to true. - * @param {number[]|string} Indices of the listbox item to be unchecked. - * @returns {void} - */ - uncheckItemsByIndices(indices: number[] | string): void; - - /** - * @returns {void} - */ - unselectAll(): void; - - /** Unselects a selected list item using its index value - * @param {number} Index of the listbox item to be unselected. - * @returns {void} - */ - unselectItemByIndex(index: number): void; - - /** Unselects a selected list item using its text value. - * @param {string} Text of the listbox item to be unselected. - * @returns {void} - */ - unselectItemByText(text: string): void; - - /** Unselects a selected list item using its value. - * @param {string} Value of the listbox item to be unselected. - * @returns {void} - */ - unselectItemByValue(value: string): void; - - /** Unselects a set of list items using its index values. - * @param {number[]|string} Indices of the listbox item to be unselected. - * @returns {void} - */ - unselectItemsByIndices(indices: number[] | string): void; - - /** Hides all the checked items in the listbox. - * @returns {void} - */ - hideCheckedItems(): void; - - /** Shows a set of hidden list Items using its index values. - * @param {number[]|string} Indices of the listbox items to be shown. - * @returns {void} - */ - showItemByIndices(indices: number[] | string): void; - - /** Hides a set of list Items using its index values. - * @param {number[]|string} Indices of the listbox items to be hidden. - * @returns {void} - */ - hideItemsByIndices(indices: number[] | string): void; - - /** Shows the hidden list items using its values. - * @param {Array} Values of the listbox items to be shown. - * @returns {void} - */ - showItemsByValues(values: any[]): void; - - /** Hides the list item using its values. - * @param {Array} Values of the listbox items to be hidden. - * @returns {void} - */ - hideItemsByValues(values: any[]): void; - - /** Shows a hidden list item using its value. - * @param {string} Value of the listbox item to be shown. - * @returns {void} - */ - showItemByValue(value: string): void; - - /** Hide a list item using its value. - * @param {string} Value of the listbox item to be hidden. - * @returns {void} - */ - hideItemByValue(value: string): void; - - /** Shows a hidden list item using its index value. - * @param {number} Index of the listbox item to be shown. - * @returns {void} - */ - showItemByIndex(index: number): void; - - /** Hides a list item using its index value. - * @param {number} Index of the listbox item to be hidden. - * @returns {void} - */ - hideItemByIndex(index: number): void; - - /** - * @returns {void} - */ - show(): void; - - /** Hides the listbox. - * @returns {void} - */ - hide(): void; - - /** Hides all the listbox items in the listbox. - * @returns {void} - */ - hideAllItems(): void; - - /** Shows all the listbox items in the listbox. - * @returns {void} - */ - showAllItems(): void; - } - export namespace ListBox { - - export interface Model { - - /** Enables/disables the dragging behavior of the items in ListBox widget. - * @Default {false} - */ - allowDrag?: boolean; - - /** Accepts the items which are dropped in to it, when it is set to true. - * @Default {false} - */ - allowDrop?: boolean; - - /** Enables or disables multiple selection. - * @Default {false} - */ - allowMultiSelection?: boolean; - - /** Loads the list data on demand via scrolling behavior to improve the application’s performance. There are two ways to load data which can be defined using “virtualScrollMode” property. - * @Default {false} - */ - allowVirtualScrolling?: boolean; - - /** Enables or disables the case sensitive search for list item by typing the text (search) value. - * @Default {false} - */ - caseSensitiveSearch?: boolean; - - /** Dynamically populate data of a list box while selecting an item in another list box i.e. - * rendering child list box based on the item selection in parent list box. - * This property accepts the id of the child ListBox widget to populate the data. - * @Default {null} - */ - cascadeTo?: string; - - /** Set of list items to be checked by default using its index. It works only when the showCheckbox property is set to true. - * @Default {null} - */ - checkedIndices?: any[]; - - /** The root class for the ListBox widget to customize the existing theme. - * @Default {“”} - */ - cssClass?: string; - - /** Contains the list of data for generating the list items. - * @Default {null} - */ - dataSource?: any; - - /** Enables or disables the ListBox widget. - * @Default {true} - */ - enabled?: boolean; - - /** Enables or disables the search behavior to find the specific list item by typing the text value. - * @Default {false} - */ - enableIncrementalSearch?: boolean; - - /** Allows the current model values to be saved in local storage or browser cookies for state maintenance when it is set to true. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Displays the ListBox widget’s content from right to left when enabled. - * @Default {false} - */ - enableRTL?: boolean; - - /** Specifies ellipsis ("...") representation in an overflowed list item content when it is set to false. - * @Default {true} - */ - enableWordWrap?: boolean; - - /** Mapping fields for the data items of the ListBox widget. - * @Default {null} - */ - fields?: Fields; - - /** Defines the height of the ListBox widget. - * @Default {null} - */ - height?: string; - - /** Defines the height for individual ListBox item. - * @Default {null} - */ - itemHeight?: string; - - /** The number of list items to be shown in the ListBox widget. The remaining list items will be scrollable. - * @Default {null} - */ - itemsCount?: number; - - /** The total number of list items to be rendered in the ListBox widget. - * @Default {null} - */ - totalItemsCount?: number; - - /** The number of list items to be loaded in the list box while enabling virtual scrolling and when virtualScrollMode is set to continuous. - * @Default {5} - */ - itemRequestCount?: number; - - /** Loads data for the listbox by default (i.e. on initialization) when it is set to true. It creates empty ListBox if it is set to false. - */ - loadDataOnInit?: boolean; - - /** The query to retrieve required data from the data source. - * @Default {ej.Query()} - */ - query?: ej.Query; - - /** The list item to be selected by default using its index. - * @Default {null} - */ - selectedIndex?: number; - - /** The list items to be selected by default using its indices. To use this property allowMultiSelection should be enabled. - * @Default {[]} - */ - selectedIndices?: any[]; - - /** Enables/Disables the multi selection option with the help of checkbox control. - * @Default {false} - */ - showCheckbox?: boolean; - - /** To display the ListBox container with rounded corners. - * @Default {false} - */ - showRoundedCorner?: boolean; - /** Set to sort ListBox items either by Ascending or Descending order. By default sortOrder is set as enum type of "None".You can use only below mentioned type for sorting purpose. - * @Default {ej.SortOrder.None} - */ - sortOrder?: ej.ListBox.SortOrder | string; - /** The template to display the ListBox widget with customized appearance. - * @Default {null} - */ - template?: string; - - /** Holds the selected items values and used to bind value to the list item using AngularJS and KnockoutJS. - * @Default {“”} - */ - value?: number; - - /** Specifies the virtual scroll mode to load the list data on demand via scrolling behavior. There are two types of mode. - */ - virtualScrollMode?: ej.VirtualScrollMode | string; - - /** Defines the width of the ListBox widget. - * @Default {null} - */ - width?: string; - - /** Specifies the targetID for the listbox items. - */ - targetID?: string; - - /** Triggers before the AJAX request begins to load data in the ListBox widget. */ - actionBegin?(e: ActionBeginEventArgs): void; - - /** Triggers after the data requested via AJAX is successfully loaded in the ListBox widget. */ - actionSuccess?(e: ActionSuccessEventArgs): void; - - /** Triggers when the AJAX requests complete. The request may get failed or succeed. */ - actionComplete?(e: ActionCompleteEventArgs): void; - - /** Triggers when the data requested from AJAX get failed. */ - actionFailure?(e: ActionFailureEventArgs): void; - - /** Event will be triggered before the requested data via AJAX once loaded in successfully. */ - actionBeforeSuccess?(e: ActionBeforeSuccessEventArgs): void; - - /** Triggers when the item selection is changed. */ - change?(e: ChangeEventArgs): void; - - /** Triggers when the list item is checked or unchecked. */ - checkChange?(e: CheckChangeEventArgs): void; - - /** Triggers when the ListBox widget is created successfully. */ - create?(e: CreateEventArgs): void; - - /** Triggers when the ListBox widget is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - - /** Triggers when focus the listbox items. */ - focusIn?(e: FocusInEventArgs): void; - - /** Triggers when focus out from listbox items. */ - focusOut?(e: FocusOutEventArgs): void; - - /** Triggers when the list item is being dragged. */ - itemDrag?(e: ItemDragEventArgs): void; - - /** Triggers when the list item is ready to be dragged. */ - itemDragStart?(e: ItemDragStartEventArgs): void; - - /** Triggers when the list item stops dragging. */ - itemDragStop?(e: ItemDragStopEventArgs): void; - - /** Triggers when the list item is dropped. */ - itemDrop?(e: ItemDropEventArgs): void; - - /** Triggers when a list item gets selected. */ - select?(e: SelectEventArgs): void; - - /** Triggers when a list item gets unselected. */ - unselect?(e: UnselectEventArgs): void; - } - - export interface ActionBeginEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface ActionSuccessEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface ActionCompleteEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface ActionFailureEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface ActionBeforeSuccessEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** List of actual object. - */ - actual?: any; - - /** Object of ListBox widget which contains DataManager arguments - */ - request?: any; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** List of array object - */ - result?: any[]; - - /** ExecuteQuery object of DataManager - */ - xhr?: any; - } - - export interface ChangeEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** List item object. - */ - item?: any; - - /** The Datasource of the listbox. - */ - data?: any; - - /** List item’s index. - */ - index?: number; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Boolean value based on whether the list item is checked or not. - */ - isChecked?: boolean; - - /** Boolean value based on whether the list item is selected or not. - */ - isSelected?: boolean; - - /** Boolean value based on the list item is enabled or not. - */ - isEnabled?: boolean; - - /** List item’s text (label). - */ - text?: string; - - /** List item’s value. - */ - value?: string; - } - - export interface CheckChangeEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** List item object. - */ - item?: any; - - /** The Datasource of the listbox. - */ - data?: any; - - /** List item’s index. - */ - index?: number; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Boolean value based on whether the list item is checked or not. - */ - isChecked?: boolean; - - /** Boolean value based on whether the list item is selected or not. - */ - isSelected?: boolean; - - /** Boolean value based on the list item is enabled or not. - */ - isEnabled?: boolean; - - /** List item’s text (label). - */ - text?: string; - - /** List item’s value. - */ - value?: string; - } - - export interface CreateEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - } - - export interface DestroyEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - } - - export interface FocusInEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - } - - export interface FocusOutEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - } - - export interface ItemDragEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** The Datasource of the listbox. - */ - data?: any; - - /** List item’s index. - */ - index?: number; - - /** Boolean value based on whether the list item is checked or not. - */ - isChecked?: boolean; - - /** Boolean value based on whether the list item is selected or not. - */ - isSelected?: boolean; - - /** Boolean value based on whether the list item is enabled or not. - */ - isEnabled?: boolean; - - /** List item’s text (label). - */ - text?: string; - - /** List item’s value. - */ - value?: string; - } - - export interface ItemDragStartEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** The Datasource of the listbox. - */ - data?: any; - - /** List item’s index. - */ - index?: number; - - /** Boolean value based on whether the list item is checked or not. - */ - isChecked?: boolean; - - /** Boolean value based on whether the list item is selected or not. - */ - isSelected?: boolean; - - /** Boolean value based on whether the list item is enabled or not. - */ - isEnabled?: boolean; - - /** List item’s text (label). - */ - text?: string; - - /** List item’s value. - */ - value?: string; - } - - export interface ItemDragStopEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** The Datasource of the listbox. - */ - data?: any; - - /** List item’s index. - */ - index?: number; - - /** Boolean value based on whether the list item is checked or not. - */ - isChecked?: boolean; - - /** Boolean value based on whether the list item is selected or not. - */ - isSelected?: boolean; - - /** Boolean value based on whether the list item is enabled or not. - */ - isEnabled?: boolean; - - /** List item’s text (label). - */ - text?: string; - - /** List item’s value. - */ - value?: string; - } - - export interface ItemDropEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** The Datasource of the listbox. - */ - data?: any; - - /** List item’s index. - */ - index?: number; - - /** Boolean value based on whether the list item is checked or not. - */ - isChecked?: boolean; - - /** Boolean value based on whether the list item is selected or not. - */ - isSelected?: boolean; - - /** Boolean value based on whether the list item is enabled or not. - */ - isEnabled?: boolean; - - /** List item’s text (label). - */ - text?: string; - - /** List item’s value. - */ - value?: string; - } - - export interface SelectEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** List item object. - */ - item?: any; - - /** The Datasource of the listbox. - */ - data?: any; - - /** List item’s index. - */ - index?: number; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Boolean value based on whether the list item is checked or not. - */ - isChecked?: boolean; - - /** Boolean value based on whether the list item is selected or not. - */ - isSelected?: boolean; - - /** Boolean value based on the list item is enabled or not. - */ - isEnabled?: boolean; - - /** List item’s text (label). - */ - text?: string; - - /** List item’s value. - */ - value?: string; - } - - export interface UnselectEventArgs { - - /** Instance of the listbox model object. - */ - model?: ej.ListBox.Model; - - /** Name of the event. - */ - type?: string; - - /** List item object. - */ - item?: any; - - /** The Datasource of the listbox. - */ - data?: any; - - /** List item’s index. - */ - index?: number; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Boolean value based on whether the list item is checked or not. - */ - isChecked?: boolean; - - /** Boolean value based on whether the list item is selected or not. - */ - isSelected?: boolean; - - /** Boolean value based on the list item is enabled or not. - */ - isEnabled?: boolean; - - /** List item’s text (label). - */ - text?: string; - - /** List item’s value. - */ - value?: string; - } - - export interface Fields { - - /** Defines the specific field name which contains Boolean values to specify whether the list items to be checked by default or not. - */ - checkBy?: boolean; - - /** The grouping in the ListBox widget can be defined using this field. - */ - groupBy?: string; - - /** Defines the HTML attributes such as id, class, styles for the specific ListBox item. - */ - htmlAttributes?: any; - - /** Defines the specific field name which contains id values for the list items. - */ - id?: string; - - /** Defines the imageURL for the image to be displayed in the ListBox item. - */ - imageUrl?: string; - - /** Defines the image attributes such as height, width, styles and so on. - */ - imageAttributes?: string; - - /** Defines the specific field name which contains Boolean values to specify whether the list items to be selected by default or not. - */ - selectBy?: boolean; - - /** Defines the sprite CSS class for the image to be displayed. - */ - spriteCssClass?: string; - - /** Defines the table name to get the specific set of list items to be loaded in the ListBox widget while rendering with remote data. - */ - tableName?: string; - - /** Defines the specific field name in the data source to load the list with data. - */ - text?: string; - - /** Defines the specific field name in the data source to load the list with data value property. - */ - value?: string; - } - enum SortOrder { - /// The items are not sorted. - None, - /// To sort items in Ascending order. - Ascending, - /// To sort items in Descending order. - Descending - } - } - - class Calculate { - static fn: Calculate; - constructor(element: JQuery | Element, options?: Calculate.Model); - static Locale: any; - model: Calculate.Model; - defaults: Calculate.Model; - - /** Add the custom formulas with function in CalcEngine library - * @param {string} pass the formula name - * @param {string} pass the custom function name to call - * @returns {void} - */ - addCustomFunction(FormulaName: string, FunctionName: string): void; - - /** Adds a named range to the NamedRanges collection - * @param {string} pass the namedRange's name - * @param {string} pass the cell range of NamedRange - * @returns {void} - */ - addNamedRange(Name: string, cellRange: string): void; - - /** Accepts a possible parsed formula and returns the calculated value without quotes. - * @param {string} pass the cell range to adjust its range - * @returns {string} - */ - adjustRangeArg(Name: string): string; - - /** When a formula cell changes, call this method to clear it from its dependent cells. - * @param {string} pass the changed cell address - * @returns {void} - */ - clearFormulaDependentCells(Cell: string): void; - - /** Call this method to clear whether an exception was raised during the computation of a library function. - * @returns {void} - */ - clearLibraryComputationException(): void; - - /** Get the column index from a cell reference passed in. - * @param {string} pass the cell address - * @returns {void} - */ - colIndex(Cell: string): void; - - /** Evaluates a parsed formula. - * @param {string} pass the parsed formula - * @returns {string} - */ - computedValue(Formula: string): string; - - /** Evaluates a parsed formula. - * @param {string} pass the parsed formula - * @returns {string} - */ - computeFormula(Formula: string): string; - } - export namespace Calculate { - - export interface Model { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - } - - class CheckBox extends ej.Widget { - static fn: CheckBox; - constructor(element: JQuery | Element, options?: CheckBox.Model); - static Locale: any; - model: CheckBox.Model; - defaults: CheckBox.Model; - - /** Destroy the CheckBox widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** Disable the CheckBox to prevent all user interactions. - * @returns {void} - */ - disable(): void; - - /** To enable the CheckBox - * @returns {void} - */ - enable(): void; - - /** To Check the status of CheckBox - * @returns {boolean} - */ - isChecked(): boolean; - } - export namespace CheckBox { - - export interface Model { - - /** Specifies whether CheckBox has to be in checked or not. - * We can also specify array of string as value for this property. - * If any of the value in the specified array matches the value of the textbox, - * then it will be considered as checked. It will be useful in MVVM binding, - * specify array type to identify the values of the checked CheckBoxes. - * @Default {false} - */ - checked?: boolean | string[]; - - /** Specifies the State of CheckBox.See below to get available CheckState - * @Default {null} - */ - checkState?: ej.CheckState | string; - - /** Sets the root CSS class for CheckBox theme, which is used customize. - */ - cssClass?: string; - - /** Specifies the checkbox control state. - * @Default {true} - */ - enabled?: boolean; - - /** Specifies the persist property for CheckBox while initialization. - * The persist API save current model value to browser cookies for state maintains. - * While refreshing the CheckBox control page the model value apply from browser cookies. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Specify the Right to Left direction to Checkbox - * @Default {false} - */ - enableRTL?: boolean; - - /** Specifies the enable or disable Tri-State for checkbox control. - * @Default {false} - */ - enableTriState?: boolean; - - /** It allows to define the characteristics of the CheckBox control. It will helps to extend the capability of an HTML element. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specified value to be added an id attribute of the CheckBox. - * @Default {null} - */ - id?: string; - - /** Specify the prefix value of id to be added before the current id of the CheckBox. - * @Default {ej} - */ - idPrefix?: string; - - /** Specifies the name attribute of the CheckBox. - * @Default {null} - */ - name?: string; - - /** Displays rounded corner borders to CheckBox - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specifies the size of the CheckBox.See below to know available CheckboxSize - * @Default {small} - */ - size?: ej.CheckboxSize | string; - - /** Specifies the text content to be displayed for CheckBox. - */ - text?: string; - - /** Set the jQuery validation error message in CheckBox. - * @Default {null} - */ - validationMessage?: any; - - /** Set the jQuery validation rules in CheckBox. - * @Default {null} - */ - validationRules?: any; - - /** Specifies the value attribute of the CheckBox. - * @Default {null} - */ - value?: string; - - /** Fires before the CheckBox is going to changed its state successfully */ - beforeChange?(e: BeforeChangeEventArgs): void; - - /** Fires when the CheckBox state is changed successfully */ - change?(e: ChangeEventArgs): void; - - /** Fires when the CheckBox state is created successfully */ - create?(e: CreateEventArgs): void; - - /** Fires when the CheckBox state is destroyed successfully */ - destroy?(e: DestroyEventArgs): void; - } - - export interface BeforeChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the CheckBox model - */ - model?: ej.CheckBox.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the event model values - */ - event?: any; - - /** returns the status whether the element is checked or not. - */ - isChecked?: boolean; - } - - export interface ChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the CheckBox model - */ - model?: ej.CheckBox.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the event arguments - */ - event?: any; - - /** returns the status whether the element is checked or not. - */ - isChecked?: boolean; - - /** returns the state of the checkbox - */ - checkState?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the CheckBox model - */ - model?: ej.CheckBox.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the CheckBox model - */ - model?: ej.CheckBox.Model; - - /** returns the name of the event - */ - type?: string; - } - } - enum CheckState { - //string - Uncheck, - //string - Check, - //string - Indeterminate, - } - enum CheckboxSize { - //Displays the CheckBox in medium size - Medium, - //Displays the CheckBox in small size - Small, - } - - class ColorPicker extends ej.Widget { - static fn: ColorPicker; - constructor(element: JQuery | Element, options?: ColorPicker.Model); - static Locale: any; - model: ColorPicker.Model; - defaults: ColorPicker.Model; - - /** Disables the color picker control - * @returns {void} - */ - disable(): void; - - /** Enable the color picker control - * @returns {void} - */ - enable(): void; - - /** Gets the selected color in RGB format - * @returns {any} - */ - getColor(): any; - - /** Gets the selected color value as string - * @returns {string} - */ - getValue(): string; - - /** To Convert color value from hexCode to RGB - * @param {string} Specified HEX code converted to RGB - * @returns {any} - */ - hexCodeToRGB(colorCode: string): any; - - /** Hides the ColorPicker popup, if in opened state. - * @returns {void} - */ - hide(): void; - - /** Convert color value from HSV to RGB - * @param {any} Specified HSV code converted to RGB - * @returns {any} - */ - HSVToRGB(HSV: any): any; - - /** Convert color value from RGB to HEX - * @param {any} Specified RGB code converted to HEX code - * @returns {string} - */ - RGBToHEX(RGB: any): string; - - /** Convert color value from RGB to HSV - * @param {any} Specified RGB code converted to HSV code - * @returns {any} - */ - RGBToHSV(RGB: any): any; - - /** Open the ColorPicker popup. - * @returns {void} - */ - show(): void; - } - export namespace ColorPicker { - - export interface Model { - - /** The ColorPicker control allows to define the customized text to displayed in button elements. Using the property to achieve the customized culture values. - * @Default {{ apply: Apply, cancel: Cancel, swatches: Swatches }} - */ - buttonText?: ButtonText; - - /** Allows to change the mode of the button. Please refer below to know available button mode - * @Default {ej.ButtonMode.Split} - */ - buttonMode?: ej.ButtonMode | string; - - /** Specifies the number of columns to be displayed color palette model. - * @Default {10} - */ - columns?: number | string; - - /** This property allows you to customize its appearance using user-defined CSS and custom skin options such as colors and backgrounds. - */ - cssClass?: string; - - /** This property allows to define the custom colors in the palette model.Custom palettes are created by passing a comma delimited string of HEX values or an array of colors. - * @Default {empty} - */ - custom?: any[]; - - /** This property allows to embed the popup in the order of DOM element flow . When we set the value as true, the color picker popup is always in visible state. - * @Default {false} - */ - displayInline?: boolean; - - /** This property allows to change the control in enabled or disabled state. - * @Default {true} - */ - enabled?: boolean; - - /** This property allows to enable or disable the opacity slider in the color picker control - * @Default {true} - */ - enableOpacity?: boolean; - - /** It allows to define the characteristics of the ColorPicker control. It will helps to extend the capability of an HTML element. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Defines the localized text values in button and tooltip. - * @Default {en-US} - */ - locale?: string; - - /** Specifies the model type to be rendered initially in the color picker control. See below to get available ModelType - * @Default {ej.ColorPicker.ModelType.Default} - */ - modelType?: ej.ColorPicker.ModelType | string; - - /** This property allows to change the opacity value .The selected color opacity will be adjusted by using this opacity value. - * @Default {100} - */ - opacityValue?: number | string; - - /** Specifies the palette type to be displayed at initial time in palette model.There two types of palette model available in ColorPicker control. See below available Palette - * @Default {ej.ColorPicker.Palette.BasicPalette} - */ - palette?: ej.ColorPicker.Palette | string; - - /** This property allows to define the preset model to be rendered initially in palette type.It consists of 12 different types of presets. Each presets have 50 colors. - * See below available Presets - * @Default {ej.ColorPicker.Presets.Basic} - */ - presetType?: ej.ColorPicker.Presets | string; - - /** Allows to show/hides the apply and cancel buttons in ColorPicker control - * @Default {true} - */ - showApplyCancel?: boolean; - - /** Allows to show/hides the clear button in ColorPicker control - * @Default {true} - */ - showClearButton?: boolean; - - /** This property allows to provides live preview support for current cursor selection color and selected color. - * @Default {true} - */ - showPreview?: boolean; - - /** This property allows to store the color values in custom list.The ColorPicker will keep up to 11 colors in a custom list. - * By clicking the add button, the selected color from picker or palette will get added in the recent color list. - * @Default {false} - */ - showRecentColors?: boolean; - - /** Allows to show/hides the switcher button in ColorPicker control.It helps to switch palette or picker mode in colorpicker. - * @Default {true} - */ - showSwitcher?: boolean; - - /** This property allows to shows tooltip to notify the slider value in color picker control. - * @Default {false} - */ - showTooltip?: boolean; - - /** Specifies the toolIcon to be displayed in dropdown control color area. - * @Default {null} - */ - toolIcon?: string; - - /** This property allows to define the customized text or content to displayed when mouse over the following elements. This property also allows to use the culture values. - * @Default {{ switcher: Switcher, addbutton: Add Color, basic: Basic, monochrome: Mono Chrome, flatcolors: Flat Color, seawolf: Sea Wolf, webcolors: Web Colors, - * sandy: Sandy, pinkshades: Pink Shades, misty: Misty, citrus: Citrus, vintage: Vintage, moonlight: Moon Light, candycrush: Candy Crush, - * currentcolor: Current Color, selectedcolor: Selected Color }} - */ - tooltipText?: TooltipText; - - /** Specifies the color value for color picker control, the value is in hexadecimal form with prefix of "#". - * @Default {null} - */ - value?: string; - - /** Fires after Color value has been changed successfully.If the user want to perform any operation after the color value changed then the user can make use of this change event. */ - change?(e: ChangeEventArgs): void; - - /** Fires after closing the color picker popup. */ - close?(e: CloseEventArgs): void; - - /** Fires after Color picker control is created. If the user want to perform any operation after the color picker control creation then the user can make use of this create event. */ - create?(e: CreateEventArgs): void; - - /** Fires after Color picker control is destroyed. If the user want to perform any operation after the color picker control destroyed then the user can make use of this destroy event. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires after opening the color picker popup */ - open?(e: OpenEventArgs): void; - - /** Fires after Color value has been selected successfully. If the user want to perform any operation after the color value selected then the user can make use of this select event. */ - select?(e: SelectEventArgs): void; - } - - export interface ChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the color picker model - */ - model?: ej.ColorPicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** return the changed color value - */ - value?: string; - } - - export interface CloseEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the color picker model - */ - model?: ej.ColorPicker.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the color picker model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the color picker model - */ - model?: ej.ColorPicker.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface OpenEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the color picker model - */ - model?: ej.ColorPicker.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface SelectEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the color picker model - */ - model?: ej.ColorPicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** return the selected color value - */ - value?: string; - } - - export interface ButtonText { - - /** Sets the text for the apply button. - */ - apply?: string; - - /** Sets the text for the cancel button. - */ - cancel?: string; - - /** Sets the header text for the swatches area. - */ - swatches?: string; - } - - export interface TooltipText { - - /** Sets the tooltip text for the switcher button. - */ - switcher?: string; - - /** Sets the tooltip text for the add button. - */ - addbutton?: string; - - /** Sets the tooltip text for the basic preset. - */ - basic?: string; - - /** Sets the tooltip text for the mono chrome preset. - */ - monochrome?: string; - - /** Sets the tooltip text for the flat colors preset. - */ - flatcolors?: string; - - /** Sets the tooltip text for the sea wolf preset. - */ - seawolf?: string; - - /** Sets the tooltip text for the web colors preset. - */ - webcolors?: string; - - /** Sets the tooltip text for the sandy preset. - */ - sandy?: string; - - /** Sets the tooltip text for the pink shades preset. - */ - pinkshades?: string; - - /** Sets the tooltip text for the misty preset. - */ - misty?: string; - - /** Sets the tooltip text for the citrus preset. - */ - citrus?: string; - - /** Sets the tooltip text for the vintage preset. - */ - vintage?: string; - - /** Sets the tooltip text for the moon light preset. - */ - moonlight?: string; - - /** Sets the tooltip text for the candy crush preset. - */ - candycrush?: string; - - /** Sets the tooltip text for the current color area. - */ - currentcolor?: string; - - /** Sets the tooltip text for the selected color area. - */ - selectedcolor?: string; - } - - enum ModelType { - - ///support palette type mode in color picker. - Palette, - - ///support palette type mode in color picker. - Picker - } - - - enum Palette { - - ///used to show the basic palette - BasicPalette, - - ///used to show the custompalette - CustomPalette - } - - - enum Presets { - - ///used to show the basic presets - Basic, - - ///used to show the CandyCrush colors presets - CandyCrush, - - ///used to show the Citrus colors presets - Citrus, - - ///used to show the FlatColors presets - FlatColors, - - ///used to show the Misty presets - Misty, - - ///used to show the MoonLight presets - MoonLight, - - ///used to show the PinkShades presets - PinkShades, - - ///used to show the Sandy presets - Sandy, - - ///used to show the Seawolf presets - SeaWolf, - - ///used to show the Vintage presets - Vintage, - - ///used to show the WebColors presets - WebColors - } - - } - enum ButtonMode { - //Displays the button in split mode - Split, - //Displays the button in Dropdown mode - Dropdown, - } - - class FileExplorer extends ej.Widget { - static fn: FileExplorer; - constructor(element: JQuery | Element, options?: FileExplorer.Model); - static Locale: any; - model: FileExplorer.Model; - defaults: FileExplorer.Model; - - /** Refresh the size of FileExplorer control. - * @returns {void} - */ - adjustSize(): void; - - /** Disable the particular context menu item. - * @param {string|HTMLElement} Id of the menu item/ Menu element to be disabled - * @returns {void} - */ - disableMenuItem(item: string | HTMLElement): void; - - /** Disable the particular toolbar item. - * @param {string|HTMLElement} Id of the toolbar item/ Tool item element to be disabled - * @returns {void} - */ - disableToolbarItem(item: string | HTMLElement): void; - - /** Enable the particular context menu item. - * @param {string|HTMLElement} Id of the menu item/ Menu element to be Enabled - * @returns {void} - */ - enableMenuItem(item: string | HTMLElement): void; - - /** Enable the particular toolbar item - * @param {string|HTMLElement} Id of the tool item/ Tool item element to be Enabled - * @returns {void} - */ - enableToolbarItem(item: string | HTMLElement): void; - - /** Refresh the content of the selected folder in FileExplorer control. - * @returns {void} - */ - refresh(): void; - - /** Remove the particular toolbar item. - * @param {string|HTMLElement} Id of the tool item/ tool item element to be removed - * @returns {void} - */ - removeToolbarItem(item: string | HTMLElement): void; - } - export namespace FileExplorer { - - export interface Model { - - /** Sets the URL of server side AJAX handling method that handles file operation like Read, Remove, Rename, Create, Upload, Download, Copy and Move in FileExplorer. - */ - ajaxAction?: string; - - /** Specifies the data type of server side AJAX handling method. - * @Default {json} - */ - ajaxDataType?: string; - - /** By using ajaxSettings property, you can customize the AJAX configurations. Normally you can customize the following option in AJAX handling data, URL, type, async, contentType, dataType and - * success. For upload, download and getImage API, you can only customize URL. - * @Default {{ read: {}, createFolder: {}, remove: {}, rename: {}, paste: {}, getDetails: {}, download: {}, upload: {}, getImage: {}, search: {}}} - */ - ajaxSettings?: any; - - /** The FileExplorer allows to move the files from one folder to another folder of FileExplorer by using drag and drop option. Also it supports to upload a file by dragging it - * from windows explorer to the necessary folder of ejFileExplorer. - * @Default {true} - */ - allowDragAndDrop?: boolean; - - /** Gets or sets a value that indicates whether to enable keyboard support for FileExplorer actions. - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** The FileExplorer allows to select multiple files by enabling the allowMultiSelection property. You can perform multi selection by pressing the Ctrl key or Shift key. - * @Default {true} - */ - allowMultiSelection?: boolean; - - /** By using the contextMenuSettings property, you can customize the ContextMenu in the FileExplorer control. - */ - contextMenuSettings?: ContextMenuSettings; - - /** Sets the root class for FileExplorer theme. This cssClass API allows to use custom skinning option for File Explorer control. - * By defining the root class by using this API, you have to include this root class in CSS. - */ - cssClass?: string; - - /** Specify the enablePersistence to FileExplorer to save the current model value in browser cookies for state maintains. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Enables or disables the resize support in FileExplorer control. - * @Default {false} - */ - enableResize?: boolean; - - /** Enables or disables the Right to Left alignment support in FileExplorer control. - * @Default {false} - */ - enableRTL?: boolean; - - /** Enables or disables the thumbnail image compression option in FileExplorer control. By enabling this option, you can reduce the thumbnail image size while loading. - * @Default {false} - */ - enableThumbnailCompress?: boolean; - - /** Allows specified type of files only to display in FileExplorer control. - * @Default {.} - */ - fileTypes?: string; - - /** By using filterSettings property, you can customize the search functionality of the search bar in FileExplorer control. - */ - filterSettings?: FilterSettings; - - /** By using the gridSettings property, you can customize the grid behavior in the FileExplorer control. - */ - gridSettings?: GridSettings; - - /** Specifies the height of FileExplorer control. - * @Default {400} - */ - height?: string | number; - - /** Enables or disables the responsive support for FileExplorer control during the window resizing time. - * @Default {false} - */ - isResponsive?: boolean; - - /** Sets the file view type. There are three view types available such as Grid, Tile and Large icons. See layoutType. - * @Default {ej.FileExplorer.layoutType.Grid} - */ - layout?: ej.FileExplorer.layoutType | string; - - /** Sets the culture in FileExplorer. - * @Default {en-US} - */ - locale?: string; - - /** Sets the maximum height of FileExplorer control. - * @Default {null} - */ - maxHeight?: string | number; - - /** Sets the maximum width of FileExplorer control. - * @Default {null} - */ - maxWidth?: string | number; - - /** Sets the minimum height of FileExplorer control. - * @Default {250px} - */ - minHeight?: string | number; - - /** Sets the minimum width of FileExplorer control. - * @Default {400px} - */ - minWidth?: string | number; - - /** The property path denotes the filesystem path that are to be explored. The path for the filesystem can be physical path or relative path, - * but it has to be relevant to where the Web API is hosted. - */ - path?: string; - - /** The selectedFolder is used to select the specified folder of FileExplorer control. - */ - selectedFolder?: string; - - /** The selectedItems is used to select the specified items (file, folder) of FileExplorer control. - */ - selectedItems?: string | any[]; - - /** Enables or disables the checkbox option in FileExplorer control. - * @Default {true} - */ - showCheckbox?: boolean; - - /** Enables or disables the context menu option in FileExplorer control. - * @Default {true} - */ - showContextMenu?: boolean; - - /** Enables or disables the footer in FileExplorer control. The footer element displays the details of the current selected files and folders. - * And also the footer having the switcher to change the layout view. - * @Default {true} - */ - showFooter?: boolean; - - /** FileExplorer control is displayed with rounded corner when this property is set to true. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** FileExplorer control is rendered with thumbnail preview of images in Tile and LargeIcons layout when this property set to true. - * @Default {true} - */ - showThumbnail?: boolean; - - /** Shows or disables the toolbar in FileExplorer control. - * @Default {true} - */ - showToolbar?: boolean; - - /** Enables or disables the navigation pane in FileExplorer control. The navigation pane contains a tree view element that displays all the folders from the filesystem in a hierarchical manner. - * This is useful to a quick navigation of any folder in the filesystem. - * @Default {true} - */ - showNavigationPane?: boolean; - - /** The tools property is used to configure and group required toolbar items in FileExplorer control. - * @Default {{ creation: [NewFolder], navigation: [Back, Forward, Upward], addressBar: [Addressbar], editing: [Refresh, Upload, Delete, Rename, Download], copyPaste: [Cut, Copy, Paste], - * getProperties: [Details], searchBar: [Searchbar], layout: [Layout], sortBy: [SortBy]}} - */ - tools?: any; - - /** The toolsList property is used to arrange the toolbar items in the FileExplorer control. - * @Default {[layout, creation, navigation, addressBar, editing, copyPaste, sortBy, getProperties, searchBar]} - */ - toolsList?: any[]; - - /** Gets or sets an object that indicates whether to customize the upload behavior in the FileExplorer. - */ - uploadSettings?: UploadSettings; - - /** Specifies the width of FileExplorer control. - * @Default {850} - */ - width?: string | number; - - /** Fires before the AJAX request is performed. */ - beforeAjaxRequest?(e: BeforeAjaxRequestEventArgs): void; - - /** Fires before downloading the files. */ - beforeDownload?(e: BeforeDownloadEventArgs): void; - - /** Fires before getting a requested image from server. Also this event will be triggered when you have enabled thumbnail image compression option in FileExplorer. - * Using this event, you can customize the image compression size. - */ - beforeGetImage?(e: BeforeGetImageEventArgs): void; - - /** Fires before files or folders open. */ - beforeOpen?(e: BeforeOpenEventArgs): void; - - /** Fires before uploading the files. */ - beforeUpload?(e: BeforeUploadEventArgs): void; - - /** Fires when FileExplorer control was created */ - create?(e: CreateEventArgs): void; - - /** Fires when file or folder is copied successfully. */ - copy?(e: CopyEventArgs): void; - - /** Fires when new folder is created successfully in file system. */ - createFolder?(e: CreateFolderEventArgs): void; - - /** Fires when file or folder is cut successfully. */ - cut?(e: CutEventArgs): void; - - /** Fires when the FileExplorer is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when the files or directory has been started to drag over on the FileExplorer */ - dragStart?(e: DragStartEventArgs): void; - - /** Fires when the files or directory is dragging over on the FileExplorer. */ - drag?(e: DragEventArgs): void; - - /** Fires when the files or directory has been stopped to drag over on FileExplorer */ - dragStop?(e: DragStopEventArgs): void; - - /** Fires when the files or directory is dropped to the target folder of FileExplorer */ - drop?(e: DropEventArgs): void; - - /** Fires after loading the requested image from server. Using this event, you can get the details of loaded image. */ - getImage?(e: GetImageEventArgs): void; - - /** Fires when keydown in FileExplorer control. */ - keydown?(e: KeydownEventArgs): void; - - /** Fires when the file view type is changed. */ - layoutChange?(e: LayoutChangeEventArgs): void; - - /** Fires when before the ContextMenu opening. */ - menuBeforeOpen?(e: MenuBeforeOpenEventArgs): void; - - /** Fires when click the ContextMenu item. */ - menuClick?(e: MenuClickEventArgs): void; - - /** Fires when ContextMenu is successfully opened. */ - menuOpen?(e: MenuOpenEventArgs): void; - - /** Fires when files are successfully opened. */ - open?(e: OpenEventArgs): void; - - /** Fires when a file or folder is pasted successfully. */ - paste?(e: PasteEventArgs): void; - - /** Fires when file or folder is deleted successfully. */ - remove?(e: RemoveEventArgs): void; - - /** Fires when resizing is performed for FileExplorer. */ - resize?(e: ResizeEventArgs): void; - - /** Fires when resizing is started for FileExplorer. */ - resizeStart?(e: ResizeStartEventArgs): void; - - /** Fires this event when the resizing is stopped for FileExplorer. */ - resizeStop?(e: ResizeStopEventArgs): void; - - /** Fires when the items from grid view or tile view of FileExplorer control is selected. */ - select?(e: SelectEventArgs): void; - - /** Triggered when refresh the template column elements in the grid view of FileExplorer control. */ - templateRefresh?(e: TemplateRefreshEventArgs): void; - - /** Fires when the items from grid view or tile view or large icons view of FileExplorer control is unselected. */ - unselect?(e: UnselectEventArgs): void; - } - - export interface BeforeAjaxRequestEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the AJAX request data - */ - data?: any; - - /** returns the FileExplorer model - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface BeforeDownloadEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the downloaded file names. - */ - files?: string[]; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the path of currently opened item. - */ - path?: string; - - /** returns the selected item details. - */ - selectedItems?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface BeforeGetImageEventArgs { - - /** set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** enable or disable the image compress option. - */ - canCompress?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the expected image size. - */ - size?: any; - - /** returns the selected item details. - */ - selectedItems?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface BeforeOpenEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the opened item type. - */ - itemType?: string; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the path of currently opened item. - */ - path?: string; - - /** returns the selected item details. - */ - selectedItems?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface BeforeUploadEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the path of currently opened item. - */ - path?: string; - - /** returns the selected item details. - */ - selectedItems?: any; - - /** returns the upload item details. - */ - uploadItemDetails?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface CreateEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface CopyEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of copied file/folder. - */ - name?: string[]; - - /** returns the selected item details. - */ - selectedItems?: any; - - /** returns the source path. - */ - sourcePath?: string; - - /** returns the name of the event. - */ - type?: string; - } - - export interface CreateFolderEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the AJAX response data - */ - data?: any; - - /** returns the FileExplorer model - */ - model?: ej.FileExplorer.Model; - - /** returns the selected item details - */ - selectedItems?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface CutEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of moved file or folder. - */ - name?: string[]; - - /** returns the selected item details. - */ - selectedItems?: any; - - /** returns the source path. - */ - sourcePath?: string; - - /** returns the name of the event. - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface DragStartEventArgs { - - /** set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the dragging element. - */ - target?: any; - - /** returns the path of dragging element. - */ - targetPath?: string; - - /** returns the dragging file details. - */ - selectedItems?: any; - } - - export interface DragEventArgs { - - /** set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the target element. - */ - target?: any; - - /** returns the name of target element. - */ - targetElementName?: string; - - /** returns the path of target element. - */ - targetPath?: string; - } - - export interface DragStopEventArgs { - - /** set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the target element. - */ - target?: any; - - /** returns the path of target element. - */ - targetPath?: string; - - /** returns the name of target element - */ - targetElementName?: string; - - /** returns the action, which is performed after dropping the files (upload/ move). - */ - dropAction?: string; - - /** returns the dragging file details - */ - fileInfo?: any; - } - - export interface DropEventArgs { - - /** set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the target element. - */ - target?: any; - - /** returns the name of target folder. - */ - targetFolder?: string; - - /** returns the path of target folder. - */ - targetPath?: string; - - /** returns the dragging element details. - */ - fileInfo?: any; - - /** returns the action, which is performed after dropping the files (upload/ move). - */ - dropAction?: string; - } - - export interface GetImageEventArgs { - - /** set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** loaded image path. - */ - path?: string; - - /** loaded image element - */ - element?: any; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** original arguments of image load or error event - */ - originalArgs?: any; - - /** returns the action type, which specifies thumbnail preview or opening image. - */ - action?: string; - - /** returns the name of the event. - */ - type?: string; - } - - export interface KeydownEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the downed key keyCode value - */ - keyCode?: number; - - /** returns altKey value. - */ - altKey?: boolean; - - /** returns shiftKey value. - */ - shiftKey?: boolean; - - /** returns ctrlKey value. - */ - ctrlKey?: boolean; - - /** returns the event object. - */ - originalArgs?: any; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface LayoutChangeEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** return true when we change the layout via interaction, else false. - */ - isInteraction?: boolean; - - /** returns the current view type. - */ - layoutType?: string; - - /** returns the FileExplorer model. - */ - model?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface MenuBeforeOpenEventArgs { - - /** set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the name of ContextMenu items group. - */ - contextMenu?: string; - - /** returns the dataSource of ContextMenu. - */ - dataSource?: any[]; - - /** returns the element of ContextMenu. - */ - element?: any; - - /** returns the event of ContextMenu. - */ - events?: any; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the target element. - */ - target?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface MenuClickEventArgs { - - /** returns the ID of clicked ContextMenu item. - */ - ID?: string; - - /** set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the name of ContextMenu items group. - */ - contextMenu?: string; - - /** returns the element of clicked ContextMenu item. - */ - element?: any; - - /** returns the event of ContextMenu. - */ - event?: any; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the parent element ID of clicked ContextMenu item. - */ - parentId?: string; - - /** returns the parent element text of clicked ContextMenu item. - */ - parentText?: string; - - /** returns the text of clicked ContextMenu item. - */ - text?: string; - - /** returns the name of the event. - */ - type?: string; - } - - export interface MenuOpenEventArgs { - - /** set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the name of ContextMenu items group. - */ - contextMenu?: string; - - /** returns the element of ContextMenu. - */ - element?: any; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the target element. - */ - target?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface OpenEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the opened item type. - */ - itemType?: string; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the path of currently opened item. - */ - path?: string; - - /** returns the selected item details. - */ - selectedItems?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface PasteEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of moved/copied file or folder. - */ - name?: string[]; - - /** returns the selected item details. - */ - selectedItems?: any; - - /** returns the target folder item details. - */ - targetFolder?: any; - - /** returns the target path. - */ - targetPath?: string; - - /** returns the name of the event. - */ - type?: string; - } - - export interface RemoveEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the AJAX response data. - */ - data?: any; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the names of deleted items. - */ - name?: string; - - /** returns the path of deleted item. - */ - path?: string; - - /** returns the removed item details. - */ - selectedItems?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface ResizeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the mouse move event args. - */ - event?: any; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface ResizeStartEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the mouse down event args. - */ - event?: any; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface ResizeStopEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the mouse leave event args. - */ - event?: any; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface SelectEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** returns the name of selected items. - */ - name?: string[]; - - /** returns the path of selected items. - */ - path?: string; - - /** returns the selected item details - */ - selectedItems?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface TemplateRefreshEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** Returns the cell object. - */ - cell?: ej.FileExplorer.Model; - - /** Returns the column object. - */ - column?: any; - - /** Returns the current row data. - */ - data?: any; - - /** Returns the grid model of FileExplorer. - */ - model?: any; - - /** Returns the current row index. - */ - rowIndex?: number; - - /** returns the name of the event. - */ - type?: string; - } - - export interface UnselectEventArgs { - - /** Returns the FileExplorer model. - */ - model?: ej.FileExplorer.Model; - - /** Returns the name of unselected item. - */ - name?: string; - - /** Returns the name of unselected items. - */ - names?: string[]; - - /** Returns the type of unselected item. - */ - nodeType?: string; - - /** Returns the path of unselected item. - */ - path?: string; - - /** Returns the name of the event. - */ - type?: string; - - /** Returns the unselected item details. - */ - unselectedItem?: any; - - /** Returns the unselected items details. - */ - unselectedItems?: any[]; - } - - export interface ContextMenuSettings { - - /** The items property is used to configure and group the required ContextMenu items in FileExplorer control. - * @Default {{% highlight javascript %}{navbar: [NewFolder, Upload, |, Delete, Rename, |, Cut, Copy, Paste, |, Getinfo],cwd: [Refresh, Paste,|, SortBy, |, NewFolder, Upload, |, - * Getinfo],files: [Open, Download, |, Upload, |, Delete, Rename, |, Cut, Copy, Paste, |, OpenFolderLocation, Getinfo]}{% endhighlight %}} - */ - items?: any; - - /** The customMenuFields property is used to define custom functionality for custom ContextMenu item's which are defined in items property. - * @Default {[]} - */ - customMenuFields?: any[]; - } - - export interface FilterSettings { - - /** It allows to search the text given in search Textbox in every keyup event. When this property was set as false, searching will works only on Enter key and searchbar blur. - * @Default {true} - */ - allowSearchOnTyping?: boolean; - - /** Enables or disables to perform the filter operation with case sensitive. - * @Default {false} - */ - caseSensitiveSearch?: boolean; - - /** Sets the search filter type. There are several filter types available such as "startswith", "contains", "endswith". See filterType. - * @Default {ej.FileExplorer.filterType.Contains} - */ - filterType?: ej.FilterType | string; - } - - export interface GridSettings { - - /** Allows to Resize the width of the columns by simply click and move the particular column header line. - * @Default {true} - */ - allowResizing?: boolean; - - /** Gets or sets a value that indicates whether to enable the dynamic sorting behavior on grid data. Sorting can be done through clicking on particular column header. - * @Default {true} - */ - allowSorting?: boolean; - - /** Gets or sets an object that indicates to render the grid with specified columns. You can use this property same as the column property in Grid control. - * @Default {[{ field: name, headerText: Name, width: 30% }, { field: dateModified, headerText: Date Modified, width: 30% }, { field: type, headerText: Type, width: 15% }, - * { field: size, headerText: Size, width: 12%, textAlign: right, headerTextAlign: left }]} - */ - columns?: any[]; - } - - export interface UploadSettings { - - /** Specifies the maximum file size allowed to upload. It accepts the value in bytes. - * @Default {31457280} - */ - maxFileSize?: number; - - /** Enables or disables the multiple files upload. When it is enabled, you can upload multiple files at a time and when disabled, you can upload only one file at a time. - * @Default {true} - */ - allowMultipleFile?: boolean; - - /** Enables or disables the auto upload option while uploading files in FileExplorer control. - * @Default {false} - */ - autoUpload?: boolean; - } - - enum layoutType { - - ///Supports to display files in tile view - Tile, - - ///Supports to display files in grid view - Grid, - - ///Supports to display files as large icons - LargeIcons - } - - } - - class DatePicker extends ej.Widget { - static fn: DatePicker; - constructor(element: JQuery | Element, options?: DatePicker.Model); - static Locale: any; - model: DatePicker.Model; - defaults: DatePicker.Model; - - /** Disables the DatePicker control. - * @returns {void} - */ - disable(): void; - - /** Enable the DatePicker control, if it is in disabled state. - * @returns {void} - */ - enable(): void; - - /** Returns the current date value in the DatePicker control. - * @returns {string} - */ - getValue(): string; - - /** Close the DatePicker popup, if it is in opened state. - * @returns {void} - */ - hide(): void; - - /** Opens the DatePicker popup. - * @returns {void} - */ - show(): void; - } - export namespace DatePicker { - - export interface Model { - - /** Used to allow or restrict the editing in DatePicker input field directly. By setting false to this API, You can only pick the date from DatePicker popup. - * @Default {true} - */ - allowEdit?: boolean; - - /** allow or restrict the drill down to multiple levels of view (month/year/decade) in DatePicker calendar - * @Default {true} - */ - allowDrillDown?: boolean; - - /** Disable the list of specified date value. - * @Default {{}} - */ - blackoutDates?: any; - - /** Sets the specified text value to the today button in the DatePicker calendar. - * @Default {Today} - */ - buttonText?: string; - - /** Sets the root CSS class for DatePicker theme, which is used customize. - */ - cssClass?: string; - - /** Formats the value of the DatePicker in to the specified date format. If this API is not specified, dateFormat will be set based on the current culture of DatePicker. - * @Default {MM/dd/yyyy} - */ - dateFormat?: string; - - /** Specifies the header format of days in DatePicker calendar. See below to get available Headers options - * @Default {ej.DatePicker.Header.Short} - */ - dayHeaderFormat?: string | ej.DatePicker.Header; - - /** Specifies the navigation depth level in DatePicker calendar. This option is not applied when start level view option is lower than depth level view. - * See below to know available levels in DatePicker Calendar - */ - depthLevel?: string | ej.DatePicker.Level; - - /** Allows to embed the DatePicker calendar in the page. Also associates DatePicker with div element instead of input. - * @Default {false} - */ - displayInline?: boolean; - - /** Enables or disables the animation effect with DatePicker calendar. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Enable or disable the DatePicker control. - * @Default {true} - */ - enabled?: boolean; - - /** Sustain the entire widget model of DatePicker even after form post or browser refresh - * @Default {false} - */ - enablePersistence?: boolean; - - /** Displays DatePicker calendar along with DatePicker input field in Right to Left direction. - * @Default {false} - */ - enableRTL?: boolean; - - /** Allows to enter valid or invalid date in input textbox and indicate as error if it is invalid value, when this API value is set to true. For false value, invalid date is not allowed - * to input field and corrected to valid date automatically, even if invalid date is given. - * @Default {false} - */ - enableStrictMode?: boolean; - - /** Used the required fields for special Dates in DatePicker in order to customize the special dates in a calendar. - * @Default {null} - */ - fields?: Fields; - - /** Specifies the header format to be displayed in the DatePicker calendar. - * @Default {MMMM yyyy} - */ - headerFormat?: string; - - /** Specifies the height of the DatePicker input text. - * @Default {28px} - */ - height?: string; - - /** HighlightSection is used to highlight currently selected date's month/week/workdays. See below to get available HighlightSection options - * @Default {none} - */ - highlightSection?: string | ej.DatePicker.HighlightSection; - - /** Weekend dates will be highlighted when this property is set to true. - * @Default {false} - */ - highlightWeekend?: boolean; - - /** Specifies the HTML Attributes of the DatePicker. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Change the DatePicker calendar and date format based on given culture. - * @Default {en-US} - */ - locale?: string; - - /** Specifies the maximum date in the calendar that the user can select. - * @Default {new Date(2099, 11, 31)} - */ - maxDate?: string | Date; - - /** Specifies the minimum date in the calendar that the user can select. - * @Default {new Date(1900, 00, 01)} - */ - minDate?: string | Date; - - /** Allows to toggles the read only state of the DatePicker. When the widget is readOnly, it doesn't allow your input. - * @Default {false} - */ - readOnly?: boolean; - - /** It allow to show/hide the disabled date ranges - * @Default {true} - */ - showDisabledRange?: boolean; - - /** It allows to display footer in DatePicker calendar. - * @Default {true} - */ - showFooter?: boolean; - - /** It allows to display/hides the other months days from the current month calendar in a DatePicker. - * @Default {true} - */ - showOtherMonths?: boolean; - - /** Shows/hides the date icon button at right side of textbox, which is used to open or close the DatePicker calendar popup. - * @Default {true} - */ - showPopupButton?: boolean; - - /** DatePicker input is displayed with rounded corner when this property is set to true. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Used to show the tooltip when hovering on the days in the DatePicker calendar. - * @Default {true} - */ - showTooltip?: boolean; - - /** Specifies the special dates in DatePicker. - * @Default {null} - */ - specialDates?: any; - - /** Specifies the start day of the week in DatePicker calendar. - * @Default {0} - */ - startDay?: number; - - /** Specifies the start level view in DatePicker calendar. See below available Levels - * @Default {ej.DatePicker.Level.Month} - */ - startLevel?: string | ej.DatePicker.Level; - - /** Specifies the number of months to be navigate for one click of next and previous button in a DatePicker Calendar. - * @Default {1} - */ - stepMonths?: number; - - /** Provides option to customize the tooltip format. - * @Default {ddd MMM dd yyyy} - */ - tooltipFormat?: string; - - /** Sets the jQuery validation support to DatePicker Date value. See validation - * @Default {null} - */ - validationMessage?: any; - - /** Sets the jQuery validation custom rules to the DatePicker. see validation - * @Default {null} - */ - validationRules?: any; - - /** sets or returns the current value of DatePicker - * @Default {null} - */ - value?: string | Date; - - /** Specifies the water mark text to be displayed in input text. - * @Default {Select date} - */ - watermarkText?: string; - - /** Specifies the width of the DatePicker input text. - * @Default {160px} - */ - width?: string; - - /** Fires before closing the DatePicker popup. */ - beforeClose?(e: BeforeCloseEventArgs): void; - - /** Fires when each date is created in the DatePicker popup calendar. */ - beforeDateCreate?(e: BeforeDateCreateEventArgs): void; - - /** Fires before opening the DatePicker popup. */ - beforeOpen?(e: BeforeOpenEventArgs): void; - - /** Fires when the DatePicker input value is changed. */ - change?(e: ChangeEventArgs): void; - - /** Fires when DatePicker popup is closed. */ - close?(e: CloseEventArgs): void; - - /** Fires when the DatePicker is created successfully. */ - create?(e: CreateEventArgs): void; - - /** Fires when the DatePicker is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when DatePicker input gets focus. */ - focusIn?(e: FocusInEventArgs): void; - - /** Fires when DatePicker input loses the focus. */ - focusOut?(e: FocusOutEventArgs): void; - - /** Fires when calender view navigates to month/year/decade/century. */ - navigate?(e: NavigateEventArgs): void; - - /** Fires when DatePicker popup is opened. */ - open?(e: OpenEventArgs): void; - - /** Fires when a date is selected from the DatePicker popup. */ - select?(e: SelectEventArgs): void; - } - - export interface BeforeCloseEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the event parameters from DatePicker. - */ - events?: any; - - /** returns the DatePicker popup. - */ - element?: HTMLElement; - } - - export interface BeforeDateCreateEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the currently created date object. - */ - date?: any; - - /** returns the current DOM object of the date from the Calendar. - */ - element?: HTMLElement; - - /** returns the currently created date as string type. - */ - value?: string; - } - - export interface BeforeOpenEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the event parameters from DatePicker. - */ - events?: any; - - /** returns the DatePicker popup. - */ - element?: HTMLElement; - } - - export interface ChangeEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the DatePicker input value. - */ - value?: string; - - /** returns the previously selected value. - */ - prevDate?: string; - } - - export interface CloseEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the current date object. - */ - date?: any; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the current date value. - */ - value?: string; - - /** returns the previously selected value. - */ - prevDate?: string; - } - - export interface CreateEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface FocusInEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the currently selected date value. - */ - value?: string; - } - - export interface FocusOutEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the currently selected date value. - */ - value?: string; - - /** returns the previously selected date value. - */ - prevDate?: string; - } - - export interface NavigateEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the current date object. - */ - date?: any; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the previous view state of calendar. - */ - navigateFrom?: string; - - /** returns the current view state of calendar. - */ - navigateTo?: string; - - /** returns the name of the event - */ - type?: string; - - /** returns the current date value. - */ - value?: string; - } - - export interface OpenEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the current date object. - */ - date?: any; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the current date value. - */ - value?: string; - - /** returns the previously selected value. - */ - prevDate?: string; - } - - export interface SelectEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the selected date object. - */ - date?: any; - - /** returns the DatePicker model. - */ - model?: ej.DatePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the current date value. - */ - value?: string; - - /** returns the previously selected value. - */ - prevDate?: string; - - /** returns whether the currently selected date is special date or not. - */ - isSpecialDay?: string; - } - - export interface Fields { - - /** Specifies the specials dates - */ - date?: string; - - /** Specifies the icon class to special dates. - */ - iconClass?: string; - - /** Specifies the tooltip to special dates. - */ - tooltip?: string; - - /** Specifies the CSS class to customize the date. - */ - cssClass?: string; - } - - enum Header { - - ///Removes day header in DatePicker - None, - - ///sets the short format of day name (like Sun) in header in DatePicker - Short, - - ///sets the Min format of day name (like su) in header format DatePicker - Min - } - - - enum Level { - - ///allow navigation upto year level in DatePicker - Year, - - ///allow navigation upto decade level in DatePicker - Decade, - - ///allow navigation upto Century level in DatePicker - Century - } - - - enum HighlightSection { - - ///Highlight the week of the currently selected date in DatePicker popup calendar - Week, - - ///Highlight the workdays in a currently selected date's week in DatePicker popup calendar - WorkDays, - - ///Nothing will be highlighted, remove highlights from DatePicker popup calendar if already exists - None - } - - } - - class DateTimePicker extends ej.Widget { - static fn: DateTimePicker; - constructor(element: JQuery | Element, options?: DateTimePicker.Model); - static Locale: any; - model: DateTimePicker.Model; - defaults: DateTimePicker.Model; - - /** Disables the DateTimePicker control. - * @returns {void} - */ - disable(): void; - - /** Enables the DateTimePicker control. - * @returns {void} - */ - enable(): void; - - /** Returns the current datetime value in the DateTimePicker. - * @returns {string} - */ - getValue(): string; - - /** Hides or closes the DateTimePicker popup. - * @returns {void} - */ - hide(): void; - - /** Updates the current system date value and time value to the DateTimePicker. - * @returns {void} - */ - setCurrentDateTime(): void; - - /** Shows or opens the DateTimePicker popup. - * @returns {void} - */ - show(): void; - } - export namespace DateTimePicker { - - export interface Model { - - /** Used to allow or restrict the editing in DateTimePicker input field directly. By setting false to this API, You can only pick the date and time values from DateTimePicker popup. - * @Default {true} - */ - allowEdit?: boolean; - - /** Displays the custom text for the buttons inside the DateTimePicker popup. when the culture value changed, we can change the buttons text based on the culture. - * @Default {{ today: Today, timeNow: Time Now, done: Done, timeTitle: Time }} - */ - buttonText?: ButtonText; - - /** Set the root class for DateTimePicker theme. This cssClass API helps to use custom skinning option for DateTimePicker control. - */ - cssClass?: string; - - /** Defines the datetime format displayed in the DateTimePicker. The value should be a combination of date format and time format. - * @Default {M/d/yyyy h:mm tt} - */ - dateTimeFormat?: string; - - /** Specifies the header format of the datepicker inside the DateTimePicker popup. See DatePicker.Header - * @Default {ej.DatePicker.Header.Short} - */ - dayHeaderFormat?: ej.DatePicker.Header | string; - - /** Specifies the navigation depth level in DatePicker calendar inside DateTimePicker popup. This option is not applied - * when start level view option is lower than depth level view. See ej.DatePicker.Level - */ - depthLevel?: ej.DatePicker.Level | string; - - /** Enable or disable the animation effect in DateTimePicker. - * @Default {true} - */ - enableAnimation?: boolean; - - /** When this property is set to false, it disables the DateTimePicker control. - * @Default {false} - */ - enabled?: boolean; - - /** Enables or disables the state maintenance of DateTimePicker. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Sets the DateTimePicker direction as right to left alignment. - * @Default {false} - */ - enableRTL?: boolean; - - /** When enableStrictMode true it allows the value outside of the range also but it highlights the textbox with error class, otherwise it internally changed to the correct value. - * @Default {false} - */ - enableStrictMode?: boolean; - - /** Specifies the header format to be displayed in the DatePicker calendar inside the DateTimePicker popup. - * @Default {MMMM yyyy} - */ - headerFormat?: string; - - /** Defines the height of the DateTimePicker textbox. - * @Default {30} - */ - height?: string | number; - - /** Specifies the HTML Attributes of the ejDateTimePicker - * @Default {{}} - */ - htmlAttributes?: any; - - /** Sets the time interval between the two adjacent time values in the time popup. - * @Default {30} - */ - interval?: number; - - /** Defines the localization culture for DateTimePicker. - * @Default {en-US} - */ - locale?: string; - - /** Sets the maximum value to the DateTimePicker. Beyond the maximum value an error class is added to the wrapper element when we set true to enableStrictMode. - * @Default {new Date(12/31/2099 11:59:59 PM)} - */ - maxDateTime?: string | Date; - - /** Sets the minimum value to the DateTimePicker. Behind the minimum value an error class is added to the wrapper element. - * @Default {new Date(1/1/1900 12:00:00 AM)} - */ - minDateTime?: string | Date; - - /** Specifies the popup position of DateTimePicker.See below to know available popup positions - * @Default {ej.DateTimePicker.Bottom} - */ - popupPosition?: string | ej.popupPosition; - - /** Indicates that the DateTimePicker value can only be read and can’t change. - * @Default {false} - */ - readOnly?: boolean; - - /** It allows showing days in other months of DatePicker calendar inside the DateTimePicker popup. - * @Default {true} - */ - showOtherMonths?: boolean; - - /** Shows or hides the arrow button from the DateTimePicker textbox. When the button disabled, the DateTimePicker popup opens while focus in the textbox and hides while focus out from the textbox. - * @Default {true} - */ - showPopupButton?: boolean; - - /** Changes the sharped edges into rounded corner for the DateTimePicker textbox and popup. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specifies the start day of the week in datepicker inside the DateTimePicker popup. - * @Default {1} - */ - startDay?: number; - - /** Specifies the start level view in datepicker inside the DateTimePicker popup. See DatePicker.Level - * @Default {ej.DatePicker.Level.Month or month} - */ - startLevel?: ej.DatePicker.Level | string; - - /** Specifies the number of months to navigate at one click of next and previous button in datepicker inside the DateTimePicker popup. - * @Default {1} - */ - stepMonths?: number; - - /** Defines the time format displayed in the time dropdown inside the DateTimePicker popup. - * @Default {h:mm tt} - */ - timeDisplayFormat?: string; - - /** We can drill down up to time interval on selected date with meridian details. - * @Default {{ enabled: false, interval: 5, showMeridian: false, autoClose: true }} - */ - timeDrillDown?: TimeDrillDown; - - /** Defines the width of the time dropdown inside the DateTimePicker popup. - * @Default {100} - */ - timePopupWidth?: string | number; - - /** Set the jQuery validation error message in DateTimePicker. - * @Default {null} - */ - validationMessage?: any; - - /** Set the jQuery validation rules in DateTimePicker. - * @Default {null} - */ - validationRules?: any; - - /** Sets the DateTime value to the control. - */ - value?: string | Date; - - /** Specifies the water mark text to be displayed in input text. - * @Default {Select date and time} - */ - watermarkText?: string; - - /** Defines the width of the DateTimePicker textbox. - * @Default {143} - */ - width?: string | number; - - /** Fires before the datetime popup closed in the DateTimePicker. */ - beforeClose?(e: BeforeCloseEventArgs): void; - - /** Fires before the datetime popup open in the DateTimePicker. */ - beforeOpen?(e: BeforeOpenEventArgs): void; - - /** Fires when the datetime value changed in the DateTimePicker textbox. */ - change?(e: ChangeEventArgs): void; - - /** Fires when DateTimePicker popup closes. */ - close?(e: CloseEventArgs): void; - - /** Fires after DateTimePicker control is created. */ - create?(e: CreateEventArgs): void; - - /** Fires when the DateTimePicker is destroyed successfully */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when the focus-in happens in the DateTimePicker textbox. */ - focusIn?(e: FocusInEventArgs): void; - - /** Fires when the focus-out happens in the DateTimePicker textbox. */ - focusOut?(e: FocusOutEventArgs): void; - - /** Fires when DateTimePicker popup opens. */ - open?(e: OpenEventArgs): void; - } - - export interface BeforeCloseEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DateTimePicker model. - */ - model?: ej.DateTimePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the event parameters from DateTimePicker. - */ - events?: any; - - /** returns the DateTimePicker popup. - */ - element?: HTMLElement; - } - - export interface BeforeOpenEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DateTimePicker model. - */ - model?: ej.DateTimePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the event parameters from DateTimePicker. - */ - events?: any; - - /** returns the DateTimePicker popup. - */ - element?: HTMLElement; - } - - export interface ChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TimePicker model - */ - model?: ej.DateTimePicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the current value is valid or not - */ - isValidState?: boolean; - - /** returns the modified datetime value - */ - value?: string; - - /** returns the previously selected date time value - */ - prevDateTime?: string; - - /** returns true if change event triggered by interaction, otherwise returns false - */ - isInteraction?: boolean; - } - - export interface CloseEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TimePicker model - */ - model?: ej.DateTimePicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the modified datetime value - */ - value?: string; - - /** returns the previously selected date time value - */ - prevDateTime?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DateTimePicker model - */ - model?: ej.DateTimePicker.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DateTimePicker model - */ - model?: ej.DateTimePicker.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface FocusInEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TimePicker model - */ - model?: ej.DateTimePicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the datetime value, which is in text box - */ - value?: string; - } - - export interface FocusOutEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TimePicker model - */ - model?: ej.DateTimePicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the datetime value, which is in text box - */ - value?: string; - } - - export interface OpenEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TimePicker model - */ - model?: ej.DateTimePicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the modified datetime value - */ - value?: string; - - /** returns the previously selected date time value - */ - prevDateTime?: string; - } - - export interface ButtonText { - - /** Sets the text for the Done button inside the datetime popup. - */ - done?: string; - - /** Sets the text for the Now button inside the datetime popup. - */ - timeNow?: string; - - /** Sets the header text for the Time dropdown. - */ - timeTitle?: string; - - /** Sets the text for the Today button inside the datetime popup. - */ - today?: string; - } - - export interface TimeDrillDown { - - /** This is the field to show/hide the timeDrillDown in DateTimePicker. + /* tslint:disable:no-empty-interface */ + const dataUtil: dataUtil; + function isMobile(): boolean; + function isIOS(): boolean; + function isAndroid(): boolean; + function isFlat(): boolean; + function isWindows(): boolean; + function isCssCalc(): boolean; + function getCurrentPage(): JQuery; + function isLowerResolution(): boolean; + function browserInfo(): browserInfoOptions; + function isTouchDevice(): boolean; + function addPrefix(style: string): string; + function animationEndEvent(): string; + function blockDefaultActions(e: any): void; + function buildTag(tag: string, innerHtml?: string, styles?: any, attrs?: any): JQuery; + function cancelEvent(): string; + function copyObject(): string; + function createObject(nameSpace: string, value: any, initIn: any): JQuery; + function createObject(element: any, eventEmitter: any, model: any): any; + function setCulture(culture: string): void; + function getObject(element: string, model: any): T; + function getObject(nameSpace: string, fromdata?: any): any; + function defineClass(className: string, constructor: any, proto: any, replace: boolean): any; + function destroyWidgets(element: any): void; + function endEvent(): string; + function event(type: string, data: any, eventProp: any): any; + function getAndroidVersion(): any; + function getAttrVal(ele: any, val: string, option: any): any; + function getBooleanVal(ele: any, val: string, option: any): any; + function getClearString(): string; + function getDimension(element: any, method: string): any; + function getFontString(fontObj: any): string; + function getFontStyle(style: string): string; + function getMaxZindex(): number; + function getNameSpace(className: string): string; + function getOffset(ele: string): any; + function getRenderMode(): string; + function getScrollableParents(element: any): void; + function getTheme(): string; + function getZindexPartial(element: any, popupEle: string): number; + function hasRenderMode(element: string): void; + function hasStyle(prop: string): boolean; + function hasTheme(element: string): string; + function hexFromRGB(color: string): string; + function ieClearRemover(element: string): void; + function isAndroidWebView(): string; + function isDevice(): boolean; + function isIOS7(): boolean; + function isIOSWebView(): boolean; + function isLowerAndroid(): boolean; + function isNullOrUndefined(value: any): boolean; + function isPlainObject(): JQuery; + function isPortrait(): any; + function isTablet(): boolean; + function isWindowsWebView(): string; + function listenEvents(selectors: any, eventTypes: any, handlers: any, remove?: any, pluginObj?: any, disableMouse?: boolean): void; + function listenTouchEvent(selectors: any, eventTypes: any, handlers: any, remove?: any, pluginObj?: any, disableMouse?: boolean): void; + function logBase(val: string, base: string): number; + function measureText(text: string, maxwidth: number, font: string): string; + function moveEvent(): string; + function print(element: string, printWindow: any): void; + function proxy(fn: any, context?: string, arg?: string): any; + function round(value: string, div: string, up: string): any; + function sendAjaxRequest(ajaxOptions: any): void; + function setCaretToPos(nput: string, pos1: string, pos2: string): void; + function setRenderMode(element: string): void; + function setTheme(): any; + function startEvent(): string; + function tapEvent(): string; + function tapHoldEvent(): string; + function throwError(): any; + function transitionEndEvent(): any; + function userAgent(): boolean; + function widget(pluginName: string, className: string, proto: any): any; + function avg(json: any, filedName: string): any; + function getGuid(prefix: string): number; + function group(jsonArray: any, field: string, agg: string, level: number, groupDs: string): any; + function isJson(jsonData: string): string; + function max(jsonArray: any, fieldName?: string, comparer?: string): any; + function min(jsonArray: any, fieldName: string, comparer: string): any; + function merge(first: string, second: string): any; + function mergeshort(jsonArray: any, fieldName: string, comparer: string): any; + function parseJson(jsonText: string): string; + function parseTable(table: number, headerOption: string, headerRowIndex: string): any; + function select(jsonArray: any, fields: string): any; + function setTransition(): boolean; + function sum(json: string, fieldName: string): string; + function swap(array: any, x: string, y: string): any; + const cssUA: string; + const serverTimezoneOffset: number; + const transform: string; + const transformOrigin: string; + const transformStyle: string; + const transition: string; + const transitionDelay: string; + const transitionDuration: string; + const transitionProperty: string; + const transitionTimingFunction: string; + const template: any; + const util: { + valueFunction(val: string): any; + }; + export namespace device { + function isAndroid(): boolean; + function isIOS(): boolean; + function isFlat(): boolean; + function isIOS7(): boolean; + function isWindows(): boolean; + } + export namespace widget { + const autoInit: boolean; + const registeredInstances: any[]; + const registeredWidgets: any[]; + function register(pluginName: string, className: string, prototype: any): void; + function destroyAll(elements: Element): void; + function init(element: Element): void; + function registerInstance(element: Element, pluginName: string, className: string, prototype: any): void; + } + + interface browserInfoOptions { + name: string; + version: string; + culture: any; + isMSPointerEnabled: boolean; + } + class WidgetBase { + destroy(): void; + element: JQuery; + setModel(options: any, forceSet?: boolean): any; + option(prop?: any, value?: any, forceSet?: boolean): any; + _trigger(eventName?: string, eventProp?: any): any; + _on(element: JQuery, eventType?: string, handler?: (eventObject: JQueryEventObject) => any): any; + _on(element: JQuery, eventType?: string, selector?: string, handler?: (eventObject: JQueryEventObject) => any): any; + _off(element: JQuery, eventName: string, handler?: (eventObject: JQueryEventObject) => any): any; + _off(element: JQuery, eventType?: string, selector?: string, handler?: (eventObject: JQueryEventObject) => any): any; + persistState(): void; + restoreState(silent: boolean): void; + } + + class Widget extends WidgetBase { + constructor(pluginName: string, className: string, proto: any); + static fn: Widget; + static extend(widget: Widget): any; + register(pluginName: string, className: string, prototype: any): void; + destroyAll(elements: Element): void; + model: any; + } + + + interface BaseEvent { + cancel: boolean; + type: string; + } + class DataManager { + constructor(dataSource?: any, query?: ej.Query, adaptor?: any); + setDefaultQuery(query: ej.Query): void; + executeQuery(query?: ej.Query, done?: any, fail?: any, always?: any): JQueryPromise; + executeLocal(query?: ej.Query): ej.DataManager; + saveChanges(changes?: Changes, key?: string, tableName?: string): JQueryDeferred; + insert(data: any, tableName?: string): JQueryPromise; + remove(keyField: string, value: any, tableName?: string): any; + update(keyField: string, value: any, tableName?: string): any; + } + + class Query { + constructor(); + static fn: Query; + static extend(prototype: any): Query; + key(field: string): ej.Query; + using(dataManager: ej.DataManager): ej.Query; + execute(dataManager: ej.DataManager, done: any, fail?: string, always?: string): any; + executeLocal(dataManager: ej.DataManager): ej.DataManager; + clone(): ej.Query; + from(tableName: any): ej.Query; + addParams(key: string, value: string): ej.Query; + expand(tables: any): ej.Query; + where(fieldName: string, operator: ej.FilterOperators, value: any, ignoreCase?: boolean): ej.Query; + where(predicate: ej.Predicate): ej.Query; + search(searchKey: any, fieldNames?: any, operator?: string, ignoreCase?: boolean): ej.Query; + sortBy(fieldName: string, comparer?: ej.SortOrder, isFromGroup?: boolean): ej.Query; + sortByDesc(fieldName: string): ej.Query; + group(fieldName: string): ej.Query; + page(pageIndex: number, pageSize: number): ej.Query; + take(nos: number): ej.Query; + skip(nos: number): ej.Query; + select(fieldNames: any): ej.Query; + hierarchy(query: ej.Query, selectorFn: any): ej.Query; + foreignKey(key: string): ej.Query; + requiresCount(): ej.Query; + range(start: number, end: number): ej.Query; + } + + class Adaptor { + constructor(ds: any); + pvt: any; + type: ej.Adaptor; + options: AdaptorOptions; + extend(overrides: any): ej.Adaptor; + processQuery(dm: ej.DataManager, query: ej.Query): any; + processResponse(data: any, ds: any, query: ej.Query, xhr: JQueryXHR, request?: any, changes?: Changes): any; + convertToQueryString(req: any, query: ej.Query, dm: ej.DataManager): JQueryParam; + } + + interface AdaptorOptions { + from?: string; + requestType?: string; + sortBy?: string; + select?: string; + skip?: string; + group?: string; + take?: string; + search?: string; + count?: string; + where?: string; + aggregates?: string; + } + + class UrlAdaptor extends ej.Adaptor { + constructor(); + processQuery(dm: ej.DataManager, query: ej.Query, hierarchyFilters?: any): { + type: string; url: string; ejPvtData: any; contentType?: string; data?: any; + }; + convertToQueryString(req: any, query: ej.Query, dm: ej.DataManager): JQueryParam; + processResponse(data: any, ds: any, query: ej.Query, xhr: JQueryXHR, request?: any, changes?: Changes): any; + onGroup(e: any): void; + onAggregates(e: any): void; + batchRequest(dm: ej.DataManager, changes: Changes, e: any): void; + beforeSend(dm: ej.DataManager, request: any, settings?: any): void; + insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any }; + remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data?: any }; + update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data: any }; + getFiltersFrom(data: any, query: ej.Query): ej.Predicate; + } + class WebMethodAdaptor extends ej.UrlAdaptor { + constructor(); + processQuery(dm: ej.DataManager, query: ej.Query, hierarchyFilters?: any): { + type: string; url: string; ejPvtData: any; contentType?: string; data?: any; + }; + } + class CacheAdaptor extends ej.UrlAdaptor { + constructor(); + init(adaptor: any, timeStamp: number, pageSize: number): void; + generateKey(url: string, query: ej.Query): string; + processQuery(dm: ej.DataManager, query: ej.Query, hierarchyFilters?: any): any; + processResponse(data: any, ds: any, query: ej.Query, xhr: JQueryXHR, request?: any, changes?: Changes): any; + insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any }; + remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data?: any }; + update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data: any }; + batchRequest(dm: ej.DataManager, changes: Changes, e: any): { url: string; type: string; data: any; contentType: string }; + } + class ODataAdaptor extends ej.UrlAdaptor { + constructor(); + options: UrlAdaptorOptions; + onEachWhere(filter: any, requiresCast: boolean): any; + onPredicate(pred: ej.Predicate, query: ej.Query, requiresCast: boolean): string; + onComplexPredicate(pred: ej.Predicate, requiresCast: boolean): string; + onWhere(filters: string[]): string; + onEachSearch(e: any): void; + onSearch(e: any): string; + onEachSort(e: any): string; + onSortBy(e: any): string; + onGroup(e: any): string; + onSelect(e: any): string; + onAggregates(e: any): string; + onCount(e: any): string; + beforeSend(dm: ej.DataManager, request: any, settings?: any): void; + processResponse(data: any, ds: any, query: ej.Query, xhr: any, request: any, changes: Changes): { + result: any; count: number + }; + convertToQueryString(req: any, query: ej.Query, dm: ej.DataManager): JQueryParam; + insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any; }; + remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): { url: string; type: string; }; + update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { url: string; type: string; data: any; accept: string; }; + batchRequest(dm: ej.DataManager, changes: Changes, e: any): { url: string; type: string; data: any; contentType: string; }; + generateDeleteRequest(arr: any[], e: any): string; + generateInsertRequest(arr: any[], e: any): string; + generateUpdateRequest(arr: any[], e: any): string; + } + interface UrlAdaptorOptions { + requestType?: string; + accept?: string; + multipartAccept?: string; + sortBy?: string; + select?: string; + skip?: string; + take?: string; + count?: string; + where?: string; + expand?: string; + batch?: string; + changeSet?: string; + batchPre?: string; + contentId?: string; + batchContent?: string; + changeSetContent?: string; + batchChangeSetContentType?: string; + } + + class WebApiAdaptor extends ej.ODataAdaptor { + constructor(); + insert(dm: ej.DataManager, data: any, tableName?: string): { url: string; type: string; data: any; }; + remove(dm: ej.DataManager, value: any, keyField?: string, tableName?: string): { url: string; type: string; data: any; }; + update(dm: ej.DataManager, value: any, keyField?: string, tableName?: string): { url: string; type: string; data: any; accept: string; }; + processResponse(data: any, ds: any, query: ej.Query, xhr: any, request: any, changes: Changes): { + result: any; count: number + }; + } + + class ODataV4Adaptor extends ej.ODataAdaptor { + constructor(); + options: ODataAdaptorOptions; + onCount(e: any): string; + onEachSearch(e: any): void; + onSearch(e: any): string; + beforeSend(dm: ej.DataManager, request: any, settings?: any): void; + processQuery(ds: any, query: ej.Query): { + type: string; url: string; ejPvtData: any; contentType?: string; data?: any; + }; + processResponse(data: any, ds: any, query: ej.Query, xhr: any, request: any, changes: Changes): { + result: any; count: number + }; + } + interface ODataAdaptorOptions { + requestType?: string; + accept?: string; + multipartAccept?: string; + sortBy?: string; + select?: string; + skip?: string; + take?: string; + count?: string; + search?: string; + where?: string; + expand?: string; + batch?: string; + changeSet?: string; + batchPre?: string; + contentId?: string; + batchContent?: string; + changeSetContent?: string; + batchChangeSetContentType?: string; + } + + class JsonAdaptor extends ej.Adaptor { + constructor(); + processQuery(ds: any, query: ej.Query): string; + batchRequest(dm: ej.DataManager, changes: Changes, e: any): Changes; + onWhere(ds: any, e: any): any; + onAggregates(ds: any, e: any): any; + onSearch(ds: any, e: any): any; + onSortBy(ds: any, e: any, query: ej.Query): any; + onGroup(ds: any, e: any, query: ej.Query): any; + onPage(ds: any, e: any, query: ej.Query): any; + onRange(ds: any, e: any): any; + onTake(ds: any, e: any): any; + onSkip(ds: any, e: any): any; + onSelect(ds: any, e: any): any; + insert(dm: ej.DataManager, data: any, tableName?: string): any; + remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): any; + update(dm: ej.DataManager, keyField: string, value: any, tableName: string): any; + } + class ForeignKeyAdaptor extends ej.JsonAdaptor { + constructor(); + processQuery(ds: any, query: ej.Query): any; + insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any }; + update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { url: string; type: string; data: any }; + } + class remoteSaveAdaptor extends ej.UrlAdaptor { + constructor(); + batchRequest(dm: ej.DataManager, changes: Changes, e: any): void; + beforeSend(dm: ej.DataManager, request: any, settings?: any): void; + insert(dm: ej.DataManager, data: any, tableName: string): { url: string; data: any }; + remove(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data?: any }; + update(dm: ej.DataManager, keyField: string, value: any, tableName: string): { type: string; url: string; data: any }; + } + class TableModel { + constructor(name: string, jsonArray: any[], dataManager: ej.DataManager, modelComputed: any); + on(eventName: string, handler: any): void; + off(eventName: string, handler: any): void; + setDataManager(dataManager: DataManager): void; + saveChanges(): void; + rejectChanges(): void; + insert(json: any): void; + update(value: any): void; + remove(key: string): void; + isDirty(): boolean; + getChanges(): Changes; + toArray(): any[]; + setDirty(dirty: any, model: any): void; + get(index: number): void; + length(): number; + bindTo(element: any): void; + } + class Model { + constructor(json: any, table: string, name: string); + formElements: string[]; + computes(value: any): void; + on(eventName: string, handler: any): void; + off(eventName: string, handler: any): void; + set(field: string, value: any): void; + get(field: string): any; + revert(suspendEvent: any): void; + save(dm: ej.DataManager, key: string): void; + markCommit(): void; + markDelete(): void; + changeState(state: boolean, args: any): void; + properties(): any; + bindTo(element: any): void; + unbind(element: any): void; + } + interface Changes { + changed?: any[]; + added?: any[]; + deleted?: any[]; + } + class Predicate { + constructor(); + constructor(field: string, operator: ej.FilterOperators, value: any, ignoreCase: boolean); + and(field: string, operator: any, value: any, ignoreCase: boolean): ej.Predicate; + or(field: string, operator: any, value: any, ignoreCase: boolean): ej.Predicate; + or(predicate: any[]): any; + validate(record: any): boolean; + toJSON(): { + isComplex: boolean; + field: string; + operator: string; + value: any; + ignoreCase: boolean; + condition: string; + predicates: any; + }; + } + interface dataUtil { + swap(array: any[], x: number, y: number): void; + mergeSort(jsonArray: any[], fieldName?: string, comparer?: any): any[]; + max(jsonArray: any[], fieldName?: string, comparer?: string): any[]; + min(jsonArray: any[], fieldName: string, comparer: string): any[]; + distinct(jsonArray: any[], fieldName?: string, requiresCompleteRecord?: any): any[]; + sum(json: any, fieldName: string): number; + avg(json: any, fieldName: string): number; + select(jsonArray: any[], fieldName: string, fields: string): any[]; + group(jsonArray: any[], field: string, /* internal */ level: number): any[]; + parseTable(table: string, headerOption: ej.headerOption, headerRowIndex: number): any; + } + interface AjaxSettings { + type?: string; + cache: boolean; + data?: any; + dataType?: string; + contentType?: any; + async?: boolean; + } + enum FilterOperators { + contains, + endsWith, + equal, + greaterThan, + greaterThanOrEqual, + lessThan, + lessThanOrEqual, + notEqual, + startsWith + } + + enum MatrixDefaults { + m11, + m12, + m21, + m22, + offsetX, + offsetY, + type + } + enum MatrixTypes { + Identity, + Scaling, + Translation, + Unknown + } + + enum Orientation { + Horizontal, + Vertical + } + + enum SliderType { + Default, + MinRange, + Range + } + + enum eventType { + click, + mouseDown, + mouseLeave, + mouseMove, + mouseUp + } + enum headerOption { + row, + tHead + } + + enum filterType { + StartsWith, + Contains, + EndsWith, + LessThan, + GreaterThan, + LessThanOrEqual, + GreaterThanOrEqual, + Equal, + NotEqual + } + enum Animation { + Fade, + None, + Slide + } + enum Type { + Overlay, + Slide + } + enum SortOrder { + Ascending, + Descending + } + class Draggable extends ej.Widget { + static fn: Draggable; + constructor(element: JQuery | Element, options?: Draggable.Model); + static Locale: any; + model: Draggable.Model; + defaults: Draggable.Model; + + /** destroy in the draggable. + * @returns {void} + */ + _destroy(): void; + } + export namespace Draggable { + + export interface Model { + + /** If clone is specified. + * @Default {false} */ - enabled?: boolean; + clone?: boolean; - /** Sets the interval time of minutes on selected date. - */ - interval?: number; - - /** Allows the user to show or hide the meridian with time in DateTimePicker. - */ - showMeridian?: boolean; - - /** After choosing the time, the popup will close automatically if we set it as true, otherwise we focus out the DateTimePicker or choose timeNow button for closing the popup. - */ - autoClose?: boolean; - } - } - enum popupPosition { - //Opens the DateTimePicker popup below to the DateTimePicker input box - Bottom, - //Opens the DateTimePicker popup above to the DateTimePicker input box - Top, - } - - class DateRangePicker extends ej.Widget { - static fn: DateRangePicker; - constructor(element: JQuery | Element, options?: DateRangePicker.Model); - static Locale: any; - model: DateRangePicker.Model; - defaults: DateRangePicker.Model; - - /** Add the preset ranges to DateRangePicker popup. - * @param {string} Display name - * @param {Array} StartDate and endDate of range. - * @returns {void} - */ - addRanges(label: string, range: any[]): void; - - /** Clears the all ranges selections in DateRangePicker popup - * @returns {void} - */ - clearRanges(): void; - - /** Disables the DateRangePicker control. - * @returns {void} - */ - disable(): void; - - /** Enable the DateRangePicker control, if it is in disabled state. - * @returns {void} - */ - enable(): void; - - /** Returns the startDate and endDate values in the selected ranges in the DateRangePicker control. - * @returns {string} - */ - getSelectedValue(): string; - - /** Close the DateRangePicker popup, if it is in opened state. - * @returns {void} - */ - popupHide(): void; - - /** Opens the DateRangePicker popup. - * @returns {void} - */ - popupShow(): void; - - /** set the preset ranges to DateRangePicker popup. - * @returns {void} - */ - setRange(): void; - } - export namespace DateRangePicker { - - export interface Model { - - /** Used to allow or restrict the editing in DateRangePicker input field directly. By setting false to this API, You can only pick the date ranges from DateRangePicker popup. - * @Default {true} - */ - allowEdit?: boolean; - - /** Sets the specified text value to the available buttons (Reset, Cancel, Apply) in the DateRangePicker popup. - * @Default {{ reset: Reset, cancel: Cancel, apply: Apply}} - */ - buttonText?: any; - - /** Sets the root CSS class for DateRangePicker theme, which is used to customize. - */ - cssClass?: string; - - /** Formats the date value of the DateRangePicker in to the specified date format. If this API is not specified, dateFormat will be set based on the current culture of DateRangePicker. - * @Default {MM/dd/yyyy} - */ - dateFormat?: string; - - /** Allows to embed the Timepicker align with the calendars in the page, two timepicker will be render, for selecting start and end date. - * @Default {false} - */ - enableTimePicker?: boolean; - - /** Enable or disable the DateRangePicker control. - * @Default {true} - */ - enabled?: boolean; - - /** Sustain the entire widget model of DateRangePicker even after form post or browser refresh - * @Default {false} - */ - enablePersistence?: boolean; - - /** Specifies the end date of the date ranges. - * @Default {null} - */ - endDate?: string | Date; - - /** Specifies the height of the DateRangePicker input. - * @Default {28px} - */ - height?: string | number; - - /** Change the DateRangePicker calendar and date format based on given culture. - * @Default {en-US} - */ - locale?: string; - - /** Used to add the preset ranges. Added ranges using this, will show in popup in right side for easy selection of different preset ranges. - * @Default {null} - */ - ranges?: any; - - /** Specifies the start date of the date ranges - * @Default {null} - */ - startDate?: string | Date; - - /** Shows/hides the date icon button at right side of textbox, which is used to open or close the DateRangePicker calendar popup. - * @Default {true} - */ - showPopupButton?: boolean; - - /** DateRangePicker input and popup is displayed with rounded corner when this property is set to true. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Formats the date value of the DateRangePicker in to the specified time format. If this API is not specified, timeFormat will be set based on the current culture of DateRangePicker. - * @Default {HH:mm tt} - */ - timeFormat?: string; - - /** Separated two date values in string format to sets the date ranges in calendars. - * @Default {null} - */ - value?: string; - - /** Specifies the water mark text to be displayed in input text. - * @Default {Select Range} - */ - watermarkText?: string; - - /** Specifies the width of the DateRangePicker input text. - * @Default {160px} - */ - width?: string | number; - - /** Fires before closing the DateRangePicker popup. */ - beforeClose?(e: BeforeCloseEventArgs): void; - - /** Fires before opening the DateRangePicker popup. */ - beforeOpen?(e: BeforeOpenEventArgs): void; - - /** Fires when the DateRangePicker values get changed. */ - onChange?(e: OnChangeEventArgs): void; - - /** Fires when DateRangePicker popup is closed. */ - close?(e: CloseEventArgs): void; - - /** Fires when the DateRangePicker is created successfully. */ - create?(e: CreateEventArgs): void; - - /** Fires when the DateRangePicker is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when DateRangePicker popup is opened. */ - open?(e: OpenEventArgs): void; - - /** Fires when a date ranges is selected from the DateRangePicker popup. */ - select?(e: SelectEventArgs): void; - } - - export interface BeforeCloseEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DateRangePicker model - */ - model?: ej.DateRangePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the event parameters from DateRangePicker. - */ - events?: any; - - /** returns the DateRangePicker popup. - */ - element?: HTMLElement; - } - - export interface BeforeOpenEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DateRangePicker model. - */ - model?: ej.DateRangePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the event parameters from DateRangePicker. - */ - events?: any; - - /** returns the DateRangePicker popup. - */ - element?: HTMLElement; - } - - export interface OnChangeEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DateRangePicker model. - */ - model?: ej.DateRangePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the DateRangePicker input value. - */ - value?: string; - - /** returns the startDate of DateRangePicker. - */ - startDate?: any; - - /** returns the endDate of the DateRangePicker popup. - */ - endDate?: any; - } - - export interface CloseEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the current date object. - */ - date?: any; - - /** returns the DateRangePicker model. - */ - model?: ej.DateRangePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the DateRangePicker popup. - */ - element?: HTMLElement; - } - - export interface CreateEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DateRangePicker model. - */ - model?: ej.DateRangePicker.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the DateRangePicker model. - */ - model?: ej.DateRangePicker.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface OpenEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the current date object. - */ - date?: any; - - /** returns the DateRangePicker model. - */ - model?: ej.DateRangePicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the DateRangePicker popup. - */ - element?: HTMLElement; - } - - export interface SelectEventArgs { - - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; - - /** returns the selected date object. - */ - startDate?: any; - - /** returns the DateRangePicker model. - */ - model?: ej.DateRangePicker.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the current date value. - */ - endDate?: any; - } - } - - class Dialog extends ej.Widget { - static fn: Dialog; - constructor(element: JQuery | Element, options?: Dialog.Model); - static Locale: any; - model: Dialog.Model; - defaults: Dialog.Model; - - /** Closes the dialog widget dynamically. - * @returns {any} - */ - close(): any; - - /** Collapses the content area when it is expanded. - * @returns {any} - */ - collapse(): any; - - /** Destroys the Dialog widget. - * @returns {void} - */ - destroy(): void; - - /** Expands the content area when it is collapsed. - * @returns {any} - */ - expand(): any; - - /** Checks whether the Dialog widget is opened or not. This methods returns Boolean value. - * @returns {boolean} - */ - isOpen(): boolean; - - /** Maximizes the Dialog widget. - * @returns {any} - */ - maximize(): any; - - /** Minimizes the Dialog widget. - * @returns {any} - */ - minimize(): any; - - /** Opens the Dialog widget. - * @returns {any} - */ - open(): any; - - /** Pins the dialog in its current position. - * @returns {any} - */ - pin(): any; - - /** Refreshes the dialog content dynamically. - * @returns {void} - */ - refresh(): void; - - /** Restores the dialog. - * @returns {any} - */ - restore(): any; - - /** Unpins the Dialog widget. - * @returns {any} - */ - unpin(): any; - - /** Sets the title for the Dialog widget. - * @param {string} The title for the dialog widget. - * @returns {any} - */ - setTitle(Title: string): any; - - /** Sets the content for the Dialog widget dynamically. - * @param {string} The content for the dialog widget. It accepts both string and HTML string. - * @returns {any} - */ - setContent(content: string): any; - - /** Sets the focus on the Dialog widget. - * @returns {any} - */ - focus(): any; - } - export namespace Dialog { - - export interface Model { - - /** Adds action buttons like close, minimize, pin, maximize in the dialog header. - */ - actionButtons?: string[]; - - /** Specifies the ajaxSettings option to load the content to the Dialog control. - * @Default {null} - */ - ajaxSettings?: AjaxSettings; - - /** Enables or disables draggable. - */ - allowDraggable?: boolean; - - /** Enables or disables keyboard interaction. - */ - allowKeyboardNavigation?: boolean; - - /** Customizes the Dialog widget animations. The Dialog widget can be animated while opening and closing the dialog. - * In order to customize animation effects, you need to set “enableAnimation” as true. It contains the following sub properties. - */ - animation?: any; - - /** To Enable or disable the scrolling for background element of the modal dialog. This will work only with modal dialog. - */ - backgroundScroll?: boolean; - - /** Closes the dialog widget on pressing the ESC key when it is set to true. - */ - closeOnEscape?: boolean; - - /** The selector for the container element. If the property is set, then dialog will append to the selected element and it is restricted to move only within the specified container element. - */ - containment?: string; - - /** The content type to load the dialog content at run time. The possible values are null, AJAX, iframe and image. When it is null (default value), - * the content inside dialog element will be displayed as content and when it is not null, the content will be loaded from the URL specified in the contentUrl property. - */ - contentType?: string; - - /** The URL to load the dialog content (such as AJAX, image, and iframe). In order to load content from URL, you need to set contentType as ‘ajax’ or ‘iframe’ or ‘image’. - */ - contentUrl?: string; - - /** The root class for the Dialog widget to customize the existing theme. - */ - cssClass?: string; - - /** Enable or disables animation when the dialog is opened or closed. - */ - enableAnimation?: boolean; - - /** Enables or disables the Dialog widget. - */ - enabled?: boolean; - - /** Enable or disables modal dialog. The modal dialog acts like a child window that is displayed on top of the main window/screen and disables the main window interaction until it is closed. - */ - enableModal?: boolean; - - /** Allows the current model values to be saved in local storage or browser cookies for state maintenance when it is set to true. - */ - enablePersistence?: boolean; - - /** Allows the dialog to be resized. The dialog cannot be resized less than the minimum height, width values and greater than the maximum height and width. - */ - enableResize?: boolean; - - /** Displays dialog content from right to left when set to true. - */ - enableRTL?: boolean; - - /** The CSS class name to display the favicon in the dialog header. In order to display favicon, you need to set showHeader as true since the favicon will be displayed in the dialog header. - */ - faviconCSS?: string; - - /** Sets the height for the dialog widget. It accepts both string and integer values. For example, it can accepts values like “auto”, “100%”, “100px” as string type - * and “100”, “500” as integer type. - */ - height?: string | number; - - /** Specifies the HTML Attributes of the Dialog. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Enable or disables responsive behavior. - */ - isResponsive?: boolean; - - /** Default Value:{:.param}“en-US” - */ - locale?: number; - - /** Sets the maximum height for the dialog widget. - */ - maxHeight?: number; - - /** Sets the maximum width for the dialog widget. - */ - maxWidth?: number; - - /** Sets the minimum height for the dialog widget. - */ - minHeight?: number; - - /** Sets the minimum width for the dialog widget. - */ - minWidth?: number; - - /** Displays the Dialog widget at the given X and Y position. - */ - position?: any; - - /** Shows or hides the dialog header. - */ - showHeader?: boolean; - - /** The Dialog widget can be opened by default i.e. on initialization, when it is set to true. - */ - showOnInit?: boolean; - - /** Enables or disables the rounder corner. - */ - showRoundedCorner?: boolean; - - /** The selector for the container element. If this property is set, the dialog will be displayed (positioned) based on its container. - */ - target?: string; - - /** The title text to be displayed in the dialog header. In order to set title, you need to set showHeader as true since the title will be displayed in the dialog header. - */ - title?: string; - - /** Add or configure the tooltip text for actionButtons in the dialog header. - */ - tooltip?: any; - - /** Sets the height for the dialog widget. It accepts both string and integer values. For example, it can accepts values like “auto”, “100%”, - * “100px” as string type and “100”, “500” as integer type. - */ - width?: string | number; - - /** Sets the z-index value for the Dialog widget. - */ - zIndex?: number; - - /** Sets the Footer for the Dialog widget. - */ - showFooter?: boolean; - - /** Sets the FooterTemplate for the Dialog widget. - */ - footerTemplateId?: string; - - /** This event is triggered before the dialog widgets gets open. */ - beforeOpen?(e: BeforeOpenEventArgs): void; - - /** This event is triggered whenever the AJAX request fails to retrieve the dialog content. */ - ajaxError?(e: AjaxErrorEventArgs): void; - - /** This event is triggered whenever the AJAX request to retrieve the dialog content, gets succeed. */ - ajaxSuccess?(e: AjaxSuccessEventArgs): void; - - /** This event is triggered before the dialog widgets get closed. */ - beforeClose?(e: BeforeCloseEventArgs): void; - - /** This event is triggered after the dialog widget is closed. */ - close?(e: CloseEventArgs): void; - - /** Triggered after the dialog content is loaded in DOM. */ - contentLoad?(e: ContentLoadEventArgs): void; - - /** Triggered after the dialog is created successfully */ - create?(e: CreateEventArgs): void; - - /** Triggered after the dialog widget is destroyed successfully */ - destroy?(e: DestroyEventArgs): void; - - /** Triggered while the dialog is dragged. */ - drag?(e: DragEventArgs): void; - - /** Triggered when the user starts dragging the dialog. */ - dragStart?(e: DragStartEventArgs): void; - - /** Triggered when the user stops dragging the dialog. */ - dragStop?(e: DragStopEventArgs): void; - - /** Triggered after the dialog is opened. */ - open?(e: OpenEventArgs): void; - - /** Triggered while the dialog is resized. */ - resize?(e: ResizeEventArgs): void; - - /** Triggered when the user starts resizing the dialog. */ - resizeStart?(e: ResizeStartEventArgs): void; - - /** Triggered when the user stops resizing the dialog. */ - resizeStop?(e: ResizeStopEventArgs): void; - - /** Triggered when the dialog content is expanded. */ - expand?(e: ExpandEventArgs): void; - - /** Triggered when the dialog content is collapsed. */ - collapse?(e: CollapseEventArgs): void; - - /** Triggered when the custom action button clicked. */ - actionButtonClick?(e: ActionButtonClickEventArgs): void; - } - - export interface BeforeOpenEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event - */ - type?: string; - } - - export interface AjaxErrorEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - - /** URL of the content. - */ - URL?: string; - - /** Error page content. - */ - responseText?: string; - - /** Error code. - */ - status?: number; - - /** The corresponding error description. - */ - statusText?: string; - } - - export interface AjaxSuccessEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - - /** URL of the content. - */ - URL?: string; - - /** Response content. - */ - data?: string; - } - - export interface BeforeCloseEventArgs { - - /** Current event object. - */ - event?: any; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface CloseEventArgs { - - /** Current event object. - */ - event?: any; - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event - */ - type?: string; - } - - export interface ContentLoadEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - - /** URL of the content. - */ - URL?: string; - - /** Content type - */ - contentType?: any; - } - - export interface CreateEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface DragEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - - /** Current event object. - */ - event?: any; - } - - export interface DragStartEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - - /** Current event object. - */ - event?: any; - } - - export interface DragStopEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - - /** Current event object. - */ - event?: any; - } - - export interface OpenEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface ResizeEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - - /** Current event object. - */ - event?: any; - } - - export interface ResizeStartEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event - */ - type?: string; - - /** Current event object. - */ - event?: any; - } - - export interface ResizeStopEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event - */ - type?: string; - - /** Current event object. - */ - event?: any; - } - - export interface ExpandEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface CollapseEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event. - */ - type?: string; - } - - export interface ActionButtonClickEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Name of the event target attribute. - */ - buttonID?: string; - - /** Name of the event. - */ - type?: string; - - /** Instance of the dialog model object. - */ - model?: ej.Dialog.Model; - - /** Name of the event current target title. - */ - currentTarget?: string; - } - - export interface AjaxSettings { - - /** It specifies, whether to enable or disable asynchronous request. - */ - async?: boolean; - - /** It specifies the page will be cached in the web browser. - */ - cache?: boolean; - - /** It specifies the type of data is send in the query string. - */ - contentType?: string; - - /** It specifies the data as an object, will be passed in the query string. - */ - data?: any; - - /** It specifies the type of data that you're expecting back from the response. - */ - dataType?: string; - - /** It specifies the HTTP request type. - */ - type?: string; - } - } - - class DropDownList extends ej.Widget { - static fn: DropDownList; - constructor(element: JQuery | Element, options?: DropDownList.Model); - static Locale: any; - model: DropDownList.Model; - defaults: DropDownList.Model; - - /** Adding a single item or an array of items into the DropDownList allows you to specify all the field attributes such as value, template, image URL, and HTML attributes for those items. - * @param {any|Array} this parameter should have field attributes with respect to mapped field attributes and it's corresponding values to fields - * @returns {void} - */ - addItem(data: any | any[]): void; - - /** This method is used to select all the items in the DropDownList. - * @returns {void} - */ - checkAll(): void; - - /** Clears the text in the DropDownList textbox. - * @returns {void} - */ - clearText(): void; - - /** Destroys the DropDownList widget. - * @returns {void} - */ - destroy(): void; - - /** This property is used to disable the DropDownList widget. - * @returns {void} - */ - disable(): void; - - /** This property disables the set of items in the DropDownList. - * @param {string|number|Array} disable the given index list items - * @returns {void} - */ - disableItemsByIndices(index: string | number | any[]): void; - - /** This property enables the DropDownList control. - * @returns {void} - */ - enable(): void; - - /** Enables an Item or set of Items that are disabled in the DropDownList - * @param {string|number|Array} enable the given index list items if it's disabled - * @returns {void} - */ - enableItemsByIndices(index: string | number | any[]): void; - - /** This method retrieves the items using given value. - * @param {string|number|any} Return the whole object of data based on given value - * @returns {Array} - */ - getItemDataByValue(value: string | number | any): any[]; - - /** This method is used to retrieve the items that are bound with the DropDownList. - * @returns {any} - */ - getListData(): any; - - /** This method is used to get the selected items in the DropDownList. - * @returns {Array} - */ - getSelectedItem(): any[]; - - /** This method is used to retrieve the items value that are selected in the DropDownList. - * @returns {string} - */ - getSelectedValue(): string; - - /** This method hides the suggestion popup in the DropDownList. - * @returns {void} - */ - hidePopup(): void; - - /** This method is used to select the list of items in the DropDownList through the Index of the items. - * @param {string|number|Array} select the given index list items - * @returns {void} - */ - selectItemsByIndices(index: string | number | any[]): void; - - /** This method is used to select an item in the DropDownList by using the given text value. - * @param {string|number|Array} select the list items relates to given text - * @returns {void} - */ - selectItemByText(index: string | number | any[]): void; - - /** This method is used to select an item in the DropDownList by using the given value. - * @param {string|number|Array} select the list items relates to given values - * @returns {void} - */ - selectItemByValue(index: string | number | any[]): void; - - /** This method shows the DropDownList control with the suggestion popup. - * @returns {void} - */ - showPopup(): void; - - /** This method is used to unselect all the items in the DropDownList. - * @returns {void} - */ - unCheckAll(): void; - - /** This method is used to unselect the list of items in the DropDownList through Index of the items. - * @param {string|number|Array} unselect the given index list items - * @returns {void} - */ - unselectItemsByIndices(index: string | number | any[]): void; - - /** This method is used to unselect an item in the DropDownList by using the given text value. - * @param {string|number|Array} unselect the list items relates to given text - * @returns {void} - */ - unselectItemByText(index: string | number | any[]): void; - - /** This method is used to unselect an item in the DropDownList by using the given value. - * @param {string|number|Array} unselect the list items relates to given values - * @returns {void} - */ - unselectItemByValue(index: string | number | any[]): void; - } - export namespace DropDownList { - - export interface Model { - - /** The Virtual Scrolling(lazy loading) feature is used to display a large amount of data that you require without buffering the entire load of a huge database records in the DropDownList, - * that is, when scrolling, an AJAX request is sent to fetch some amount of data from the server dynamically. To achieve this scenario with DropDownList, set the allowVirtualScrolling to true. - * @Default {false} - */ - allowVirtualScrolling?: boolean; - - /** The cascading DropDownLists is a series of two or more DropDownLists in which each DropDownList is filtered according to the previous DropDownList’s value. - * @Default {null} - */ - cascadeTo?: string; - - /** Sets the case sensitivity of the search operation. It supports both enableFilterSearch and enableIncrementalSearch property. - * @Default {false} - */ - caseSensitiveSearch?: boolean; - - /** Dropdown widget's style and appearance can be controlled based on 13 different default built-in themes.You can customize the appearance of the dropdown by using the cssClass property. - * You need to specify a class name in the cssClass property and the same class name is used before the class definitions wherever the custom styles are applied. - */ - cssClass?: string; - - /** This property is used to serve data from the data services based on the query provided. To bind the data to the dropdown widget, - * the dataSource property is assigned with the instance of the ej.DataManager. - * @Default {null} - */ - dataSource?: any; - - /** Sets the separator when the multiSelectMode with delimiter option or checkbox is enabled with the dropdown. When you enter the delimiter value,the texts after the delimiter are considered - * as a separate word or query. The delimiter string is a single character and must be a symbol. Mostly, the delimiter symbol is used as comma (,) or semi-colon (;) or any other special character. - * @Default {','} - */ - delimiterChar?: string; - - /** The enabled Animation property uses the easeOutQuad animation to SlideDown and SlideUp the Popup list in 200 and 100 milliseconds, respectively. - * @Default {false} - */ - enableAnimation?: boolean; - - /** This property is used to indicate whether the DropDownList control responds to the user interaction or not. By default, the control is in the enabled mode - * and you can disable it by setting it to false. - * @Default {true} - */ - enabled?: boolean; - - /** Specifies to perform incremental search for the selection of items from the DropDownList with the help of this property. This helps in selecting the item by using the typed character. - * @Default {true} - */ - enableIncrementalSearch?: boolean; - - /** This property selects the item in the DropDownList when the item is entered in the Search textbox. - * @Default {false} - */ - enableFilterSearch?: boolean; - - /** Saves the current model value to the browser cookies for state maintenance. While refreshing the DropDownList control page, it retains the model value and - * it is applied from the browser cookies. - * @Default {false} - */ - enablePersistence?: boolean; - - /** This enables the resize handler to resize the popup to any size. - * @Default {false} - */ - enablePopupResize?: boolean; - - /** Sets the DropDownList textbox direction from right to left align. - * @Default {false} - */ - enableRTL?: boolean; - - /** This property is used to sort the Items in the DropDownList. By default, it sorts the items in an ascending order. - * @Default {false} - */ - enableSorting?: boolean; - - /** Specifies the mapping fields for the data items of the DropDownList. - * @Default {null} - */ - fields?: Fields; - - /** When the enableFilterSearch property value is set to true, the values in the DropDownList shows the items starting with or containing the key word/letter typed in the Search textbox. - * @Default {ej.FilterType.Contains} - */ - filterType?: ej.FilterType | string; - - /** Used to create visualized header for dropdown items - * @Default {null} - */ - headerTemplate?: string; - - /** Defines the height of the DropDownList textbox. - * @Default {null} - */ - height?: string | number; - - /** It sets the given HTML attributes for the DropDownList control such as ID, name, disabled, etc. - * @Default {null} - */ - htmlAttributes?: any; - - /** Data can be fetched in the DropDownList control by using the DataSource, specifying the number of items. - * @Default {5} - */ - itemsCount?: number; - - /** Allows the user to set the particular country or region language for the DropDownList. - * @Default {en-US} - */ - locale?: string; - - /** Defines the maximum height of the suggestion box. This property restricts the maximum height of the popup when resize is enabled. - * @Default {null} - */ - maxPopupHeight?: string | number; - - /** Defines the minimum height of the suggestion box. This property restricts the minimum height of the popup when resize is enabled. - * @Default {null} - */ - minPopupHeight?: string | number; - - /** Defines the maximum width of the suggestion box. This property restricts the maximum width of the popup when resize is enabled. - * @Default {null} - */ - maxPopupWidth?: string | number; - - /** Defines the minimum height of the suggestion box. This property restricts the minimum height of the popup when resize is enabled. - * @Default {0} - */ - minPopupWidth?: string | number; - - /** With the help of this property, you can make a single or multi selection with the DropDownList and display the text in two modes, delimiter and visual mode. - * In delimiter mode, you can separate the items by using the delimiter character such as comma (,) or semi-colon (;) or any other special character. - * In the visual mode, the items are showcased like boxes with close icon in the textbox. - * @Default {ej.MultiSelectMode.None} - */ - multiSelectMode?: ej.MultiSelectMode | string; - - /** Defines the height of the suggestion popup box in the DropDownList control. - * @Default {152px} - */ - popupHeight?: string | number; - - /** Defines the width of the suggestion popup box in the DropDownList control. - * @Default {auto} - */ - popupWidth?: string | number; - - /** Specifies the query to retrieve the data from the DataSource. - * @Default {null} - */ - query?: any; - - /** Specifies that the DropDownList textbox values should be read-only. - * @Default {false} - */ - readOnly?: boolean; - - /** Specifies an item to be selected in the DropDownList. - * @Default {null} - */ - selectedIndex?: number; - - /** Specifies the selectedItems for the DropDownList. - * @Default {[]} - */ - selectedIndices?: any[]; - - /** Selects multiple items in the DropDownList with the help of the checkbox control. To achieve this, enable the showCheckbox option to true. - * @Default {false} - */ - showCheckbox?: boolean; - - /** DropDownList control is displayed with the popup seen. - * @Default {false} - */ - showPopupOnLoad?: boolean; - - /** DropDownList textbox displayed with the rounded corner style. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** When the enableSorting property value is set to true, this property helps to sort the items either in ascending or descending order - * @Default {ej.SortOrder.Ascending} - */ - sortOrder?: ej.SortOrder | string; - - /** Specifies the targetID for the DropDownList’s items. - * @Default {null} - */ - targetID?: string; - - /** By default, you can add any text or image to the DropDownList item. To customize the item layout or to create your own visualized elements, you can use this template support. - * @Default {null} - */ - template?: string; - - /** Defines the text value that is displayed in the DropDownList textbox. - * @Default {null} - */ - text?: string | number; - - /** Sets the jQuery validation error message in the DropDownList - * @Default {null} - */ - validationMessage?: any; - - /** Sets the jQuery validation rules in the Dropdownlist. - * @Default {null} - */ - validationRules?: any; - - /** Specifies the value (text content) for the DropDownList control. - * @Default {null} - */ - value?: string | number; - - /** Specifies a short hint that describes the expected value of the DropDownList control. - * @Default {null} - */ - watermarkText?: string; - - /** Defines the width of the DropDownList textbox. - * @Default {null} - */ - width?: string | number; - - /** The Virtual Scrolling feature is used to display a large amount of records in the DropDownList, that is, when scrolling, an AJAX request is sent to fetch some amount of data from - * the server dynamically. To achieve this scenario with DropDownList, set the allowVirtualScrolling to true. - * You can set the itemsCount property that represents the number of items to be fetched from the server on every AJAX request. - * @Default {normal} - */ - virtualScrollMode?: ej.VirtualScrollMode | string; - - /** Fires the action before the XHR request. */ - actionBegin?(e: ActionBeginEventArgs): void; - - /** Fires the action when the list of items is bound to the DropDownList by xhr post calling */ - actionComplete?(e: ActionCompleteEventArgs): void; - - /** Fires the action when the xhr post calling failed on remote data binding with the DropDownList control. */ - actionFailure?(e: ActionFailureEventArgs): void; - - /** Fires the action when the xhr post calling succeed on remote data binding with the DropDownList control */ - actionSuccess?(e: ActionSuccessEventArgs): void; - - /** Fires the action before the popup is ready to hide. */ - beforePopupHide?(e: BeforePopupHideEventArgs): void; - - /** Fires the action before the popup is ready to be displayed. */ - beforePopupShown?(e: BeforePopupShownEventArgs): void; - - /** Fires when the cascading happens between two DropDownList exactly after the value changes in the first dropdown and before filtering in the second Dropdown. */ - cascade?(e: CascadeEventArgs): void; - - /** Fires the action when the DropDownList control’s value is changed. */ - change?(e: ChangeEventArgs): void; - - /** Fires the action when the list item checkbox value is changed. */ - checkChange?(e: CheckChangeEventArgs): void; - - /** Fires the action once the DropDownList is created. */ - create?(e: CreateEventArgs): void; - - /** Fires the action when the list items is bound to the DropDownList. */ - dataBound?(e: DataBoundEventArgs): void; - - /** Fires the action when the DropDownList is destroyed. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires the action when the DropDownList is focused. */ - focusIn?(e: FocusInEventArgs): void; - - /** Fires the action when the DropDownList is about to lose focus. */ - focusOut?(e: FocusOutEventArgs): void; - - /** Fires the action, once the popup is closed */ - popupHide?(e: PopupHideEventArgs): void; - - /** Fires the action, when the popup is resized. */ - popupResize?(e: PopupResizeEventArgs): void; - - /** Fires the action, once the popup is opened. */ - popupShown?(e: PopupShownEventArgs): void; - - /** Fires the action, when resizing a popup starts. */ - popupResizeStart?(e: PopupResizeStartEventArgs): void; - - /** Fires the action, when the popup resizing is stopped. */ - popupResizeStop?(e: PopupResizeStopEventArgs): void; - - /** Fires the action before filtering the list items that starts in the DropDownList when the enableFilterSearch is enabled. */ - search?(e: SearchEventArgs): void; - - /** Fires the action, when the list of item is selected. */ - select?(e: SelectEventArgs): void; - } - - export interface ActionBeginEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface ActionCompleteEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns number of times trying to fetch the data - */ - count?: number; - - /** returns the DropDownList model - */ - model?: any; - - /** Returns the query for data retrieval - */ - query?: any; - - /** Returns the query for data retrieval from the Database - */ - request?: any; - - /** returns the name of the event - */ - type?: string; - - /** Returns the number of items fetched from remote data - */ - result?: any[]; - - /** Returns the requested data - */ - xhr?: any; - } - - export interface ActionFailureEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the error message - */ - error?: any; - - /** returns the DropDownList model - */ - model?: any; - - /** Returns the query for data retrieval - */ - query?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface ActionSuccessEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns number of times trying to fetch the data - */ - count?: number; - - /** returns the DropDownList model - */ - model?: any; - - /** Returns the query for data retrieval - */ - query?: any; - - /** Returns the query for data retrieval from the Database - */ - request?: any; - - /** returns the name of the event - */ - type?: string; - - /** Returns the number of items fetched from remote data - */ - result?: any[]; - - /** Returns the requested data - */ - xhr?: any; - } - - export interface BeforePopupHideEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the selected text - */ - text?: string; - - /** returns the selected value - */ - value?: string; - } - - export interface BeforePopupShownEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the selected text - */ - text?: string; - - /** returns the selected value - */ - value?: string; - } - - export interface CascadeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the cascading dropdown model. - */ - cascadeModel?: any; - - /** returns the current selected value in first dropdown. - */ - cascadeValue?: string; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the default filter action for second dropdown data should happen or not. - */ - requiresDefaultFilter?: boolean; - - /** returns the name of the event - */ - type?: string; - } - - export interface ChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the selected item with checkbox checked or not. - */ - isChecked?: boolean; - - /** Returns the selected item ID. - */ - itemId?: string; - - /** returns the DropDownList model - */ - model?: any; - - /** Returns the selected item text. - */ - selectedText?: string; - - /** returns the name of the event - */ - type?: string; - - /** Returns the selected text. - */ - text?: string; - - /** Returns the selected value. - */ - value?: string; - } - - export interface CheckChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the selected item with checkbox checked or not. - */ - isChecked?: boolean; - - /** Returns the selected item ID. - */ - itemId?: string; - - /** returns the DropDownList model - */ - model?: any; - - /** Returns the selected item text. - */ - selectedText?: string; - - /** returns the name of the event - */ - type?: string; - - /** Returns the selected text. - */ - text?: string; - - /** Returns the selected value. - */ - value?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface DataBoundEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the data that is bound to DropDownList - */ - data?: any; - } - - export interface DestroyEventArgs { - - /** its value is set as true,if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface FocusInEventArgs { - - /** its value is set as true,if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface FocusOutEventArgs { - - /** its value is set as true,if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface PopupHideEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the selected text - */ - text?: string; - - /** returns the selected value - */ - value?: string; - } - - export interface PopupResizeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** Returns the data from the resizable plugin. - */ - event?: any; - } - - export interface PopupShownEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the selected text - */ - text?: string; - - /** returns the selected value - */ - value?: string; - } - - export interface PopupResizeStartEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** Returns the data from the resizable plugin. - */ - event?: any; - } - - export interface PopupResizeStopEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the DropDownList model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** Returns the data from the resizable plugin. - */ - event?: any; - } - - export interface SearchEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the data bound to the DropDownList. - */ - items?: any; - - /** returns the DropDownList model - */ - model?: any; - - /** Returns the selected item text. - */ - selectedText?: string; - - /** returns the name of the event - */ - type?: string; - - /** Returns the search string typed in search box. - */ - searchString?: string; - } - - export interface SelectEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the selected item with checkbox checked or not. - */ - isChecked?: boolean; - - /** Returns the selected item ID. - */ - itemId?: string; - - /** returns the DropDownList model - */ - model?: any; - - /** Returns the selected item text. - */ - selectedText?: string; - - /** returns the name of the event - */ - type?: string; - - /** Returns the selected text. - */ - text?: string; - - /** Returns the selected value. - */ - value?: string; - } - - export interface Fields { - - /** Used to group the items. - */ - groupBy?: string; - - /** Defines the HTML attributes such as ID, class, and styles for the item. - */ - htmlAttributes?: any; - - /** Defines the ID for the tag. - */ - id?: string; - - /** Defines the image attributes such as height, width, styles, and so on. - */ - imageAttributes?: string; - - /** Defines the imageURL for the image location. - */ - imageUrl?: string; - - /** Defines the tag value to be selected initially. - */ - selected?: boolean; - - /** Defines the sprite CSS for the image tag. - */ - spriteCssClass?: string; - - /** Defines the table name for tag value or display text while rendering remote data. - */ - tableName?: string; - - /** Defines the text content for the tag. - */ - text?: string; - - /** Defines the tag value. - */ - value?: string; - } - } - enum FilterType { - //filter the data wherever contains search key - Contains, - //filter the data based on search key present at start position - StartsWith, - } - enum MultiSelectMode { - // can select only single item in DropDownList - None, - //can select multiple items and it's separated by delimiterChar - Delimiter, - // can select multiple items and it's show's like visual box in textbox - VisualMode, - } - enum VirtualScrollMode { - // The data is loaded only to the corresponding page (display items). When scrolling some other position, it enables the load on demand with the DropDownList. - Normal, - //The data items are loaded from the remote when scroll handle reaches the end of the scrollbar like infinity scrolling. - Continuous, - } - - class Tooltip extends ej.Widget { - static fn: Tooltip; - constructor(element: JQuery | Element, options?: Tooltip.Model); - static Locale: any; - model: Tooltip.Model; - defaults: Tooltip.Model; - - /** Destroys the Tooltip control. - * @returns {void} - */ - destroy(): void; - - /** Disables the Tooltip control. - * @returns {void} - */ - disable(): void; - - /** Enables the Tooltip control. - * @returns {void} - */ - enable(): void; - - /** Hide the Tooltip popup. - * @param {string} optional Determines the type of effect that takes place when hiding the tooltip. - * @param {Function} optional custom effect takes place when hiding the tooltip. - * @returns {void} - */ - hide(effect?: string, func?: any): void; - - /** Shows the Tooltip popup for the given target element with the specified effect. - * @param {string} optional Determines the type of effect that takes place when showing the tooltip. - * @param {Function} optional custom effect takes place when showing the tooltip. - * @param {JQuery} optional Tooltip will be shown for the given element - * @returns {void} - */ - show(effect?: string, func?: any, target?: JQuery): void; - } - export namespace Tooltip { - - export interface Model { - - /** Tooltip control can be accessed through the keyboard shortcut keys. - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** Specifies the animation behavior in Tooltip. It contains the following sub properties. - */ - animation?: Animation; - - /** Sets the position related to target element, window, mouse or (x,y) co-ordinates. - * @Default {ej.Tooltip.Associate.Target} - */ - associate?: ej.Tooltip.Associate | string; - - /** Specified the delay to hide Tooltip when closeMode is auto. - * @Default {4000} - */ - autoCloseTimeout?: number; - - /** Specifies the closing behavior of Tooltip popup. - * @Default {ej.Tooltip.CloseMode.None} - */ - closeMode?: ej.Tooltip.CloseMode | string; - - /** Sets the Tooltip in alternate position when collision occurs. - * @Default {ej.Tooltip.Collision.FlipFit} - */ - collision?: ej.Tooltip.Collision | string; - - /** Specified the selector for the container element. - * @Default {body} - */ - containment?: string; - - /** Specifies the text for Tooltip. - * @Default {null} - */ - content?: string; - - /** Sets the root CSS class for Tooltip for the customization. - * @Default {null} - */ - cssClass?: string; - - /** Enables or disables the Tooltip. - * @Default {true} - */ - enabled?: boolean; - - /** Sets the Tooltip direction from right to left. - * @Default {false} - */ - enableRTL?: boolean; - - /** Defines the height of the Tooltip popup. - * @Default {auto} - */ - height?: string | number; - - /** Enables the arrow in Tooltip. - * @Default {true} - */ - isBalloon?: boolean; - - /** defines various attributes of the Tooltip position - */ - position?: Position; - - /** Enables or disables rounded corner. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Enables or disables shadow effect. - * @Default {false} - */ - showShadow?: boolean; - - /** Specified a selector for elements, within the container. - * @Default {null} - */ - target?: string; - - /** defines Tooltip size and gap between tooltip against the target element. - */ - tip?: Tip; - - /** The title text to be displayed in the Tooltip header. - * @Default {null} - */ - title?: string; - - /** Specified the event action to show case the Tooltip. - * @Default {ej.Tooltip.Trigger.Hover} - */ - trigger?: ej.Tooltip.Trigger | string; - - /** Defines the width of the Tooltip popup. - * @Default {auto} - */ - width?: string | number; - - /** This event is triggered before the Tooltip widget get closed. */ - beforeClose?(e: BeforeCloseEventArgs): void; - - /** This event is triggered before the Tooltip widget gets open. */ - beforeOpen?(e: BeforeOpenEventArgs): void; - - /** Fires on clicking to the target element. */ - click?(e: ClickEventArgs): void; - - /** This event is triggered after the Tooltip widget is closed. */ - close?(e: CloseEventArgs): void; - - /** This event is triggered after the Tooltip is created successfully. */ - create?(e: CreateEventArgs): void; - - /** This event is triggered after the Tooltip widget is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - - /** This event is triggered while hovering the target element, when tooltip positioning relates to target element. */ - hover?(e: HoverEventArgs): void; - - /** This event is triggered after the Tooltip is opened. */ - open?(e: OpenEventArgs): void; - - /** This event is triggered while hover the target element, when the tooltip positioning is relates to the mouse. */ - tracking?(e: TrackingEventArgs): void; - } - - export interface BeforeCloseEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the tooltip model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the Tooltip's content - */ - content?: string; - } - - export interface BeforeOpenEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Tooltip model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the Tooltip's content - */ - content?: string; - } - - export interface ClickEventArgs { - - /** its value is set as true,if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Tooltip model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the event object - */ - event?: any; - } - - export interface CloseEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Tooltip model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the Tooltip's content - */ - content?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Tooltip model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** its value is set as true,if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Tooltip model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface HoverEventArgs { - - /** its value is set as true,if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Tooltip model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the event object - */ - event?: any; - } - - export interface OpenEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Tooltip model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the Tooltip's content - */ - content?: string; - } - - export interface TrackingEventArgs { - - /** its value is set as true,if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Tooltip model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the event object - */ - event?: any; - } - - export interface Animation { - - /** Determines the type of effect. - * @Default {ej.Tooltip.Effect.None} - */ - effect?: ej.Tooltip.effect | string; - - /** Sets the animation speed in milliseconds. - * @Default {4000} - */ - speed?: number; - } - - export interface PositionTarget { - - /** Sets the Tooltip position against target based on horizontal(x) value. - * @Default {center} - */ - horizontal?: string | number; - - /** Sets the Tooltip position against target based on vertical(y) value. - * @Default {top} - */ - vertical?: string | number; - } - - export interface PositionStem { - - /** Sets the arrow position again popup based on horizontal(x) value - * @Default {center} - */ - horizontal?: string; - - /** Sets the arrow position again popup based on vertical(y) value - * @Default {bottom} - */ - vertical?: string; - } - - export interface Position { - - /** Sets the Tooltip position against target. - */ - target?: PositionTarget; - - /** Sets the arrow position again popup. - */ - stem?: PositionStem; - } - - export interface TipSize { - - /** Sets the Tooltip width. - * @Default {20} - */ - width?: number; - - /** Sets the Tooltip height. - * @Default {10} - */ - height?: number; - } - - export interface TipAdjust { - - /** Sets horizontal gap between Tooltip and target element. - * @Default {0} - */ - xValue?: number; - - /** Sets vertical gap between Tooltip and target element. - * @Default {0} - */ - yValue?: number; - } - - export interface Tip { - - /** Sets the Tooltip size. - */ - size?: TipSize; - - /** Sets gap between tooltip against the target element. - */ - adjust?: TipAdjust; - } - - - enum effect { - - ///No animation takes place when showing/hiding the Tooltip - None, - - ///Sliding effect takes place when showing/hiding the Tooltip - Slide, - - ///Fade the Tooltip in and out of visibility. - Fade - } - - - enum Associate { - - ///Sets the position related to target element. - Target, - - ///Sets the position related to mouse. - MouseFollow, - - ///Sets the position related to mouse, first entry to the target element. - MouseEnter, - - ///Sets the position related to (x,y) co-ordinates. - Axis, - - ///Sets the position related to browser window. - Window - } - - - enum CloseMode { - - ///Enables close button in Tooltip. - Sticky, - - ///Sets the delay for Tooltip close - Auto, - - ///The Tooltip will be display normally. - None - } - - - enum Collision { - - ///Flips the Tooltip to the opposite side of the target, if collision is occurs. - Flip, - - ///Shift the Tooltip popup away from the edge of the window(collision side) that means adjacent position. - Fit, - - ///Ensure as much of the element is visible as possible to showcase. - FlipFit, - - ///No collision detection is take place - None - } - - - enum Trigger { - - ///The Tooltip to be shown when the target element is clicked. - Click, - - ///Enables the Tooltip when hover on the target element. - Hover, - - ///Enables the Tooltip when focus is set to target element. - Focus - } - - } - - class Editor extends ej.Widget { - static fn: Editor; - constructor(element: JQuery | Element, options?: Editor.Model); - static Locale: any; - model: Editor.Model; - defaults: Editor.Model; - - /** destroy the editor widgets all events are unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** To disable the corresponding Editors - * @returns {void} - */ - disable(): void; - - /** To enable the corresponding Editors - * @returns {void} - */ - enable(): void; - - /** To get value from corresponding Editors - * @returns {number} - */ - getValue(): number; - } - - class NumericTextbox extends Editor { - } - - class CurrencyTextbox extends Editor { - } - - class PercentageTextbox extends Editor { - } - export namespace Editor { - - export interface Model { - - /** Specifies the currency symbol of currency textbox, used when the user wants to overwrite the currency symbol commonly instead of the current culture symbol. - * @Default {Based on the culture} - */ - currencySymbol?: string; - - /** Sets the root CSS class for Editors which allow us to customize the appearance. - */ - cssClass?: string; - - /** Specifies the number of digits that should be allowed after the decimal point. - * @Default {0} - */ - decimalPlaces?: number; - - /** Specifies the editor control state. - * @Default {true} - */ - enabled?: boolean; - - /** Specify the enablePersistence to editor to save current editor control value to browser cookies for state maintenance. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Specifies the Right to Left Direction to editor. - * @Default {false} - */ - enableRTL?: boolean; - - /** When enableStrictMode true it allows the value outside of the range also but it highlights the textbox with error class,otherwise it internally changed to the correct value. - * @Default {false} - */ - enableStrictMode?: boolean; - - /** Specifies the number of digits in each group to the editor. - * @Default {Based on the culture.} - */ - groupSize?: string; - - /** It provides the options to get the customized character to separate the digits. If not set, the separator defined by the current culture. - * @Default {Based on the culture} - */ - groupSeparator?: string; - - /** Specifies the height of the editor. - * @Default {30} - */ - height?: string; - - /** It allows to define the characteristics of the Editors control. It will helps to extend the capability of an HTML element. - * @Default {{}} - */ - htmlAttributes?: any; - - /** The Editor value increment or decrement based an incrementStep value. - * @Default {1} - */ - incrementStep?: number; - - /** Defines the localization culture for editor. - * @Default {en-US} - */ - locale?: string; - - /** Specifies the maximum value of the editor. - * @Default {Number.MAX_VALUE} - */ - maxValue?: number; - - /** Specifies the minimum value of the editor. - * @Default {-(Number.MAX_VALUE) and 0 for Currency Textbox.} - */ - minValue?: number; - - /** Specifies the name of the editor. - * @Default {Sets id as name if it is null.} - */ - name?: string; - - /** Specifies the pattern for formatting positive values in editor.We have maintained some standard to define the negative pattern. - * you have to specify 'n' to place the digit in your pattern.ejTextbox allows you to define a currency or percent symbol where you want to place it. - * @Default {Based on the culture} - */ - negativePattern?: string; - - /** Specifies the pattern for formatting positive values in editor.We have maintained some standard to define the positive pattern. - * you have to specify 'n' to place the digit in your pattern.ejTextbox allows you to define a currency or percent symbol where you want to place it. - * @Default {Based on the culture} - */ - positivePattern?: string; - - /** Toggles the readonly state of the editor. When the Editor is readonly it doesn't allow user interactions. - * @Default {false} - */ - readOnly?: boolean; - - /** Specifies to Change the sharped edges into rounded corner for the Editor. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specifies whether the up and down spin buttons should be displayed in editor. - * @Default {true} - */ - showSpinButton?: boolean; - - /** Enables decimal separator position validation on type . - * @Default {false} - */ - validateOnType?: boolean; - - /** Set the jQuery validation error message in editor. - * @Default {null} - */ - validationMessage?: any; - - /** Set the jQuery validation rules to the editor. - * @Default {null} - */ - validationRules?: any; - - /** Specifies the value of the editor. - * @Default {null} - */ - value?: number | string; - - /** Specifies the watermark text to editor. - * @Default {Based on the culture.} - */ - watermarkText?: string; - - /** Specifies the width of the editor. - * @Default {143} - */ - width?: string; - - /** Fires after Editor control value is changed. */ - change?(e: ChangeEventArgs): void; - - /** Fires after Editor control is created. */ - create?(e: CreateEventArgs): void; - - /** Fires when the Editor is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires after Editor control is focused. */ - focusIn?(e: FocusInEventArgs): void; - - /** Fires after Editor control is loss the focus. */ - focusOut?(e: FocusOutEventArgs): void; - } - - export interface ChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the corresponding editor model. - */ - model?: ej.Editor.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the corresponding editor control value. - */ - value?: number; - - /** returns true when the value changed by user interaction otherwise returns false - */ - isInteraction?: boolean; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the editor model - */ - model?: ej.Editor.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the editor model - */ - model?: ej.Editor.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface FocusInEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the corresponding editor model. - */ - model?: ej.Editor.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the corresponding editor control value. - */ - value?: number; - } - - export interface FocusOutEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the corresponding editor model. - */ - model?: ej.Editor.Model; - - /** returns the name of the event. - */ - type?: string; - - /** returns the corresponding editor control value. - */ - value?: number; - } - } - - class ListView extends ej.Widget { - static fn: ListView; - constructor(element: JQuery | Element, options?: ListView.Model); - static Locale: any; - model: ListView.Model; - defaults: ListView.Model; - - /** To add item in the given index. If you have enabled grouping in ListView then you need to pass the corresponding group list title to add item in it. - * @param {any} Specifies the item to be added in ListView - * @param {number} Specifies the index where item to be added - * @param {string} optionalThis is an optional parameter. You must pass the group list title here if grouping is enabled in the ListView - * @returns {void} - */ - addItem(item: any, index: number, groupid: string): void; - - /** To check all the items. - * @returns {void} - */ - checkAllItem(): void; - - /** To check item in the given index. - * @param {number} Specifies the index of the item to be checked - * @returns {void} - */ - checkItem(index: number): void; - - /** To clear all the list item in the control before updating with new datasource. - * @returns {void} - */ - clear(): void; - - /** To make the item in the given index to be default state. - * @param {number} Specifies the index to make the item to be in default state. - * @returns {void} - */ - deActive(index: number): void; - - /** To disable item in the given index. - * @param {number} Specifies the index value to be disabled. - * @returns {void} - */ - disableItem(index: number): void; - - /** To enable item in the given index. - * @param {number} Specifies the index value to be enabled. - * @returns {void} - */ - enableItem(index: number): void; - - /** To get the active item. - * @returns {HTMLElement} - */ - getActiveItem(): HTMLElement; - - /** To get the text of the active item. - * @returns {string} - */ - getActiveItemText(): string; - - /** To get all the checked items. - * @returns {Array} - */ - getCheckedItems(): any[]; - - /** To get the text of all the checked items. - * @returns {Array} - */ - getCheckedItemsText(): any[]; - - /** To get the total item count. - * @returns {number} - */ - getItemsCount(): number; - - /** To get the text of the item in the given index. - * @param {string|number} Specifies the index value to get the text value. - * @returns {string} - */ - getItemText(index: string | number): string; - - /** To check whether the item in the given index has child item. - * @param {number} Specifies the index value to check the item has child or not. - * @returns {boolean} - */ - hasChild(index: number): boolean; - - /** To hide the list. - * @returns {void} - */ - hide(): void; - - /** To hide item in the given index. - * @param {number} Specifies the index value to hide the item. - * @returns {void} - */ - hideItem(index: number): void; - - /** To check whether item in the given index is checked. - * @returns {boolean} - */ - isChecked(): boolean; - - /** To load the AJAX content while selecting the item. - * @param {string} Specifies the item to load the AJAX content. - * @returns {void} - */ - loadAjaxContent(item: string): void; - - /** To remove the check mark either for specific item in the given index or for all items. - * @param {number} Specifies the index value to remove the checkbox. - * @returns {void} - */ - removeCheckMark(index: number): void; - - /** To remove item in the given index. - * @param {number} Specifies the index value to remove the item. - * @returns {void} - */ - removeItem(index: number): void; - - /** To select item in the given index. - * @param {number} Specifies the index value to select the item. - * @returns {void} - */ - selectItem(index: number): void; - - /** To make the item in the given index to be active state. - * @param {number} Specifies the index value to make the item in active state. - * @returns {void} - */ - setActive(index: number): void; - - /** To show the list. - * @returns {void} - */ - show(): void; - - /** To show item in the given index. - * @param {number} Specifies the index value to show the hided item. - * @returns {void} - */ - showItem(index: number): void; - - /** To uncheck all the items. - * @returns {void} - */ - unCheckAllItem(): void; - - /** To uncheck item in the given index. - * @param {number} Specifies the index value to uncheck the item. - * @returns {void} - */ - unCheckItem(index: number): void; - } - export namespace ListView { - - export interface Model { - - /** Specifies the ajaxSettings option to load the items to the ListView control. - * @Default {null} - */ - ajaxSettings?: AjaxSettings; - - /** Set the index values to be selected on initial loading. This works only when enableCheckMark is set true. - * @Default {[]} - */ - checkedIndices?: any[]; - - /** Sets the root class for ListView theme. This cssClass API helps to use custom skinning option for ListView control. By defining the root class using this API, - * we need to include this root class in CSS. - */ - cssClass?: string; - - /** Contains the list of data for generating the ListView items. - * @Default {[]} - */ - dataSource?: any[]; - - /** Specifies whether to load AJAX content while selecting item. - * @Default {false} - */ - enableAjax?: boolean; - - /** Specifies whether to enable caching the content. - * @Default {false} - */ - enableCache?: boolean; - - /** Specifies whether to enable check mark for the item. - * @Default {false} - */ - enableCheckMark?: boolean; - - /** Specifies whether to enable the filtering feature to filter the item. - * @Default {false} - */ - enableFiltering?: boolean; - - /** Specifies whether to group the list item. - * @Default {false} - */ - enableGroupList?: boolean; - - /** Specifies to maintain the current model value to browser cookies for state maintenance. While refresh the page, the model value will get apply to the control from browser cookies. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Specifies the field settings to map the datasource. - */ - fieldSettings?: any; - - /** Contains the array of items to be added in ListView. - * @Default {[]} - */ - items?: any[]; - - /** Specifies the text of the back button in the header. - * @Default {null} - */ - headerBackButtonText?: string; - - /** Specifies the title of the header. - * @Default {Title} - */ - headerTitle?: string; - - /** Specifies the height. - * @Default {null} - */ - height?: string | number; - - /** Set the localization culture for ListView Widget. - */ - locale?: string; - - /** Specifies whether to retain the selection of the item. - * @Default {false} - */ - persistSelection?: boolean; - - /** Specifies whether to prevent the selection of the item. - * @Default {false} - */ - preventSelection?: boolean; - - /** Specifies the query to execute with the datasource. - * @Default {null} - */ - query?: any; - - /** Specifies whether need to render the control with the template contents. - * @Default {false} - */ - renderTemplate?: boolean; - - /** Specifies the index of item which need to be in selected state initially while loading. - * @Default {0} - */ - selectedItemIndex?: number; - - /** Specifies whether to show the header. - * @Default {true} - */ - showHeader?: boolean; - - /** Specifies whether to show the back button header. - * @Default {false} - */ - showHeaderBackButton?: boolean; - - /** Specifies ID of the element contains template contents. - * @Default {null} - */ - templateId?: string; - - /** Specifies the width. - * @Default {null} - */ - width?: string | number; - - /** Specifies the number of items to be fetched on each scroll. Note: This property works only with Virtual scrolling. - * @Default {5} - */ - itemRequestCount?: number; - - /** Specifies the maximum number of items to be fetched. Note: This will work only with Virtual scrolling - * @Default {null} - */ - totalItemsCount?: number; - - /** Loads the list data on demand via scrolling behavior to improve the application’s performance. There are two ways to load data which can be defined using virtualScrollMode property. - * @Default {false} - */ - allowVirtualScrolling?: boolean; - - /** Specifies the virtual scroll mode to load the list data on demand via scrolling behavior. There are two types of mode. - * @Default {ej.VirtualScrollMode.Normal} - */ - virtualScrollMode?: ej.VirtualScrollMode | string; - - /** Event triggers before the AJAX request happens. */ - ajaxBeforeLoad?(e: AjaxBeforeLoadEventArgs): void; - - /** Event triggers after the AJAX content loaded completely. */ - ajaxComplete?(e: AjaxCompleteEventArgs): void; - - /** Event triggers when the AJAX request failed. */ - ajaxError?(e: AjaxErrorEventArgs): void; - - /** Event triggers after the AJAX content loaded successfully. */ - ajaxSuccess?(e: AjaxSuccessEventArgs): void; - - /** Event triggers before the items loaded. */ - load?(e: LoadEventArgs): void; - - /** Event triggers after the items loaded. */ - loadComplete?(e: LoadCompleteEventArgs): void; - - /** Event triggers when mouse down happens on the item. */ - mouseDown?(e: MouseDownEventArgs): void; - - /** Event triggers when mouse up happens on the item. */ - mouseUp?(e: MouseUpEventArgs): void; - } - - export interface AjaxBeforeLoadEventArgs { - - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the name of the event. - */ - type?: string; - - /** returns the model value of the control. - */ - model?: ej.ListView.Model; - - /** returns the AJAX settings. - */ - ajaxData?: any; - } - - export interface AjaxCompleteEventArgs { - - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the name of the event. - */ - type?: string; - - /** returns the model value of the control. - */ - model?: ej.ListView.Model; - } - - export interface AjaxErrorEventArgs { - - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the name of the event. - */ - type?: string; - - /** returns the model value of the control. - */ - model?: ej.ListView.Model; - - /** returns the error thrown in the AJAX post. - */ - errorThrown?: any; - - /** returns the status. - */ - textStatus?: any; - - /** returns the current list item. - */ - item?: any; - - /** returns the current item text. - */ - text?: string; - - /** returns the current item index. - */ - index?: number; - } - - export interface AjaxSuccessEventArgs { - - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the name of the event. - */ - type?: string; - - /** returns the model value of the control. - */ - model?: ej.ListView.Model; - - /** returns the AJAX current content. - */ - content?: string; - - /** returns the current list item. - */ - item?: any; - - /** returns the current item text. - */ - text?: string; - - /** returns the current item index. - */ - index?: number; - - /** returns the current URL of the AJAX post. - */ - URL?: string; - } - - export interface LoadEventArgs { - - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the name of the event. - */ - type?: string; - - /** returns the model value of the control. - */ - model?: ej.ListView.Model; - } - - export interface LoadCompleteEventArgs { - - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the name of the event. - */ - type?: string; - - /** returns the model value of the control. - */ - model?: ej.ListView.Model; - } - - export interface MouseDownEventArgs { - - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the name of the event. - */ - type?: string; - - /** returns the model value of the control. - */ - model?: ej.ListView.Model; - - /** If the child element exist return true; otherwise, false. - */ - hasChild?: boolean; - - /** returns the current list item. - */ - item?: string; - - /** returns the current text of item. - */ - text?: string; - - /** returns the current Index of the item. - */ - index?: number; - - /** If checked return true; otherwise, false. - */ - isChecked?: boolean; - - /** returns the list of checked items. - */ - checkedItems?: number; - - /** returns the current checked item text. - */ - checkedItemsText?: string; - } - - export interface MouseUpEventArgs { - - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the name of the event. - */ - type?: string; - - /** returns the model value of the control. - */ - model?: ej.ListView.Model; - - /** If the child element exist return true; otherwise, false. - */ - hasChild?: boolean; - - /** returns the current list item. - */ - item?: string; - - /** returns the current text of item. - */ - text?: string; - - /** returns the current Index of the item. - */ - index?: number; - - /** If checked return true; otherwise, false. - */ - isChecked?: boolean; - - /** returns the list of checked items. - */ - checkedItems?: number; - - /** returns the current checked item text. - */ - checkedItemsText?: string; - } - - export interface AjaxSettings { - - /** It specifies, whether to enable or disable asynchronous request. - */ - async?: boolean; - - /** It specifies the page will be cached in the web browser. - */ - cache?: boolean; - - /** It specifies the type of data is send in the query string. - */ - contentType?: string; - - /** It specifies the data as an object, will be passed in the query string. - */ - data?: any; - - /** It specifies the type of data that you're expecting back from the response. - */ - dataType?: string; - - /** It specifies the HTTP request type. - */ - type?: string; - } - } - - class MaskEdit extends ej.Widget { - static fn: MaskEdit; - constructor(element: JQuery | Element, options?: MaskEdit.Model); - static Locale: any; - model: MaskEdit.Model; - defaults: MaskEdit.Model; - - /** To clear the text in mask edit textbox control. - * @returns {void} - */ - clear(): void; - - /** To disable the mask edit textbox control. - * @returns {void} - */ - disable(): void; - - /** To enable the mask edit textbox control. - * @returns {void} - */ - enable(): void; - - /** To obtained the pure value of the text value, removes all the symbols in mask edit textbox control. - * @returns {string} - */ - get_StrippedValue(): string; - - /** To obtained the textbox value as such that, Just replace all '_' to ' '(space) in mask edit textbox control. - * @returns {string} - */ - get_UnstrippedValue(): string; - } - export namespace MaskEdit { - - export interface Model { - - /** Specify the cssClass to achieve custom theme. - * @Default {null} - */ - cssClass?: string; - - /** Specify the custom character allowed to entered in mask edit textbox control. - * @Default {null} - */ - customCharacter?: string; - - /** Specify the state of the mask edit textbox control. - * @Default {true} - */ - enabled?: boolean; - - /** Specify the enablePersistence to mask edit textbox to save current model value to browser cookies for state maintains. - */ - enablePersistence?: boolean; - - /** Specifies the height for the mask edit textbox control. - * @Default {28 px} - */ - height?: string; - - /** Specifies whether hide the prompt characters with spaces on blur. Prompt chars will be shown again on focus the textbox. - * @Default {false} - */ - hidePromptOnLeave?: boolean; - - /** Specifies the list of HTML attributes to be added to mask edit textbox. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specify the inputMode for mask edit textbox control. See InputMode - * @Default {ej.InputMode.Text} - */ - inputMode?: ej.InputMode | string; - - /** Specifies the input mask. - * @Default {null} - */ - maskFormat?: string; - - /** Specifies the name attribute value for the mask edit textbox. - * @Default {null} - */ - name?: string; - - /** Toggles the readonly state of the mask edit textbox. When the mask edit textbox is readonly, it doesn't allow your input. - * @Default {false} - */ - readOnly?: boolean; - - /** Specifies whether the error will show until correct value entered in the mask edit textbox control. - * @Default {false} - */ - showError?: boolean; - - /** when showPromptChar is true, the hide the prompt characters are shown in focus of the control and hides in focus out of the control. - * @Default {true} - */ - showPromptChar?: boolean; - - /** MaskEdit input is displayed in rounded corner style when this property is set to true. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specify the text alignment for mask edit textbox control.See TextAlign - * @Default {left} - */ - textAlign?: ej.TextAlign | string; - - /** Sets the jQuery validation error message in mask edit. This property works when the widget is present inside the form. Include jquery.validate.min.js plugin additionally. - * @Default {null} - */ - validationMessage?: any; - - /** Sets the jQuery validation rules to the MaskEdit. This property works when the widget is present inside the form. Include jquery.validate.min.js plugin additionally. - * @Default {null} - */ - validationRules?: any; - - /** Specifies the value for the mask edit textbox control. - * @Default {null} - */ - value?: string; - - /** Specifies the water mark text to be displayed in input text. - * @Default {null} - */ - watermarkText?: string; - - /** Specifies the width for the mask edit textbox control. - * @Default {143pixel} - */ - width?: string; - - /** Fires when value changed in mask edit textbox control. */ - change?(e: ChangeEventArgs): void; - - /** Fires after MaskEdit control is created. */ - create?(e: CreateEventArgs): void; - - /** Fires when the MaskEdit is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when focused in mask edit textbox control. */ - focusIn?(e: FocusInEventArgs): void; - - /** Fires when focused out in mask edit textbox control. */ - focusOut?(e: FocusOutEventArgs): void; - - /** Fires when keydown in mask edit textbox control. */ - keydown?(e: KeydownEventArgs): void; - - /** Fires when key press in mask edit textbox control. */ - keyPress?(e: KeyPressEventArgs): void; - - /** Fires when keyup in mask edit textbox control. */ - keyup?(e: KeyupEventArgs): void; - - /** Fires when mouse out in mask edit textbox control. */ - mouseOut?(e: MouseOutEventArgs): void; - - /** Fires when mouse over in mask edit textbox control. */ - mouseOver?(e: MouseOverEventArgs): void; - } - - export interface ChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the mask edit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mask edit value - */ - value?: number; - - /** returns unstripped value in mask edit textbox control. - */ - unmaskedValue?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the MaskEdit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the MaskEdit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface FocusInEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the mask edit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mask edit value - */ - value?: number; - - /** returns unstripped value in mask edit textbox control. - */ - unmaskedValue?: string; - } - - export interface FocusOutEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the mask edit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mask edit value - */ - value?: number; - - /** returns unstripped value in mask edit textbox control. - */ - unmaskedValue?: string; - } - - export interface KeydownEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the mask edit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mask edit value - */ - value?: number; - - /** returns unstripped value in mask edit textbox control. - */ - unmaskedValue?: string; - } - - export interface KeyPressEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the mask edit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mask edit value - */ - value?: number; - - /** returns unstripped value in mask edit textbox control. - */ - unmaskedValue?: string; - } - - export interface KeyupEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the mask edit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mask edit value - */ - value?: number; - - /** returns unstripped value in mask edit textbox control. - */ - unmaskedValue?: string; - } - - export interface MouseOutEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the mask edit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mask edit value - */ - value?: number; - - /** returns unstripped value in mask edit textbox control. - */ - unmaskedValue?: string; - } - - export interface MouseOverEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the mask edit model - */ - model?: ej.MaskEdit.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mask edit value - */ - value?: number; - - /** returns unstripped value in mask edit textbox control. - */ - unmaskedValue?: string; - } - } - enum InputMode { - //string - Password, - //string - Text, - } - enum TextAlign { - //string - Center, - //string - Justify, - //string - Left, - //string - Right, - } - - class Menu extends ej.Widget { - static fn: Menu; - constructor(element: JQuery | Element, options?: Menu.Model); - static Locale: any; - model: Menu.Model; - defaults: Menu.Model; - - /** Disables the Menu control. - * @returns {void} - */ - disable(): void; - - /** Specifies the Menu Item to be disabled by using the Menu Item Text. - * @param {string} Specifies the Menu Item Text to be disabled. - * @returns {void} - */ - disableItem(itemtext: string): void; - - /** Specifies the Menu Item to be disabled by using the Menu Item Id. - * @param {string|number} Specifies the Menu Item id to be disabled - * @returns {void} - */ - disableItemByID(itemid: string | number): void; - - /** Enables the Menu control. - * @returns {void} - */ - enable(): void; - - /** Specifies the Menu Item to be enabled by using the Menu Item Text. - * @param {string} Specifies the Menu Item Text to be enabled. - * @returns {void} - */ - enableItem(itemtext: string): void; - - /** Specifies the Menu Item to be enabled by using the Menu Item Id. - * @param {string|number} Specifies the Menu Item id to be enabled. - * @returns {void} - */ - enableItemByID(itemid: string | number): void; - - /** Hides the Context Menu control. - * @returns {void} - */ - hide(): void; - - /** Hides the specific items in Menu control. - * @returns {void} - */ - hideItems(): void; - - /** Insert the menu item as child of target node. - * @param {any} Information about Menu item. - * @param {string|any} Selector of target node or Object of target node. - * @returns {void} - */ - insert(item: any, target: string | any): void; - - /** Insert the menu item after the target node. - * @param {any} Information about Menu item. - * @param {string|any} Selector of target node or Object of target node. - * @returns {void} - */ - insertAfter(item: any, target: string | any): void; - - /** Insert the menu item before the target node. - * @param {any} Information about Menu item. - * @param {string|any} Selector of target node or Object of target node. - * @returns {void} - */ - insertBefore(item: any, target: string | any): void; - - /** Remove Menu item. - * @param {any|Array} Selector of target node or Object of target node. - * @returns {void} - */ - remove(target: any | any[]): void; - - /** To show the Menu control. - * @param {number} x co-ordinate position of context menu. - * @param {number} y co-ordinate position of context menu. - * @param {any} target element - * @param {any} name of the event - * @returns {void} - */ - show(locationX: number, locationY: number, targetElement: any, event: any): void; - - /** Show the specific items in Menu control. - * @returns {void} - */ - showItems(): void; - } - export namespace Menu { - - export interface Model { - - /** To enable or disable the Animation while hover or click an menu items.See AnimationType - * @Default {ej.AnimationType.Default} - */ - animationType?: ej.AnimationType | string; - - /** Specifies the target id of context menu. On right clicking the specified contextTarget element, context menu gets shown. - * @Default {null} - */ - contextMenuTarget?: string; - - /** Specifies the container element selectors for submenu’s collision. The submenu gets displayed based on spacing available with respect to container element. - * @Default {null} - */ - container?: string; - - /** Specify the CSS class to achieve custom theme. - */ - cssClass?: string; - - /** To enable or disable the Animation effect while hover or click an menu items. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Specifies the root menu items to be aligned center in horizontal menu. - * @Default {false} - */ - enableCenterAlign?: boolean; - - /** Enable / Disable the Menu control. - * @Default {true} - */ - enabled?: boolean; - - /** Specifies the menu items to be displayed in right to left direction. - * @Default {false} - */ - enableRTL?: boolean; - - /** When this property sets to false, the menu items is displayed without any separators. - * @Default {true} - */ - enableSeparator?: boolean; - - /** Specifies the target which needs to be excluded. i.e., The context menu will not be displayed in those specified targets. - * @Default {null} - */ - excludeTarget?: string; - - /** Fields used to bind the data source and it includes following field members to make data bind easier. - * @Default {null} - */ - fields?: Fields; - - /** Specifies the height of the root menu. - * @Default {auto} - */ - height?: string | number; - - /** Specifies the list of HTML attributes to be added to menu control. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Enables/disables responsive support for the Menu control during the window resizing time. - * @Default {true} - */ - isResponsive?: boolean; - - /** Specifies the type of the menu. Essential JavaScript Menu consists of two type of menu, they are Normal Menu and Context Menu mode.See MenuType - * @Default {ej.MenuType.NormalMenu} - */ - menuType?: string | ej.MenuType; - - /** Specifies the sub menu items to be show or open only on click. - * @Default {false} - */ - openOnClick?: boolean; - - /** Specifies the orientation of normal menu. Normal menu can rendered in horizontal or vertical direction by using this API. See Orientation - * @Default {ej.Orientation.Horizontal} - */ - orientation?: ej.Orientation | string; - - /** Specifies the main menu items arrows only to be shown if it contains child items. - * @Default {true} - */ - showRootLevelArrows?: boolean; - - /** Specifies the sub menu items arrows only to be shown if it contains child items. - * @Default {true} - */ - showSubLevelArrows?: boolean; - - /** Specifies position of pull down submenu that will appear on mouse over.See Direction - * @Default {ej.Direction.Right} - */ - subMenuDirection?: string | ej.Direction; - - /** Specifies the title to responsive menu. - * @Default {Menu} - */ - titleText?: string; - - /** Specifies the width of the main menu. - * @Default {auto} - */ - width?: string | number; - - /** Specifies the popup menu height. - * @Default {auto} - */ - overflowHeight?: string | number; - - /** Specifies the popup menu width. - * @Default {auto} - */ - overflowWidth?: string | number; - - /** Fires before context menu gets open. */ - beforeOpen?(e: BeforeOpenEventArgs): void; - - /** Fires when mouse click on menu items. */ - click?(e: ClickEventArgs): void; - - /** Fire when context menu on close. */ - close?(e: CloseEventArgs): void; - - /** Fires when context menu on open. */ - open?(e: OpenEventArgs): void; - - /** Fires to create menu items. */ - create?(e: CreateEventArgs): void; - - /** Fires to destroy menu items. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when key down on menu items. */ - keydown?(e: KeydownEventArgs): void; - - /** Fires when mouse out from menu items. */ - mouseout?(e: MouseoutEventArgs): void; - - /** Fires when mouse over the Menu items. */ - mouseover?(e: MouseoverEventArgs): void; - - /** Fires when overflow popup menu opens. */ - overflowOpen?(e: OverflowOpenEventArgs): void; - - /** Fires when overflow popup menu closes. */ - overflowClose?(e: OverflowCloseEventArgs): void; - } - - export interface BeforeOpenEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the target element - */ - target?: any; - } - - export interface ClickEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns clicked menu item text - */ - text?: string; - - /** returns clicked menu item element - */ - element?: any; - - /** returns the event - */ - event?: any; - - /** returns the selected item - */ - selectedItem?: number; - } - - export interface CloseEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the target element - */ - target?: any; - } - - export interface OpenEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the target element - */ - target?: any; - } - - export interface CreateEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface KeydownEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns clicked menu item text - */ - menuText?: string; - - /** returns clicked menu item element - */ - element?: any; - - /** returns the event - */ - event?: any; - } - - export interface MouseoutEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns clicked menu item text - */ - text?: string; - - /** returns clicked menu item element - */ - element?: any; - - /** returns the event - */ - event?: any; - } - - export interface MouseoverEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns clicked menu item text - */ - text?: string; - - /** returns clicked menu item element - */ - element?: any; - - /** returns the event - */ - event?: any; - } - - export interface OverflowOpenEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the event object - */ - e?: any; - - /** if the event should be cancelled ; otherwise ,false - */ - cancel?: boolean; - } - - export interface OverflowCloseEventArgs { - - /** returns the menu model - */ - model?: ej.Menu.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the event object - */ - e?: any; - - /** if the event should be cancelled ; otherwise ,false - */ - cancel?: boolean; - } - - export interface Fields { - - /** It receives the child data for the inner level. - */ - child?: any; - - /** It receives datasource as Essential DataManager object and JSON object. - */ - dataSource?: any; - - /** Specifies the HTML attributes to “LI” item list. - */ - htmlAttribute?: string; - - /** Specifies the id to menu items list - */ - id?: string; - - /** Specifies the image attribute to “img” tag inside items list. - */ - imageAttribute?: string; - - /** Specifies the image URL to “img” tag inside item list. - */ - imageUrl?: string; - - /** Adds custom attributes like "target" to the anchor tag of the menu items. - */ - linkAttribute?: string; - - /** Specifies the parent id of the table. - */ - parentId?: string; - - /** It receives query to retrieve data from the table (query is same as SQL). - */ - query?: any; - - /** Specifies the sprite CSS class to “LI” item list. - */ - spriteCssClass?: string; - - /** It receives table name to execute query on the corresponding table. - */ - tableName?: string; - - /** Specifies the text of menu items list. - */ - text?: string; - - /** Specifies the URL to the anchor tag in menu item list. - */ - url?: string; - } - } - enum AnimationType { - //string - Default, - //string - None, - } - enum MenuType { - //string - ContextMenu, - //string - NormalMenu, - } - enum Direction { - //string - Left, - //string - None, - //string - Right, - } - - class Pager extends ej.Widget { - static fn: Pager; - constructor(element: JQuery | Element, options?: Pager.Model); - static Locale: any; - model: Pager.Model; - defaults: Pager.Model; - - /** Send a paging request to specified page through the pager control. - * @param {number} Specifies the index to be navigated - * @returns {void} - */ - gotoPage(pageIndex: number): void; - - /** refreshPager() helps to refresh the model value of pager control. - * @returns {void} - */ - refreshPager(): void; - } - export namespace Pager { - - export interface Model { - - /** Gets or sets a value that indicates whether to display the custom text message in Pager. - */ - customText?: string; - - /** Gets or sets a value that indicates whether to define which page to display currently in pager. - * @Default {1} - */ - currentPage?: number; - - /** Gets or sets a value that indicates whether to display the external Message in Pager. - * @Default {false} - */ - enableExternalMessage?: boolean; - - /** Gets or sets a value that indicates whether to pass the current page information as a query string along with the URL while navigating to other page. - * @Default {false} - */ - enableQueryString?: boolean; - - /** Align content in the pager control from right to left by setting the property as true. - * @Default {false} - */ - enableRTL?: boolean; - - /** Gets or sets a value that indicates whether to display the external Message in Pager. - */ - externalMessage?: string; - - /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data i.e. - * in a language and culture specific to a particular country or region. - * @Default {en-US} - */ - locale?: string; - - /** Gets or sets a value that indicates whether to define the number of pages displayed in the pager for navigation. - * @Default {10} - */ - pageCount?: number; - - /** Gets or sets a value that indicates whether to define the number of records displayed per page. - * @Default {12} - */ - pageSize?: number; - - /** Get or sets a value of total number of pages in the pager. The totalPages value is calculated based on page size and total records. - * @Default {null} - */ - totalPages?: number; - - /** Get the value of total number of records which is bound to a data item. - * @Default {null} - */ - totalRecordsCount?: number; - - /** Shows or hides the current page information in pager footer. - * @Default {true} - */ - showPageInfo?: boolean; - - /** Triggered when pager numeric item is clicked in pager control. */ - click?(e: ClickEventArgs): void; - } - - export interface ClickEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the current page index. - */ - currentPage?: number; - - /** Returns the pager model. - */ - model?: any; - - /** Returns the name of event - */ - type?: string; - - /** Returns current action event type and its target. - */ - event?: any; - } - } - - class Print extends ej.Widget { - static fn: Print; - constructor(element: JQuery | Element, options?: Print.Model); - static Locale: any; - model: Print.Model; - defaults: Print.Model; - - /** Print the specific page or an element. - * @returns {void} - */ - print(): void; - } - - export namespace Print { - - export interface Model { - - /** Append the custom HTML after the selected content. - * @Default {null} - */ - append?: string; - - /** A selector that specifies a particular element to be excluded from printing. - * @Default {null} - */ - excludeSelector?: string; - - /** Specifies whether the URL of an external stylesheet can be included to customize and print that page. - * @Default {null} - */ - externalStyles?: string; - - /** Prepend a doctype to the document frame. - * @Default {<!doctype html>} - */ - docType?: string; - - /** Specifies whether the global styles can be applied to the element to be printed. - * @Default {true} - */ - globalStyles?: boolean; - - /** Sets the height of the print window. - * @Default {454} - */ - height?: number; - - /** Prepends the custom HTML before the selected content. - * @Default {null} - */ - prepend?: string; - - /** Allows printing the content in a new window. - * @Default {false} - */ - printInNewWindow?: boolean; - - /** Sets the period of time to wait before printing the content. - * @Default {1000} - */ - timeOutPeriod?: number; - - /** Sets the title of the print document. - * @Default {null} - */ - title?: string; - - /** Defines the width of the print window. - * @Default {1024} - */ - width?: number; - - /** Event triggers before the document page or an element in it gets printed. */ - beforeStart?(e: BeforeStartEventArgs): void; - } - - export interface BeforeStartEventArgs { - - /** Set this option as true to cancel the event. - */ - cancel?: boolean; - - /** Returns the Print model - */ - model?: ej.Print.Model; - - /** Returns the name of an event - */ - type?: string; - - /** Returns the printed element - */ - content?: any; - } - } - - class ProgressBar extends ej.Widget { - static fn: ProgressBar; - constructor(element: JQuery | Element, options?: ProgressBar.Model); - static Locale: any; - model: ProgressBar.Model; - defaults: ProgressBar.Model; - - /** Destroy the progressbar widget - * @returns {void} - */ - destroy(): void; - - /** Disables the progressbar control - * @returns {void} - */ - disable(): void; - - /** Enables the progressbar control - * @returns {void} - */ - enable(): void; - - /** Returns the current progress value in percent. - * @returns {number} - */ - getPercentage(): number; - - /** Returns the current progress value - * @returns {number} - */ - getValue(): number; - } - export namespace ProgressBar { - - export interface Model { - - /** Sets the root CSS class for ProgressBar theme, which is used customize. - * @Default {null} - */ - cssClass?: string; - - /** When this property sets to false, it disables the ProgressBar control - * @Default {true} - */ - enabled?: boolean; - - /** Save current model value to browser cookies for state maintains. While refresh the progressBar control page retains the model value apply from browser cookies - * @Default {false} - */ - enablePersistence?: boolean; - - /** Sets the ProgressBar direction as right to left alignment. - * @Default {false} - */ - enableRTL?: boolean; - - /** Defines the height of the ProgressBar. - * @Default {null} - */ - height?: number | string; - - /** It allows to define the characteristics of the progressBar control. It will helps to extend the capability of an HTML element. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Sets the maximum value of the ProgressBar. - * @Default {100} - */ - maxValue?: number; - - /** Sets the minimum value of the ProgressBar. - * @Default {0} - */ - minValue?: number; - - /** Sets the ProgressBar value in percentage. The value should be in between 0 to 100. - * @Default {0} - */ - percentage?: number; - - /** Displays rounded corner borders on the progressBar control. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Sets the custom text for the ProgressBar. The text placed in the middle of the ProgressBar and it can be customizable using the class 'e-progress-text'. - * @Default {null} - */ - text?: string; - - /** Sets the ProgressBar value. The value should be in between min and max values. - * @Default {0} - */ - value?: number; - - /** Defines the width of the ProgressBar. - * @Default {null} - */ - width?: number | string; - - /** Event triggers when the progress value changed */ - change?(e: ChangeEventArgs): void; - - /** Event triggers when the process completes (at 100%) */ - complete?(e: CompleteEventArgs): void; - - /** Event triggers when the progressbar are created */ - create?(e: CreateEventArgs): void; - - /** Event triggers when the progressbar are destroyed */ - destroy?(e: DestroyEventArgs): void; - - /** Event triggers when the process starts (from 0%) */ - start?(e: StartEventArgs): void; - } - - export interface ChangeEventArgs { - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the ProgressBar model - */ - model?: ej.ProgressBar.Model; - - /** returns the current progress percentage - */ - percentage?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the current progress value - */ - value?: string; - } - - export interface CompleteEventArgs { - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the ProgressBar model - */ - model?: ej.ProgressBar.Model; - - /** returns the current progress percentage - */ - percentage?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the current progress value - */ - value?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the progressbar model - */ - model?: ej.ProgressBar.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the progressbar model - */ - model?: ej.ProgressBar.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface StartEventArgs { - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the ProgressBar model - */ - model?: ej.ProgressBar.Model; - - /** returns the current progress percentage - */ - percentage?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the current progress value - */ - value?: string; - } - } - - class RadioButton extends ej.Widget { - static fn: RadioButton; - constructor(element: JQuery | Element, options?: RadioButton.Model); - static Locale: any; - model: RadioButton.Model; - defaults: RadioButton.Model; - - /** To disable the RadioButton - * @returns {void} - */ - disable(): void; - - /** To enable the RadioButton - * @returns {void} - */ - enable(): void; - } - export namespace RadioButton { - - export interface Model { - - /** Specifies the check attribute of the Radio Button. - * @Default {false} - */ - checked?: boolean; - - /** Specify the CSS class to RadioButton to achieve custom theme. - */ - cssClass?: string; - - /** Specifies the RadioButton control state. - * @Default {true} - */ - enabled?: boolean; - - /** Specifies the enablePersistence property for RadioButton while initialization. The enablePersistence API save current model value to browser cookies for state maintains. - * While refreshing the radio button control page the model value apply from browser cookies. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Specify the Right to Left direction to RadioButton - * @Default {false} - */ - enableRTL?: boolean; - - /** Specifies the HTML Attributes of the Checkbox - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specifies the id attribute for the Radio Button while initialization. - * @Default {null} - */ - id?: string; - - /** Specify the idPrefix value to be added before the current id of the RadioButton. - * @Default {ej} - */ - idPrefix?: string; - - /** Specifies the name attribute for the Radio Button while initialization. - * @Default {Sets id as name if it is null} - */ - name?: string; - - /** Specifies the size of the RadioButton. - * @Default {small} - */ - size?: ej.RadioButtonSize | string; - - /** Specifies the text content for RadioButton. - */ - text?: string; - - /** Set the jQuery validation error message in radio button. - * @Default {null} - */ - validationMessage?: any; - - /** Set the jQuery validation rules in radio button. - * @Default {null} - */ - validationRules?: any; - - /** Specifies the value attribute of the Radio Button. - * @Default {null} - */ - value?: string; - - /** Fires before the RadioButton is going to changed its state successfully */ - beforeChange?(e: BeforeChangeEventArgs): void; - - /** Fires when the RadioButton state is changed successfully */ - change?(e: ChangeEventArgs): void; - - /** Fires when the RadioButton created successfully */ - create?(e: CreateEventArgs): void; - - /** Fires when the RadioButton destroyed successfully */ - destroy?(e: DestroyEventArgs): void; - } - - export interface BeforeChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RadioButton model - */ - model?: ej.RadioButton.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns true if element is checked, otherwise returns false - */ - isChecked?: boolean; - - /** returns true if change event triggered by interaction, otherwise returns false - */ - isInteraction?: boolean; - } - - export interface ChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RadioButton model - */ - model?: ej.RadioButton.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns true if element is checked, otherwise returns false - */ - isChecked?: boolean; - - /** returns true if change event triggered by interaction, otherwise returns false - */ - isInteraction?: boolean; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RadioButton model - */ - model?: ej.RadioButton.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RadioButton model - */ - model?: ej.RadioButton.Model; - - /** returns the name of the event - */ - type?: string; - } - } - enum RadioButtonSize { - //Shows small size radio button - Small, - //Shows medium size radio button - Medium, - } - - class Rating extends ej.Widget { - static fn: Rating; - constructor(element: JQuery | Element, options?: Rating.Model); - static Locale: any; - model: Rating.Model; - defaults: Rating.Model; - - /** Destroy the Rating widget all events bound will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** To get the current value of rating control. - * @returns {number} - */ - getValue(): number; - - /** To hide the rating control. - * @returns {void} - */ - hide(): void; - - /** User can refresh the rating control to identify changes. - * @returns {void} - */ - refresh(): void; - - /** To reset the rating value. - * @returns {void} - */ - reset(): void; - - /** To set the rating value. - * @param {string|number} Specifies the rating value. - * @returns {void} - */ - setValue(value: string | number): void; - - /** To show the rating control - * @returns {void} - */ - show(): void; - } - export namespace Rating { - - export interface Model { - - /** Enables the rating control with reset button.It can be used to reset the rating control value. - * @Default {true} - */ - allowReset?: boolean; - - /** Specify the CSS class to achieve custom theme. - */ - cssClass?: string; - - /** When this property is set to false, it disables the rating control. - * @Default {true} - */ - enabled?: boolean; - - /** Save current model value to browser cookies for state maintenance. While refresh the page Rating control values are retained. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Specifies the height of the Rating control wrapper. - * @Default {null} - */ - height?: string; - - /** Specifies the list of HTML attributes to be added to rating control. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specifies the value to be increased while navigating between shapes(stars) in Rating control. - * @Default {1} - */ - incrementStep?: number; - - /** Allow to render the maximum number of Rating shape(star). - * @Default {5} - */ - maxValue?: number; - - /** Allow to render the minimum number of Rating shape(star). - * @Default {0} - */ - minValue?: number; - - /** Specifies the orientation of Rating control. See Orientation - * @Default {ej.Rating.Orientation.Horizontal} - */ - orientation?: ej.Orientation | string; - - /** Helps to provide more precise ratings.Rating control supports three precision modes - full, half, and exact. See Precision - * @Default {full} - */ - precision?: ej.Rating.Precision | string; - - /** Interaction with Rating control can be prevented by enabling this API. - * @Default {false} - */ - readOnly?: boolean; - - /** To specify the height of each shape in Rating control. - * @Default {23} - */ - shapeHeight?: number; - - /** To specify the width of each shape in Rating control. - * @Default {23} - */ - shapeWidth?: number; - - /** Enables the tooltip option.Currently selected value will be displayed in tooltip. - * @Default {true} - */ - showTooltip?: boolean; - - /** To specify the number of stars to be selected while rendering. - * @Default {1} - */ - value?: number; - - /** Specifies the width of the Rating control wrapper. - * @Default {null} - */ - width?: string; - - /** Fires when Rating value changes. */ - change?(e: ChangeEventArgs): void; - - /** Fires when Rating control is clicked successfully. */ - click?(e: ClickEventArgs): void; - - /** Fires when Rating control is created. */ - create?(e: CreateEventArgs): void; - - /** Fires when Rating control is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when mouse hover is removed from Rating control. */ - mouseout?(e: MouseoutEventArgs): void; - - /** Fires when mouse hovered over the Rating control. */ - mouseover?(e: MouseoverEventArgs): void; - } - - export interface ChangeEventArgs { - - /** returns the current value. - */ - value?: number; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the rating model - */ - model?: ej.Rating.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mouse click event args values. - */ - event?: any; - } - - export interface ClickEventArgs { - - /** returns the current value. - */ - value?: number; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the rating model - */ - model?: ej.Rating.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mouse click event args values. - */ - event?: any; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the rating model - */ - model?: ej.Rating.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the rating model - */ - model?: ej.Rating.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface MouseoutEventArgs { - - /** returns the current value. - */ - value?: number; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the rating model - */ - model?: ej.Rating.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mouse click event args values. - */ - event?: any; - } - - export interface MouseoverEventArgs { - - /** returns the current value. + /** Sets the offset of the dragging helper relative to the mouse cursor. + * @Default {{ top: -1, left: -2 }} */ - value?: number; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the rating model - */ - model?: ej.Rating.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the mouse click event args values. - */ - event?: any; - - /** returns the current index value. - */ - index?: any; - } - - enum Precision { - - ///string - Exact, - - ///string - Full, - - ///string - Half - } - - } - - class Ribbon extends ej.Widget { - static fn: Ribbon; - constructor(element: JQuery | Element, options?: Ribbon.Model); - static Locale: any; - model: Ribbon.Model; - defaults: Ribbon.Model; - - /** Adds contextual tab or contextual tab set dynamically in the ribbon control with contextual tabs object and index position. - * When index is null, ribbon contextual tab or contextual tab set is added at the last index. - * @param {any} contextual tab or contextual tab set object. - * @param {number} index of the contextual tab or contextual tab set, this is optional. - * @returns {void} - */ - addContextualTabs(contextualTabSet: any, index?: number): void; - - /** Add new option to Backstage page. - * @param {any} select the object to add the backstage item - * @param {number} index to the backstage item this is optional. - * @returns {void} - */ - addBackStageItem(item: any, index?: number): void; - - /** Adds tab dynamically in the ribbon control with given name, tab group array and index position. When index is null, ribbon tab is added at the last index. - * @param {string} ribbon tab display text. - * @param {Array} groups to be displayed in ribbon tab . - * @param {number} index of the ribbon tab,this is optional. - * @returns {void} - */ - addTab(tabText: string, ribbonGroups: any[], index?: number): void; - - /** Adds tab group dynamically in the ribbon control with given tab index, tab group object and group index position. When group index is null, ribbon group is added at the last index. - * @param {number} ribbon tab index. - * @param {any} group to be displayed in ribbon tab . - * @param {number} index of the ribbon group,this is optional. - * @returns {void} - */ - addTabGroup(tabIndex: number, tabGroup: any, groupIndex?: number): void; - - /** Adds group content dynamically in the ribbon control with given tab index, group index, sub group index, content and content index position. - * When content index is null, content is added at the last index. - * @param {number} ribbon tab index. - * @param {number} ribbon group index. - * @param {any} content to be displayed in the ribbon group. - * @param {number} ribbon content index. This is optional. If the value is not given, then by default contentIndex will be considered as 0. - * @param {number} sub group index in the ribbon group. This is optional. If the value is not given, then by default contentIndex will be considered as 0. - * @returns {void} - */ - addTabGroupContent(tabIndex: number, groupIndex: number, content: any, contentIndex?: number, subGroupIndex?: number): void; - - /** Hides the ribbon backstage page. - * @returns {void} - */ - hideBackstage(): void; - - /** Collapses the ribbon tab content. - * @returns {void} - */ - collapse(): void; - - /** Destroys the ribbon widget. All the events bound using this._on are unbound automatically and the ribbon control is moved to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** Expands the ribbon tab content. - * @returns {void} - */ - expand(): void; - - /** Gets text of the given index tab in the ribbon control. - * @param {number} index of the tab item. - * @returns {String} - */ - getTabText(index: number): string; - - /** Hides the given text tab in the ribbon control. - * @param {string} text of the tab item. - * @returns {void} - */ - hideTab(text: string): void; - - /** Checks whether the given text tab in the ribbon control is enabled or not. - * @param {string} text of the tab item. - * @returns {Boolean} - */ - isEnable(text: string): boolean; - - /** Checks whether the given text tab in the ribbon control is visible or not. - * @param {string} text of the tab item. - * @returns {Boolean} - */ - isVisible(text: string): boolean; - - /** Removes the given index tab item from the ribbon control. - * @param {number} index of tab item. - * @returns {void} - */ - removeTab(index: number): void; - - /** Sets new text to the given text tab in the ribbon control. - * @param {string} current text of the tab item. - * @param {string} new text of the tab item. - * @returns {void} - */ - setTabText(tabText: string, newText: string): void; - - /** Displays the ribbon backstage page. - * @returns {void} - */ - showBackstage(): void; - - /** Displays the given text tab in the ribbon control. - * @param {string} text of the tab item. - * @returns {void} - */ - showTab(text: string): void; - - /** To customize Group alone in the inside content. - * @param {number} ribbon tab index. - * @param {string} group id to be displayed in ribbon tab . - * @param {any} contentGroup is used in the object - * @returns {void} - */ - updateGroup(tabIndex: number, groupId: string, contentGroup?: any): void; - - /** Update option in existing Backstage. - * @param {number} index to the backstage item - * @param {any} select the object to add the backstage item - * @returns {void} - */ - updateBackStageItem(index: number, item?: any): void; - - /** To customize whole content from Tab Group. - * @param {number} ribbon tab index. - * @param {string} ribbon group text. - * @param {number} ribbon content index. This is optional. If the value is not given, all content groups will be removed. - * @param {number} sub group index in the ribbon group. This is optional. If the value is not given, all content groups will be removed. - * @returns {void} - */ - removeTabGroupContent(tabIndex: number, groupText: string, contentIndex?: number, subGroupIndex?: number): void; - - /** Remove option from Backstage. - * @param {number} index to the backstage item - * @returns {void} - */ - removeBackStageItem(index: number): void; - } - export namespace Ribbon { - - export interface Model { - - /** Enables the ribbon resize feature.allowResizing is a deprecated property of isResponsive. - * @Default {false} - */ - allowResizing?: boolean; - - /** When set to true, adapts the Ribbon layout to fit the screen size of devices on which it renders. - * @Default {false} - */ - isResponsive?: boolean; - - /** Specifies the height, width, enableRTL, showRoundedCorner,enabled,cssClass property to the controls in the ribbon commonly andit will work only when those properties - * are not defined in buttonSettings and content defaults. - * @Default {Object} - */ - buttonDefaults?: any; - - /** Property to enable the ribbon quick access toolbar. - * @Default {false} - */ - showQAT?: boolean; - - /** Sets custom setting to the collapsible pin in the ribbon. - * @Default {Object} - */ - collapsePinSettings?: CollapsePinSettings; - - /** Set enableOnDemand as true to load ribbon tab and backstage contents while corresponding item clicked. - * @Default {false} - */ - enableOnDemand?: boolean; - - /** Set collapsible property as true to render ribbon in initially collapsed state. - * @Default {false} - */ - collapsible?: boolean; - - /** Align content in the ribbon control from right to left by setting the property as true. - * @Default {false} - */ - enableRTL?: boolean; - - /** Sets custom setting to the expandable pin in the ribbon. - * @Default {Object} - */ - expandPinSettings?: ExpandPinSettings; - - /** Specifies the application tab to contain application menu or backstage page in the ribbon control. - * @Default {Object} - */ - applicationTab?: ApplicationTab; - - /** Specifies the contextual tabs and tab set to the ribbon control with the background color and border color. Refer to the tabs section for adding tabs - * into the contextual tab and contextual tab set. - * @Default {Array} - */ - contextualTabs?: ContextualTab[]; - - /** Specifies the index or indexes to disable the given index tab or indexes tabs in the ribbon control. - * @Default {0} - */ - disabledItemIndex?: any[]; - - /** Specifies the index or indexes to enable the given index tab or indexes tabs in the ribbon control. - * @Default {null} - */ - enabledItemIndex?: any[]; - - /** Specifies the index of the ribbon tab to select the given index tab item in the ribbon control. - * @Default {1} - */ - selectedItemIndex?: number; - - /** Specifies the tabs and its groups. Also specifies the control details that has to be placed in the tab area in the ribbon control. - * @Default {Array} - */ - tabs?: Tab[]; - - /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data i.e. in a language and culture specific - * to a particular country or region and it will need to use the user's preference. - * @Default {en-US} - */ - locale?: string; - - /** Specifies the width to the ribbon control. You can set width in string or number format. - * @Default {null} - */ - width?: string | number; + cursorAt?: any; - /** Triggered before the ribbon tab item is removed. */ - beforeTabRemove?(e: BeforeTabRemoveEventArgs): void; - - /** Triggered before the ribbon control is created. */ - create?(e: CreateEventArgs): void; + /** Distance in pixels after mousedown the mouse must move before dragging should start. This option can be used to prevent unwanted drags when clicking on an element. + * @Default {1} + */ + distance?: number; - /** Triggered before the ribbon control is destroyed. */ - destroy?(e: DestroyEventArgs): void; + /** The drag area is used to restrict the dragging element bounds.Specify the id of the container within which the element should be dragged. + * @Default {null} + */ + dragArea?: boolean; - /** Triggered when the control in the group is clicked successfully. */ - groupClick?(e: GroupClickEventArgs): void; + /** If specified, restricts drag start click to the specified element(s). + * @Default {null} + */ + handle?: string; - /** Triggered when the group expander in the group is clicked successfully. */ - groupExpand?(e: GroupExpandEventArgs): void; + /** Used to group sets of draggable and droppable items, in addition to droppable's accept option. A draggable with the same scope value as a droppable will be accepted by the + * droppable. + * @Default {'default'} + */ + scope?: string; - /** Triggered when an item in the Gallery control is clicked successfully. */ - galleryItemClick?(e: GalleryItemClickEventArgs): void; + /** This event is triggered when dragging element is destroyed. + */ + destroy?(e: DestroyEventArgs): void; - /** Triggered when a tab or button in the backstage page is clicked successfully. */ - backstageItemClick?(e: BackstageItemClickEventArgs): void; + /** This event is triggered when the mouse is moved during the dragging. + */ + drag?(e: DragEventArgs): void; - /** Triggered when the ribbon control is collapsed. */ - collapse?(e: CollapseEventArgs): void; + /** Supply a callback function to handle the drag start event as an init option. + */ + dragStart?(e: DragStartEventArgs): void; - /** Triggered when the ribbon control is expanded. */ - expand?(e: ExpandEventArgs): void; + /** This event is triggered when the mouse is moved during the dragging. + */ + dragStop?(e: DragStopEventArgs): void; - /** Triggered before the ribbon control is load. */ - load?(e: LoadEventArgs): void; + /** This event is triggered when dragged. + */ + helper?(e: HelperEventArgs): void; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the autocomplete model + */ + model?: ej.Draggable.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DragEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the draggable model + */ + model?: ej.Draggable.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the event model values + */ + event?: any; + + /** returns the exact mouse down target element + */ + target?: any; + } + + export interface DragStartEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the draggable model + */ + model?: ej.Draggable.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the event model values + */ + event?: any; + + /** returns the exact mouse down target element + */ + target?: any; + } + + export interface DragStopEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the draggable model + */ + model?: ej.Draggable.Model; + + /** returns the name of the event + */ + type?: string; - /** Triggered after adding the new ribbon tab item. */ - tabAdd?(e: TabAddEventArgs): void; + /** returns the event model values + */ + event?: any; - /** Triggered when tab is clicked successfully in the ribbon control. */ - tabClick?(e: TabClickEventArgs): void; + /** returns the exact mouse down target element + */ + target?: any; + } - /** Triggered before the ribbon tab is created. */ - tabCreate?(e: TabCreateEventArgs): void; + export interface HelperEventArgs { - /** Triggered after the tab item is removed from the ribbon control. */ - tabRemove?(e: TabRemoveEventArgs): void; + /** returns the draggable element object + */ + element?: any; - /** Triggered after the ribbon tab item is selected in the ribbon control. */ - tabSelect?(e: TabSelectEventArgs): void; + /** returns the event model values + */ + sender?: any; + } + } + + class Droppable extends ej.Widget { + static fn: Droppable; + constructor(element: JQuery | Element, options?: Droppable.Model); + static Locale: any; + model: Droppable.Model; + defaults: Droppable.Model; + + /** destroy in the Droppable. + * @returns {void} + */ + _destroy(): void; + } + export namespace Droppable { + + export interface Model { + + /** Used to accept the specified draggable items. + * @Default {null} + */ + accept?: any; + + /** Used to group sets of droppable items, in addition to droppable's accept option. A draggable with the same scope value as a droppable will be accepted by the droppable. + * @Default {'default'} + */ + scope?: string; + + /** This event is triggered when the mouse up is moved during the dragging. + */ + drop?(e: DropEventArgs): void; + + /** This event is triggered when the mouse is moved out. + */ + out?(e: OutEventArgs): void; + + /** This event is triggered when the mouse is moved over. + */ + over?(e: OverEventArgs): void; + } + + export interface DropEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the autocomplete model + */ + model?: ej.Droppable.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the element which accepts the droppable element. + */ + target?: any; + } + + export interface OutEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the autocomplete model + */ + model?: ej.Droppable.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mouse out over the element + */ + target?: any; + } + + export interface OverEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the autocomplete model + */ + model?: ej.Droppable.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mouse over the element + */ + target?: any; + } + } + + class Resizable extends ej.Widget { + static fn: Resizable; + constructor(element: JQuery | Element, options?: Resizable.Model); + static Locale: any; + model: Resizable.Model; + defaults: Resizable.Model; + + /** destroy in the Resizable. + * @returns {void} + */ + _destroy(): void; + } + export namespace Resizable { + + export interface Model { + + /** Sets the offset of the resizing helper relative to the mouse cursor. + * @Default {{ top: -1, left: -2 }} + */ + cursorAt?: any; + + /** Distance in pixels after mousedown the mouse must move before resizing should start. This option can be used to prevent unwanted drags when clicking on an element. + * @Default {1} + */ + distance?: number; + + /** If specified, restricts resize start click to the specified element(s). + * @Default {null} + */ + handle?: string; + + /** Sets the max height for resizing + * @Default {null} + */ + maxHeight?: number; + + /** Sets the max width for resizing + * @Default {null} + */ + maxWidth?: number; + + /** Sets the min Height for resizing + * @Default {10} + */ + minHeight?: number; + + /** Sets the min Width for resizing + * @Default {10} + */ + minWidth?: number; + + /** Used to group sets of resizable items. + * @Default {'default'} + */ + scope?: string; + + /** This event is triggered when the widget destroys. + */ + destroy?(e: DestroyEventArgs): void; + + /** This event is triggered when resized. + */ + helper?(e: HelperEventArgs): void; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the autocomplete model + */ + model?: ej.Resizable.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface HelperEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the autocomplete model + */ + model?: ej.Resizable.Model; + + /** returns the name of the event + */ + type?: string; + } + } + + const globalize: globalize; + const cultures: culture; + function addCulture(name: string, culture?: any): void; + function preferredCulture(culture?: string): culture; + function format(value: any, format: string, culture?: string): string; + function parseInt(value: string, radix?: any, culture?: string): number; + function parseFloat(value: string, radix?: any, culture?: string): number; + function parseDate(value: string, format: string, culture?: string): Date; + function getLocalizedConstants(controlName: string, culture?: string): any; + + interface globalize { + addCulture(name: string, culture?: any): void; + preferredCulture(culture?: string): culture; + format(value: any, format: string, culture?: string): string; + parseInt(value: string, radix?: any, culture?: string): number; + parseFloat(value: string, radix?: any, culture?: string): number; + parseDate(value: string, format: string, culture?: string): Date; + getLocalizedConstants(controlName: string, culture?: string): any; + } + interface culture { + name?: string; + englishName?: string; + namtiveName?: string; + language?: string; + isRTL: boolean; + numberFormat?: formatSettings; + calendars?: calendarsSettings; + } + interface formatSettings { + pattern: string[]; + decimals: number; + groupSizes: number[]; + percent: percentSettings; + currency: currencySettings; + } + interface percentSettings { + pattern: string[]; + decimals: number; + groupSizes: number[]; + symbol: string; + } + interface currencySettings { + pattern: string[]; + decimals: number; + groupSizes: number[]; + symbol: string; + } + interface calendarsSettings { + standard: standardSettings; + } + interface standardSettings { + firstDay: number; + days: daySettings; + months: monthSettings; + AM: string[]; + PM: string[]; + twoDigitYearMax: number; + patterns: patternSettings; + } + interface daySettings { + names: string[]; + namesAbbr: string[]; + namesShort: string[]; + } + interface monthSettings { + names: string[]; + namesAbbr: string[]; + } + interface patternSettings { + d: string; + D: string; + t: string; + T: string; + f: string; + F: string; + M: string; + Y: string; + S: string; + } + class Scroller extends ej.Widget { + static fn: Scroller; + constructor(element: JQuery | Element, options?: Scroller.Model); + static Locale: any; + model: Scroller.Model; + defaults: Scroller.Model; + + /** destroy the Scroller control, unbind the all ej control related events automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** User disables the Scroller control at any time. + * @returns {void} + */ + disable(): void; + + /** User enables the Scroller control at any time. + * @returns {void} + */ + enable(): void; + + /** Returns true if horizontal scrollbar is shown, else return false. + * @returns {boolean} + */ + isHScroll(): boolean; + + /** Returns true if vertical scrollbar is shown, else return false. + * @returns {boolean} + */ + isVScroll(): boolean; + + /** User refreshes the Scroller control at any time. + * @returns {void} + */ + refresh(): void; + + /** Horizontal scroller moves to given pixel from its origin position. We can also specify the animation speed,in which the scroller has to move while re-positioning it. + * @param {number|string} Horizontal scroller moves to the specified pixel. + * @param {boolean} Specifies to enable/disable the animation. + * @param {number} Specifies the animation speed when scrolling, if animation is enabled. + * @returns {void} + */ + scrollX(pixel: number|string, disableAnimation: boolean, animationSpeed: number): void; + + /** Vertical scroller moves to given pixel from its origin position. We can also specify the animation speed,in which the scroller has to move while re-positioning it. + * @param {number|string} Vertical scroller moves to the specified pixel. + * @param {boolean} Specifies to enable/disable the animation. + * @param {number} Specifies the animation speed when scrolling, if animation is enabled. + * @returns {void} + */ + scrollY(pixel: number|string, disableAnimation: boolean, animationSpeed: number): void; + } + export namespace Scroller { + + export interface Model { + + /** Specifies the swipe scrolling speed(in millisecond). + * @Default {600} + */ + animationSpeed?: number; + + /** Set true to hides the scrollbar, when mouseout the content area. + * @Default {false} + */ + autoHide?: boolean; + + /** Specifies the height and width of button in the scrollbar. + * @Default {18} + */ + buttonSize?: number; + + /** Specifies to enable or disable the scroller + * @Default {true} + */ + enabled?: boolean; + + /** Save current model value to browser cookies for state maintenance. While refresh the page Rating control values are retained. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Indicates the Right to Left direction to scroller + * @Default {undefined} + */ + enableRTL?: boolean; + + /** Enables or Disable the touch Scroll + * @Default {true} + */ + enableTouchScroll?: boolean; + + /** Specifies the height of Scroll panel and scrollbars. + * @Default {250} + */ + height?: number|string; + + /** If the scrollbar has vertical it set as width, else it will set as height of the handler. + * @Default {18} + */ + scrollerSize?: number; + + /** The Scroller content and scrollbars move left with given value. + * @Default {0} + */ + scrollLeft?: number; + + /** While press on the arrow key the scrollbar position added to the given pixel value. + * @Default {57} + */ + scrollOneStepBy?: number; + + /** The Scroller content and scrollbars move to top position with specified value. + * @Default {0} + */ + scrollTop?: number; + + /** Indicates the target area to which scroller have to appear. + * @Default {null} + */ + targetPane?: string; + + /** Specifies the width of Scroll panel and scrollbars. + * @Default {0} + */ + width?: number|string; + + /** Fires when Scroller control is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires when Scroller control is destroyed. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when a thumb point is moved along the touch surface. + */ + thumbMove?(e: ThumbMoveEventArgs): void; + + /** Fires when a thumb point is placed on the touch surface. + */ + thumbStart?(e: ThumbStartEventArgs): void; + + /** Fires when a thumb point is removed from the touch surface. + */ + thumbEnd?(e: ThumbEndEventArgs): void; + + /** It fires whenever the mouse wheel is rotated either in upwards or downwards. + */ + wheelMove?(e: WheelMoveEventArgs): void; + + /** It will fire when mouse trackball has been start to wheel. + */ + wheelStart?(e: WheelStartEventArgs): void; + + /** It will fire when mouse trackball has been stop to wheel. + */ + wheelStop?(e: WheelStopEventArgs): void; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the scroller model + */ + model?: ej.Scroller.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface DestroyEventArgs { - /** Triggered when the expand/collapse button is clicked successfully . */ - toggleButtonClick?(e: ToggleButtonClickEventArgs): void; + /** returns the scroller model + */ + model?: ej.Scroller.Model; - /** Triggered when the QAT menu item is clicked successfully . */ - qatMenuItemClick?(e: QatMenuItemClickEventArgs): void; - } + /** returns the name of the event. + */ + type?: string; + } - export interface BeforeTabRemoveEventArgs { + export interface ThumbMoveEventArgs { - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the ribbon model. - */ - model?: any; + /** returns the scroller model + */ + model?: ej.Scroller.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the original event name and its event properties of the current event. + */ + originalEvent?: any; - /** returns current tab item index in the ribbon control. - */ - index?: number; - } + /** returns the current data related to the event. + */ + scrollData?: any; - export interface CreateEventArgs { + /** returns the name of the event. + */ + type?: string; + } - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + export interface ThumbStartEventArgs { - /** returns the ribbon model. - */ - model?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the name of the event. - */ - type?: string; - } + /** returns the scroller model + */ + model?: ej.Scroller.Model; - export interface DestroyEventArgs { + /** returns the original event name and its event properties of the current event. + */ + originalEvent?: any; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns the current data related to the event. + */ + scrollData?: any; - /** returns the ribbon model. - */ - model?: any; + /** returns the name of the event. + */ + type?: string; + } + + export interface ThumbEndEventArgs { - /** returns the name of the event. - */ - type?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the scroller model + */ + model?: ej.Scroller.Model; + + /** returns the original event name and its event properties of the current event. + */ + originalEvent?: any; + + /** returns the current data related to the event. + */ + scrollData?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface WheelMoveEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the scroller model + */ + model?: ej.Scroller.Model; + + /** returns the original event name and its event properties of the current event. + */ + originalEvent?: any; + } + + export interface WheelStartEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the scroller model + */ + model?: ej.Scroller.Model; + + /** returns the original event name and its event properties of the current event. + */ + originalEvent?: any; + + /** returns the current data related to the event. + */ + scrollData?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface WheelStopEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the scroller model + */ + model?: ej.Scroller.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the original event name and its event properties of the current event. + */ + originalEvent?: any; + } + } + + class Accordion extends ej.Widget { + static fn: Accordion; + constructor(element: JQuery | Element, options?: Accordion.Model); + static Locale: any; + model: Accordion.Model; + defaults: Accordion.Model; + + /** AddItem method is used to add the panel in dynamically. It receives the following parameters + * @param {string} specify the name of the header + * @param {string} content of the new panel + * @param {number} insertion place of the new panel + * @param {boolean} Enable or disable the AJAX request to the added panel + * @returns {void} + */ + addItem(header_name: string, content: string, index: number, isAjaxReq: boolean): void; + + /** This method used to collapse the all the expanded items in accordion at a time. + * @returns {void} + */ + collapseAll(): void; + + /** This method used to Collapses the specified items in accordion at a time. + * @returns {void} + */ + collapsePanel(): void; + + /** destroy the Accordion widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** Disables the accordion widget includes all the headers and content panels. + * @returns {void} + */ + disable(): void; + + /** Disable the accordion widget item based on specified header index. + * @param {any[]} index values to disable the panels + * @returns {void} + */ + disableItems(index: any[]): void; + + /** Enable the accordion widget includes all the headers and content panels. + * @returns {void} + */ + enable(): void; + + /** Enable the accordion widget item based on specified header index. + * @param {any[]} index values to enable the panels + * @returns {void} + */ + enableItems(index: any[]): void; + + /** To expand all the accordion widget items. + * @returns {void} + */ + expandAll(): void; + + /** This method used to Expand the specified items in accordion at a time. + * @returns {void} + */ + expandPanel(): void; + + /** Returns the total number of panels in the control. + * @returns {number} + */ + getItemsCount(): number; + + /** Hides the visible Accordion control. + * @returns {void} + */ + hide(): void; + + /** The refresh method is used to adjust the control size based on the parent element dimension. + * @returns {void} + */ + refresh(): void; + + /** RemoveItem method is used to remove the specified index panel.It receives the parameter as number. + * @param {number} specify the index value for remove the accordion panel. + * @returns {void} + */ + removeItem(index: number): void; + + /** Shows the hidden Accordion control. + * @returns {void} + */ + show(): void; + } + export namespace Accordion { + + export interface Model { + + /** Specifies the ajaxSettings option to load the content to the accordion control. + * @Default {null} + */ + ajaxSettings?: AjaxSettings; + + /** Accordion headers can be expanded and collapsed on keyboard action. + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** To set the Accordion headers Collapse Speed. + * @Default {300} + */ + collapseSpeed?: number; + + /** Specifies the collapsible state of accordion control. + * @Default {false} + */ + collapsible?: boolean; + + /** Sets the root CSS class for Accordion theme, which is used customize. + */ + cssClass?: string; + + /** Allows you to set the custom header Icon. It accepts two key values “header”, ”selectedHeader”. + * @Default {{ header: e-collapse, selectedHeader: e-expand }} + */ + customIcon?: CustomIcon; + + /** Disables the specified indexed items in accordion. + * @Default {[]} + */ + disabledItems?: number[]; + + /** Specifies the animation behavior in accordion. + * @Default {true} + */ + enableAnimation?: boolean; + + /** With this enabled property, you can enable or disable the Accordion. + * @Default {true} + */ + enabled?: boolean; + + /** Used to enable the disabled items in accordion. + * @Default {[]} + */ + enabledItems?: number[]; + + /** Multiple content panels to activate at a time. + * @Default {false} + */ + enableMultipleOpen?: boolean; + + /** Save current model value to browser cookies for maintaining states. When refreshing the accordion control page, the model value is applied from browser cookies or HTML 5local + * storage. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Display headers and panel text from right-to-left. + * @Default {false} + */ + enableRTL?: boolean; + + /** The events API binds the action for activating the accordion header. Users can activate the header by using mouse actions such as mouse-over, mouse-up, mouse-down, and soon. + * @Default {click} + */ + events?: string; + + /** To set the Accordion headers Expand Speed. + * @Default {300} + */ + expandSpeed?: number; + + /** Sets the height for Accordion items header. + */ + headerSize?: number|string; + + /** Specifies height of the accordion. + * @Default {null} + */ + height?: number|string; + + /** Adjusts the content panel height based on the given option (content, auto, or fill). By default, the panel heights are adjusted based on the content. + * @Default {content} + */ + heightAdjustMode?: ej.Accordion.HeightAdjustMode|string; + + /** It allows to define the characteristics of the Accordion control. It will helps to extend the capability of an HTML element. + * @Default {{}} + */ + htmlAttributes?: any; + + /** The given index header will activate (open). If collapsible is set to true, and a negative value is given, then all headers are collapsed. Otherwise, the first panel isactivated. + * @Default {0} + */ + selectedItemIndex?: number; + + /** Activate the specified indexed items of the accordion + * @Default {[0]} + */ + selectedItems?: number[]; + + /** Used to determines the close button visibility an each accordion items. This close button helps to remove the accordion item from the control. + * @Default {false} + */ + showCloseButton?: boolean; + + /** Displays rounded corner borders on the Accordion control's panels and headers. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specifies width of the accordion. + * @Default {null} + */ + width?: number|string; + + /** Triggered after a Accordion item is active . Argument values are activeIndex, activeHeader, isInteraction and current model values. + */ + activate?(e: ActivateEventArgs): void; + + /** Triggered before the AJAX content is loaded in a content panel. Arguments have location of the content (URL) and current model value. + */ + ajaxBeforeLoad?(e: AjaxBeforeLoadEventArgs): void; + + /** Triggered after AJAX load failed action. Arguments have URL, error message, and current model value. + */ + ajaxError?(e: AjaxErrorEventArgs): void; + + /** Triggered after the AJAX content loads. Arguments have current model values. + */ + ajaxLoad?(e: AjaxLoadEventArgs): void; + + /** Triggered after AJAX success action. Arguments have URL, content, and current model values. + */ + ajaxSuccess?(e: AjaxSuccessEventArgs): void; + + /** Triggered before a tab item is active. Arguments have active index and model values. + */ + beforeActivate?(e: BeforeActivateEventArgs): void; + + /** Triggered before a Accordion item is inactive. Argument values are inActiveIndex and model values. + */ + beforeInactivate?(e: BeforeInactivateEventArgs): void; + + /** Triggered after Accordion control creation. + */ + create?(e: CreateEventArgs): void; + + /** Triggered after Accordion control destroy. + */ + destroy?(e: DestroyEventArgs): void; + + /** Triggered after a Accordion item is inactive. Argument values are inActiveHeader, inActiveIndex ,isInteraction and current model values. + */ + inActivate?(e: InActivateEventArgs): void; + } + + export interface ActivateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the accordion model + */ + model?: ej.Accordion.Model; - /** returns current ribbon tab item index - */ - deleteIndex?: number; - } + /** returns the name of the event + */ + type?: string; + + /** returns active index + */ + activeIndex?: number; - export interface GroupClickEventArgs { + /** returns current active header + */ + activeHeader?: any; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns true when the Accordion index activated by user interaction otherwise returns false + */ + isInteraction?: boolean; + } - /** returns the ribbon model. - */ - model?: any; + export interface AjaxBeforeLoadEventArgs { - /** returns the name of the event. - */ - type?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the control clicked in the group. - */ - target?: number; - } + /** returns the accordion model + */ + model?: ej.Accordion.Model; - export interface GroupExpandEventArgs { + /** returns the name of the event + */ + type?: string; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns current AJAX content location + */ + URL?: string; + } - /** returns the ribbon model. - */ - model?: any; + export interface AjaxErrorEventArgs { - /** returns the name of the event. - */ - type?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the clicked group expander. - */ - target?: number; - } + /** returns the accordion model + */ + model?: ej.Accordion.Model; - export interface GalleryItemClickEventArgs { + /** returns the name of the event + */ + type?: string; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns current AJAX content location + */ + URL?: string; - /** returns the ribbon model. - */ - model?: any; + /** returns the failed data sent. + */ + data?: string; + } - /** returns the gallery model. - */ - galleryModel?: any; + export interface AjaxLoadEventArgs { - /** returns the name of the event. - */ - type?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the item clicked in the gallery. - */ - target?: number; - } + /** returns the accordion model + */ + model?: ej.Accordion.Model; - export interface BackstageItemClickEventArgs { + /** returns the name of the event + */ + type?: string; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns the name of the URL + */ + URL?: string; + } - /** returns the ribbon model. - */ - model?: any; + export interface AjaxSuccessEventArgs { - /** returns the name of the event. - */ - type?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the item clicked in the gallery. - */ - target?: number; + /** returns the accordion model + */ + model?: ej.Accordion.Model; - /** returns the id of the target item. - */ - id?: string; + /** returns the name of the event + */ + type?: string; - /** returns the text of the target item. - */ - text?: string; - } + /** returns current AJAX content location + */ + URL?: string; - export interface CollapseEventArgs { + /** returns the successful data sent. + */ + data?: string; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns the AJAX content. + */ + content?: string; + } - /** returns the ribbon model. - */ - model?: any; + export interface BeforeActivateEventArgs { - /** returns the name of the event. - */ - type?: string; - } + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface ExpandEventArgs { + /** returns the accordion model + */ + model?: ej.Accordion.Model; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: string; - /** returns the ribbon model. - */ - model?: any; + /** returns active index + */ + activeIndex?: number; - /** returns the name of the event. - */ - type?: string; - } + /** returns true when the Accordion index activated by user interaction otherwise returns false + */ + isInteraction?: boolean; + } - export interface LoadEventArgs { + export interface BeforeInactivateEventArgs { - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the ribbon model. - */ - model?: any; + /** returns the accordion model + */ + model?: ej.Accordion.Model; - /** returns the name of the event. - */ - type?: string; - } + /** returns the name of the event + */ + type?: string; - export interface TabAddEventArgs { + /** returns active index + */ + inActiveIndex?: number; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns true when the Accordion index activated by user interaction otherwise returns false + */ + isInteraction?: boolean; + } - /** returns the ribbon model. - */ - model?: any; + export interface CreateEventArgs { - /** returns the name of the event. - */ - type?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns new added tab header. - */ - tabHeader?: any; + /** returns the accordion model + */ + model?: ej.Accordion.Model; - /** returns new added tab content panel. - */ - tabContent?: any; - } + /** returns the name of the event + */ + type?: string; + } - export interface TabClickEventArgs { + export interface DestroyEventArgs { - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the ribbon model. - */ - model?: any; + /** returns the accordion model + */ + model?: ej.Accordion.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event + */ + type?: string; + } - /** returns previous active tab header. - */ - prevActiveHeader?: any; + export interface InActivateEventArgs { - /** returns previous active index. - */ - prevActiveIndex?: number; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns current active tab header . - */ - activeHeader?: any; + /** returns the accordion model + */ + model?: ej.Accordion.Model; - /** returns current active index. - */ - activeIndex?: number; - } + /** returns the name of the event + */ + type?: string; - export interface TabCreateEventArgs { + /** returns active index + */ + inActiveIndex?: number; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns in active element + */ + inActiveHeader?: any; - /** returns the ribbon model. - */ - model?: any; + /** returns true when the Accordion index activated by user interaction otherwise returns false + */ + isInteraction?: boolean; + } - /** returns the name of the event. - */ - type?: string; + export interface AjaxSettings { - /** returns current ribbon tab item index - */ - deleteIndex?: number; - } + /** It specifies, whether to enable or disable asynchronous request. + */ + async?: boolean; - export interface TabRemoveEventArgs { + /** It specifies the page will be cached in the web browser. + */ + cache?: boolean; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** It specifies the type of data is send in the query string. + */ + contentType?: string; + + /** It specifies the data as an object, will be passed in the query string. + */ + data?: any; + + /** It specifies the type of data that you're expecting back from the response. + */ + dataType?: string; + + /** It specifies the HTTP request type. + */ + type?: string; + } + + export interface CustomIcon { + + /** This class name set to collapsing header. + */ + header?: string; + + /** This class name set to expanded (active) header. + */ + selectedHeader?: string; + } + + enum HeightAdjustMode { + + ///Height fit to the content in the panel + Content, + + ///Height set to the largest content in the panel + Auto, + + ///Height filled to the content of the panel + Fill + } + + } + + class Autocomplete extends ej.Widget { + static fn: Autocomplete; + constructor(element: JQuery | Element, options?: Autocomplete.Model); + static Locale: any; + model: Autocomplete.Model; + defaults: Autocomplete.Model; + + /** Clears the text in the Autocomplete textbox. + * @returns {void} + */ + clearText(): void; + + /** Destroys the Autocomplete widget. + * @returns {void} + */ + destroy(): void; + + /** Disables the autocomplete widget. + * @returns {void} + */ + disable(): void; + + /** Enables the autocomplete widget. + * @returns {void} + */ + enable(): void; + + /** Returns objects (data object) of all the selected items in the autocomplete textbox. + * @returns {any} + */ + getSelectedItems(): any; + + /** Returns the current selected value from the Autocomplete textbox. + * @returns {string} + */ + getValue(): string; + + /** Returns the current active text value in the Autocomplete suggestion list. + * @returns {string} + */ + getActiveText(): string; + + /** Search the entered text and show it in the suggestion list if available. + * @returns {void} + */ + search(): void; + + /** Open up the autocomplete suggestion popup with all list items. + * @returns {void} + */ + open(): void; + + /** Sets the value of the Autocomplete textbox based on the given key value. + * @param {string} The key value of the specific suggestion item. + * @returns {void} + */ + selectValueByKey(Key: string): void; + + /** Sets the value of the Autocomplete textbox based on the given input text value. + * @param {string} The text (label) value of the specific suggestion item. + * @returns {void} + */ + selectValueByText(Text: string): void; + } + export namespace Autocomplete { + + export interface Model { + + /** Customize "Add New" text (label) to be added in the autocomplete popup list for the entered text when there are no suggestions for it. + * @Default {Add New} + */ + addNewText?: string; + + /** Allows new values to be added to the autocomplete input other than the values in the suggestion list. Normally, when there are no suggestions it will display “No suggestions” + * label in the popup. + * @Default {false} + */ + allowAddNew?: boolean; + + /** Enables or disables the sorting of suggestion list item. The default sort order is ascending order. You customize sort order. + * @Default {true} + */ + allowSorting?: boolean; + + /** Enables or disables selecting the animation style for the popup list. Animation types can be selected through either of the following options, + * @Default {slide} + */ + animateType?: ej.Autocomplete.Animation|string; + + /** To focus the items in the suggestion list when the popup is shown. By default first item will be focused. + * @Default {false} + */ + autoFocus?: boolean; + + /** Enables or disables the case sensitive search. + * @Default {false} + */ + caseSensitiveSearch?: boolean; + + /** The root class for the Autocomplete textbox widget which helps in customizing its theme. + * @Default {””} + */ + cssClass?: string; + + /** The data source contains the list of data for the suggestions list. It can be a string array or JSON array or service URL that returns JSON. + * @Default {null} + */ + dataSource?: any|any[]; + + /** The time delay (in milliseconds) after which the suggestion popup will be shown. + * @Default {200} + */ + delaySuggestionTimeout?: number; + + /** The special character which acts as a separator for the given words for multi-mode search i.e. the text after the delimiter are considered as a separate word or query for search + * operation. + * @Default {’,’} + */ + delimiterChar?: string; + + /** The text to be displayed in the popup when there are no suggestions available for the entered text. + * @Default {“No suggestions”} + */ + emptyResultText?: string; + + /** Fills the autocomplete textbox with the first matched item from the suggestion list automatically based on the entered text when enabled. + * @Default {false} + */ + enableAutoFill?: boolean; + + /** Enables or disables the Autocomplete textbox widget. + * @Default {true} + */ + enabled?: boolean; + + /** Enables or disables displaying the duplicate names present in the search result. + * @Default {false} + */ + enableDistinct?: boolean; + + /** Allows the current model values to be saved in local storage or browser cookies for state maintenance when it is set to true. While refreshing the page, it retains the model value + * from browser cookies or local storage. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Displays the Autocomplete widget’s content from right to left when enabled. + * @Default {false} + */ + enableRTL?: boolean; + + /** Mapping fields for the suggestion items of the Autocomplete textbox widget. + * @Default {null} + */ + fields?: Fields; + + /** Specifies the search filter type. There are several types of search filter available such as ‘startswith’, ‘contains’, ‘endswith’, ‘lessthan’, + * ‘lessthanorequal’, ‘greaterthan’, ‘greaterthanorequal’, ‘equal’, ‘notequal’. + * @Default {ej.filterType.StartsWith} + */ + filterType?: string; + + /** The height of the Autocomplete textbox. + * @Default {null} + */ + height?: string|number; + + /** The search text can be highlighted in the AutoComplete suggestion list when enabled. + * @Default {false} + */ + highlightSearch?: boolean; + + /** Number of items to be displayed in the suggestion list. + * @Default {0} + */ + itemsCount?: number; + + /** Set the localization culture for Autocomplete Widget. + */ + locale?: string; + + /** Minimum number of character to be entered in the Autocomplete textbox to show the suggestion list. + * @Default {1} + */ + minCharacter?: number; + + /** An Autocomplete column collection can be defined and customized through the multiColumnSettings property.Column's header, field, and stringFormat can be define via + * multiColumnSettings properties. + */ + multiColumnSettings?: MultiColumnSettings; + + /** Enables or disables selecting multiple values from the suggestion list. Multiple values can be selected through either of the following options, + * @Default {ej.MultiSelectMode.None} + */ + multiSelectMode?: ej.Autocomplete.MultiSelectMode|string; + + /** The height of the suggestion list. + * @Default {“152px”} + */ + popupHeight?: string; + + /** The width of the suggestion list. + * @Default {“auto”} + */ + popupWidth?: string; + + /** The query to retrieve the data from the data source. + * @Default {null} + */ + query?: ej.Query; + + /** Indicates that the autocomplete textbox values can only be readable. + * @Default {false} + */ + readOnly?: boolean; + + /** Sets the value for the Autocomplete textbox based on the given input key value. + */ + selectValueByKey?: number; + + /** Enables or disables showing the message when there are no suggestions for the entered text. + * @Default {true} + */ + showEmptyResultText?: boolean; + + /** Enables or disables the loading icon to intimate the searching operation. The loading icon is visible when there is a time delay to perform the search. + * @Default {true} + */ + showLoadingIcon?: boolean; + + /** Enables the showPopup button in autocomplete textbox. When the showPopup button is clicked, it displays all the available data from the data source. + * @Default {false} + */ + showPopupButton?: boolean; + + /** Enables or disables rounded corner. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Enables or disables reset icon to clear the textbox values. + * @Default {false} + */ + showResetIcon?: boolean; + + /** Sort order specifies whether the suggestion list values has to be displayed in ascending or descending order. + * @Default {ej.SortOrder.Ascending} + */ + sortOrder?: ej.Autocomplete.SortOrder|string; + + /** The template to display the suggestion list items with customized appearance. + * @Default {null} + */ + template?: string; + + /** The jQuery validation error message to be displayed on form validation. + * @Default {null} + */ + validationMessage?: any; + + /** The jQuery validation rules for form validation. + * @Default {null} + */ + validationRules?: any; + + /** The value to be displayed in the autocomplete textbox. + * @Default {null} + */ + value?: string; + + /** Enables or disables the visibility of the autocomplete textbox. + * @Default {true} + */ + visible?: boolean; + + /** The text to be displayed when the value of the autocomplete textbox is empty. + * @Default {null} + */ + watermarkText?: string; + + /** The width of the Autocomplete textbox. + * @Default {null} + */ + width?: string|number; + + /** Triggers when the AJAX requests Begins. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Triggers when the data requested from AJAX will get successfully loaded in the Autocomplete widget. + */ + actionSuccess?(e: ActionSuccessEventArgs): void; + + /** Triggers when the AJAX requests complete. The request may get failed or succeed. + */ + actionComplete?(e: ActionCompleteEventArgs): void; + + /** Triggers when the data requested from AJAX get failed. + */ + actionFailure?(e: ActionFailureEventArgs): void; + + /** Triggers when the text box value is changed. + */ + change?(e: ChangeEventArgs): void; + + /** Triggers after the suggestion popup is closed. + */ + close?(e: CloseEventArgs): void; + + /** Triggers when Autocomplete widget is created. + */ + create?(e: CreateEventArgs): void; + + /** Triggers after the Autocomplete widget is destroyed. + */ + destroy?(e: DestroyEventArgs): void; + + /** Triggers after the autocomplete textbox is focused. + */ + focusIn?(e: FocusInEventArgs): void; + + /** Triggers after the Autocomplete textbox gets out of the focus. + */ + focusOut?(e: FocusOutEventArgs): void; + + /** Triggers after the suggestion list is opened. + */ + open?(e: OpenEventArgs): void; + + /** Triggers when an item has been selected from the suggestion list. + */ + select?(e: SelectEventArgs): void; + } + + export interface ActionBeginEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Autocomplete model + */ + model?: any; - /** returns the ribbon model. - */ - model?: any; + /** returns the name of the event + */ + type?: string; + } - /** returns the name of the event. - */ - type?: string; + export interface ActionSuccessEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the removed index. - */ - removedIndex?: number; - } + /** Returns number of times trying to fetch the data + */ + count?: number; - export interface TabSelectEventArgs { + /** returns the Autocomplete model + */ + model?: any; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** Returns the query for data retrieval + */ + query?: any; - /** returns the ribbon model. - */ - model?: any; + /** Returns the query for data retrieval from the Database + */ + request?: any; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event + */ + type?: string; - /** returns previous active tab header. - */ - prevActiveHeader?: any; + /** Returns the number of items fetched from remote data + */ + result?: any[]; - /** returns previous active index. - */ - prevActiveIndex?: number; + /** Returns the requested data + */ + xhr?: any; + } - /** returns current active tab header . - */ - activeHeader?: any; + export interface ActionCompleteEventArgs { - /** returns current active index. - */ - activeIndex?: number; - } + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface ToggleButtonClickEventArgs { + /** Returns number of times trying to fetch the data + */ + count?: number; - /** Set to true when the event has to be canceled, else false. - */ - cancel?: boolean; + /** returns the Autocomplete model + */ + model?: any; - /** returns the ribbon model. - */ - model?: any; + /** Returns the query for data retrieval + */ + query?: any; - /** returns the name of the event. - */ - type?: string; - - /** returns the expand/collapse button. - */ - target?: number; - } - - export interface QatMenuItemClickEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the ribbon model. - */ - model?: any; - - /** returns the name of the event. - */ - type?: string; - - /** returns the clicked menu item text. - */ - text?: string; - } - - export interface CollapsePinSettings { - - /** Sets tooltip for the collapse pin . - * @Default {null} - */ - toolTip?: string; - - /** Specifies the custom tooltip for collapse pin.Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. - * @Default {Object} - */ - customToolTip?: any; - } - - export interface ExpandPinSettings { - - /** Sets tooltip for the expand pin. - * @Default {null} - */ - toolTip?: string; - - /** Specifies the custom tooltip for expand pin.Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. - * @Default {Object} - */ - customToolTip?: any; - } - - export interface ApplicationTabBackstageSettingsPage { - - /** Specifies the id for ribbon backstage page's tab and button elements. - * @Default {null} - */ - id?: string; - - /** Specifies the text for ribbon backstage page's tab header and button elements. - * @Default {null} - */ - text?: string; - - /** Specifies the type for ribbon backstage page's contents. Set "ej.Ribbon.BackStageItemType.Tab" to render the tab or " - * ej.Ribbon.BackStageItemType.Button" to render the button. - * @Default {ej.Ribbon.ItemType.Tab} - */ - itemType?: ej.Ribbon.ItemType | string; - - /** Specifies the id of HTML elements like div,ul, etc., as ribbon backstage page's tab content. - * @Default {null} - */ - contentID?: string; - - /** Specifies the separator between backstage page's tab and button elements. - * @Default {false} - */ - enableSeparator?: boolean; - } - - export interface ApplicationTabBackstageSettings { - - /** Specifies the display text of application tab. - * @Default {null} - */ - text?: string; - - /** Specifies the height of ribbon backstage page. - * @Default {null} - */ - height?: string | number; - - /** Specifies the width of ribbon backstage page. - * @Default {null} - */ - width?: string | number; - - /** Specifies the ribbon backstage page with its tab and button elements. - * @Default {Array} - */ - pages?: ApplicationTabBackstageSettingsPage[]; - - /** Specifies the width of backstage page header that contains tabs and buttons. - * @Default {null} - */ - headerWidth?: string | number; - } - - export interface ApplicationTab { - - /** Specifies the ribbon backstage page items. - * @Default {Object} - */ - backstageSettings?: ApplicationTabBackstageSettings; - - /** Specifies the ID of ul list to create application menu in the ribbon control. - * @Default {null} - */ - menuItemID?: string; - - /** Specifies the menu members, events by using the menu settings for the menu in the application tab. - * @Default {Object} - */ - menuSettings?: any; - - /** Specifies the application menu or backstage page. Specify the type of application tab as "ej.Ribbon.ApplicationTabType.Menu" to render the application menu or - * "ej.Ribbon.ApplicationTabType.Backstage" to render backstage page in the ribbon control. - * @Default {ej.Ribbon.ApplicationTabType.Menu} - */ - type?: ej.Ribbon.ApplicationTabType | string; - } - - export interface ContextualTab { - - /** Specifies the backgroundColor of the contextual tabs and tab set in the ribbon control. - * @Default {null} - */ - backgroundColor?: string; - - /** Specifies the borderColor of the contextual tabs and tab set in the ribbon control. - * @Default {null} - */ - borderColor?: string; - - /** Specifies the tabs to present in the contextual tabs and tab set. Refer to the tabs section for adding tabs into the contextual tabs and tab set. - * @Default {Array} - */ - tabs?: any[]; - } - - export interface TabsGroupsContentDefaults { - - /** Specifies the controls height such as Syncfusion button,split button,dropdown list,toggle button in the subgroup of the ribbon tab. - * @Default {null} - */ - height?: string | number; - - /** Specifies the controls width such as Syncfusion button,split button,dropdown list,toggle button in the subgroup of the ribbon tab. - * @Default {null} - */ - width?: string | number; - - /** Specifies the controls type such as Syncfusion button,split button,dropdown list,toggle button in the subgroup of the ribbon tab. - * @Default {ej.Ribbon.Type.Button} - */ - type?: string; - - /** Specifies the controls size such as Syncfusion button,split button,dropdown list,toggle button in the subgroup of the ribbon tab. - * @Default {false} - */ - isBig?: boolean; - } - - export interface TabsGroupsContentGroupsCustomGalleryItem { - - /** Specifies the Syncfusion button members, events by using buttonSettings. - * @Default {Object} - */ - buttonSettings?: any; - - /** Specifies the type as ej.Ribbon.CustomItemType.Menu or ej.Ribbon.CustomItemType.Button to render Syncfusion button and menu. - * @Default {ej.Ribbon.CustomItemType.Button} - */ - customItemType?: ej.Ribbon.CustomItemType | string; - - /** Specifies the custom tooltip for gallery extra item's button. Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. - * @Default {Object} - */ - customToolTip?: any; - - /** Specifies the UL list id to render menu as gallery extra item. - * @Default {null} - */ - menuId?: string; - - /** Specifies the Syncfusion menu members, events by using menuSettings. - * @Default {Object} - */ - menuSettings?: any; - - /** Specifies the text for gallery extra item's button. - * @Default {null} - */ - text?: string; - - /** Specifies the tooltip for gallery extra item's button. - * @Default {null} - */ - toolTip?: string; - } - - export interface TabsGroupsContentGroupsCustomToolTip { - - /** Sets content to the custom tooltip. Text and HTML support are provided for content. - * @Default {null} - */ - content?: string; - - /** Sets icon to the custom tooltip content. - * @Default {null} - */ - prefixIcon?: string; - - /** Sets title to the custom tooltip. Text and HTML support are provided for title and the title is in bold for text format. - * @Default {null} - */ - title?: string; - } - - export interface TabsGroupsContentGroupsGalleryItem { - - /** Specifies the Syncfusion button members, events by using buttonSettings. - * @Default {Object} - */ - buttonSettings?: any; - - /** Specifies the custom tooltip for gallery content. Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. - * @Default {Object} - */ - customToolTip?: any; - - /** Sets text for the gallery content. - * @Default {null} - */ - text?: string; - - /** Sets tooltip for the gallery content. - * @Default {null} - */ - toolTip?: string; - } - - export interface TabsGroupsContentGroup { - - /** When isMobileOnly is true,its shows in mobile toolbar.isResponsive should be true for using this property. - * @Default {false} - */ - isMobileOnly?: boolean; - - /** Specifies the Syncfusion button members, events by using this buttonSettings. - * @Default {Object} - */ - buttonSettings?: any; - - /** It is used to set the count of gallery contents in a row. - * @Default {null} - */ - columns?: number; - - /** Specifies the custom items such as div, table, controls as custom controls with the type "ej.Ribbon.Type.Custom" in the groups. - * @Default {null} - */ - contentID?: string; - - /** Specifies the CSS class property to apply styles to the button, split, dropdown controls in the groups. - * @Default {null} - */ - cssClass?: string; - - /** Specifies the Syncfusion button and menu as gallery extra items. - * @Default {Array} - */ - customGalleryItems?: TabsGroupsContentGroupsCustomGalleryItem[]; - - /** Provides custom tooltip for button, split button, dropdown list, toggle button, custom controls in the sub groups. Text and HTML support are also provided for title and content. - * @Default {Object} - */ - customToolTip?: TabsGroupsContentGroupsCustomToolTip; - - /** Specifies the Syncfusion dropdown list members, events by using this dropdownSettings. - * @Default {Object} - */ - dropdownSettings?: any; - - /** Specifies the separator to the control that is in row type group. The separator separates the control from the next control in the group. Set "true" to enable the separator. - * @Default {false} - */ - enableSeparator?: boolean; - - /** Sets the count of gallery contents in a row, when the gallery is in expanded state. - * @Default {null} - */ - expandedColumns?: number; - - /** Defines each gallery content. - * @Default {Array} - */ - galleryItems?: TabsGroupsContentGroupsGalleryItem[]; - - /** Specifies the Id for button, split button, dropdown list, toggle button, gallery, custom controls in the sub groups. - * @Default {null} - */ - id?: string; - - /** Specifies the size for button, split button controls. Set "true" for big size and "false" for small size. - * @Default {null} - */ - isBig?: boolean; - - /** Sets the height of each gallery content. - * @Default {null} - */ - itemHeight?: string | number; - - /** Sets the width of each gallery content. - * @Default {null} - */ - itemWidth?: string | number; - - /** Specifies the Syncfusion split button members, events by using this splitButtonSettings. - * @Default {Object} - */ - splitButtonSettings?: any; - - /** Specifies the text for button, split button, toggle button controls in the sub groups. - * @Default {null} - */ - text?: string; - - /** Specifies the Syncfusion toggle button members, events by using toggleButtonSettings. - * @Default {Object} - */ - toggleButtonSettings?: any; - - /** Specifies the tooltip for button, split button, dropdown list, toggle button, custom controls in the sub groups. - * @Default {null} - */ - toolTip?: string; - - /** To add,show and hide controls in Quick Access toolbar. - * @Default {ej.Ribbon.QuickAccessMode.None} - */ - quickAccessMode?: ej.Ribbon.QuickAccessMode | string; - - /** Specifies the type as "ej.Ribbon.Type.Button" or "ej.Ribbon.Type.SplitButton" or "ej.Ribbon.Type.DropDownList" or "ej.Ribbon.Type.ToggleButton" - * or "ej.Ribbon.Type.Custom" or "ej.Ribbon.Type.Gallery" to render button, split, dropdown, toggle button, gallery, custom controls. - * @Default {ej.Ribbon.Type.Button} - */ - type?: ej.Ribbon.Type | string; - } - - export interface TabsGroupsContent { - - /** Specifies the height, width, type, isBig property to the controls in the group commonly. - * @Default {Object} - */ - defaults?: TabsGroupsContentDefaults; - - /** Specifies the controls such as Syncfusion button, split button, dropdown list, toggle button, gallery, custom controls in the subgroup of the ribbon tab . - * @Default {Array} - */ - groups?: TabsGroupsContentGroup[]; - } - - export interface TabsGroupsGroupExpanderSettings { - - /** Sets tooltip for the group expander of the group. - * @Default {null} - */ - toolTip?: string; - - /** Specifies the custom tooltip for group expander.Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. - * @Default {Object} - */ - customToolTip?: any; - } - - export interface TabsGroup { + /** Returns the query for data retrieval from the Database + */ + request?: any; - /** Specifies the alignment of controls in the groups in 'row' type or 'column' type. Value for row type is "ej.Ribbon.AlignType.Rows" - * and for column type is "ej.Ribbon.alignType.columns". - * @Default {ej.Ribbon.AlignType.Rows} - */ - alignType?: ej.Ribbon.AlignType | string; + /** returns the name of the event + */ + type?: string; - /** Specifies the Syncfusion button, split button, dropdown list, toggle button, gallery, custom controls to the groups in the ribbon control. - * @Default {Array} - */ - content?: TabsGroupsContent[]; + /** Returns the number of items fetched from remote data + */ + result?: any[]; - /** Specifies the ID of custom items to be placed in the groups. - * @Default {null} - */ - contentID?: string; + /** Returns the requested data + */ + xhr?: any; + } - /** Specifies the HTML contents to place into the groups. - * @Default {null} - */ - customContent?: string; + export interface ActionFailureEventArgs { - /** Specifies the group expander for groups in the ribbon control. Set "true" to enable the group expander. - * @Default {false} - */ - enableGroupExpander?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Sets custom setting to the groups in the ribbon control. - * @Default {Object} - */ - groupExpanderSettings?: TabsGroupsGroupExpanderSettings; + /** Returns the error message + */ + error?: any; - /** Specifies the text to the groups in the ribbon control. - * @Default {null} - */ - text?: string; + /** returns the Autocomplete model + */ + model?: any; - /** Specifies the custom items such as div, table, controls by using the "custom" type. - * @Default {null} - */ - type?: string; - } + /** Returns the query for data retrieval + */ + query?: any; - export interface Tab { + /** returns the name of the event + */ + type?: string; + } - /** Specifies single group or multiple groups and its contents to each tab in the ribbon control. - * @Default {Array} - */ - groups?: TabsGroup[]; + export interface ChangeEventArgs { - /** Specifies the ID for each tab's content panel. - * @Default {null} - */ - id?: string; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Specifies the text of the tab in the ribbon control. - * @Default {null} - */ - text?: string; - } + /** Instance of the autocomplete model object. + */ + model?: ej.Autocomplete.Model; - enum ItemType { + /** Name of the event. + */ + type?: string; - ///To render the button for ribbon backstage page’s contents - Button, + /** Value of the autocomplete textbox. + */ + value?: string; + } - ///To render the tab for ribbon backstage page’s contents - Tab - } + export interface CloseEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - enum ApplicationTabType { + /** Instance of the autocomplete model object. + */ + model?: ej.Autocomplete.Model; - ///applicationTab display as menu - Menu, + /** Name of the event. + */ + type?: string; + } - ///applicationTab display as backstage - Backstage - } + export interface CreateEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - enum AlignType { + /** Instance of the autocomplete model object. + */ + model?: ej.Autocomplete.Model; - ///To align the group content's in row - Rows, + /** Name of the event. + */ + type?: string; + } - ///To align group content's in columns - Columns - } + export interface DestroyEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - enum CustomItemType { + /** Instance of the autocomplete model object. + */ + model?: ej.Autocomplete.Model; - ///Specifies the button type in customGalleryItems - Button, + /** Name of the event. + */ + type?: string; + } - ///Specifies the menu type in customGalleryItems - Menu - } + export interface FocusInEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - enum QuickAccessMode { + /** Instance of the autocomplete model object. + */ + model?: ej.Autocomplete.Model; - ///Controls are hidden in Quick Access toolbar - None, + /** Name of the event. + */ + type?: string; - ///Add controls in toolBar - ToolBar, + /** Value of the autocomplete textbox. + */ + value?: string; + } - ///Add controls in menu - Menu - } + export interface FocusOutEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - enum Type { + /** Instance of the autocomplete model object. + */ + model?: ej.Autocomplete.Model; - ///Specifies the button control - Button, + /** Name of the event. + */ + type?: string; - ///Specifies the split button - SplitButton, + /** Value of the autocomplete textbox. + */ + value?: string; + } - ///Specifies the dropDown - DropDownList, + export interface OpenEventArgs { - ///To append external element's - Custom, + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - ///Specifies the toggle button - ToggleButton, + /** Instance of the autocomplete model object. + */ + model?: ej.Autocomplete.Model; - ///Specifies the ribbon gallery - Gallery - } + /** Name of the event. + */ + type?: string; + } - } + export interface SelectEventArgs { - class Kanban extends ej.Widget { - static fn: Kanban; - constructor(element: JQuery | Element, options?: Kanban.Model); - static Locale: any; - model: Kanban.Model; - defaults: Kanban.Model; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Add or remove columns in Kanban columns collections.Default action is add. - * @param {Array|string} Pass array of columns or string of headerText to add/remove the column in Kanban - * @param {Array|string} Pass array of columns or string of key value to add/remove the column in Kanban - * @param {string} optional Pass add/remove action to be performed. By default "add" action will perform - * @returns {void} - */ - columns(columndetails: any[] | string, keyvalue: any[] | string, action?: string): void; + /** Instance of the autocomplete model object. + */ + model?: ej.Autocomplete.Model; - /** Destroy the Kanban widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; + /** Name of the event. + */ + type?: string; - /** Refresh the Kanban with new data source. - * @param {Array} Pass new data source to the Kanban - * @returns {void} - */ - dataSource(datasource: any[]): void; + /** Value of the autocomplete textbox. + */ + value?: string; - /** toggleColumn based on the headerText in Kanban. - * @param {any} Pass the header text of the column to get the corresponding column object - * @returns {void} - */ - toggleColumn(headerText: any): void; + /** Text of the selected item. + */ + text?: string; - /** Expand or collapse the card based on the state of target "div" - * @param {string|number} Pass the id of card to be toggle - * @returns {void} - */ - toggleCard(key: string | number): void; + /** Key of the selected item. + */ + key?: string; - /** Used for get the names of all the visible column name collections in Kanban. - * @returns {Array} - */ - getVisibleColumnNames(): any[]; + /** Data object of the selected item. + */ + Item?: ej.Autocomplete.Model; + } - /** Get the scroller object of Kanban. - * @returns {ej.Scroller} - */ - getScrollObject(): ej.Scroller; - - /** Get the column details based on the given header text in Kanban. - * @param {string} Pass the header text of the column to get the corresponding column object - * @returns {String} - */ - getColumnByHeaderText(headerText: string): string; - - /** Get the table details based on the given header table in Kanban. - * @returns {String} - */ - getHeaderTable(): string; - - /** Hide columns from the Kanban based on the header text - * @param {Array|string} you can pass either array of header text of various columns or a header text of a column to hide - * @returns {void} - */ - hideColumns(headerText: any[] | string): void; - - /** Print the Kanban Board - * @returns {void} - */ - print(): void; - - /** Refresh the template of the Kanban - * @returns {void} - */ - refreshTemplate(): void; - - /** Refresh the Kanban contents.The template refreshment is based on the argument passed along with this method - * @param {boolean} optional When templateRefresh is set true, template and Kanban contents both are refreshed in Kanban else only Kanban content is refreshed - * @returns {void} - */ - refresh(templateRefresh?: boolean): void; - - /** Show columns in the Kanban based on the header text. - * @param {Array|string} You can pass either array of header text of various columns or a header text of a column to show - * @returns {void} - */ - showColumns(headerText: any[] | string): void; - - /** Update a card in Kanban control based on key and JSON data given. - * @param {string} Pass the key field Name of the column - * @param {Array} Pass the edited JSON data of card need to be update. - * @returns {void} - */ - updateCard(key: string, data: any[]): void; - - KanbanSelection: Kanban.KanbanSelection; - - KanbanSwimlane: Kanban.KanbanSwimlane; - - KanbanFilter: Kanban.KanbanFilter; - - KanbanEdit: Kanban.KanbanEdit; - } - export namespace Kanban { - - export interface KanbanSelection { - - /** It is used to clear all the card selection. - * @returns {void} - */ - clear(): void; - } - - export interface KanbanSwimlane { - - /** Expand all the swimlane rows in Kanban. - * @returns {void} - */ - expandAll(): void; - - /** Collapse all the swimlane rows in Kanban. - * @returns {void} - */ - collapseAll(): void; - - /** Expand or collapse the swimlane row based on the state of target "div" - * @param {any} Pass the div object to toggleSwimlane row based on its row state - * @returns {void} - */ - toggle($div: any): void; - } - - export interface KanbanFilter { - - /** Method used for send a clear search request to Kanban. - * @returns {void} - */ - clearSearch(): void; - - /** Send a search request to Kanban with specified string passed in it. - * @param {string} Pass the string to search in Kanban card - * @returns {void} - */ - searchCards(searchString: string): void; - - /** Send a clear request to filter cards in the kanban. - * @returns {void} - */ - clearFilter(): void; - - /** Send a filtering request to cards in the kanban. - * @returns {void} - */ - filterCards(): void; - } - - export interface KanbanEdit { - - /** Add a new card in Kanban control when allowAdding is set as true. If parameters are not given default dialog will be open. - * @param {string} Pass the primary key field Name of the column - * @param {Array} Pass the edited JSON data of card need to be add. - * @returns {void} - */ - addCard(primaryKey: string, card: any[]): void; - - /** Send a cancel request of add/edit card in Kanban when allowEditing/allowAdding is set as true. - * @returns {void} - */ - cancelEdit(): void; - - /** Delete a card in Kanban control when allowAdding/allowEditing is set as true. - * @param {string|number} Pass the key of card to be delete - * @returns {void} - */ - deleteCard(Key: string | number): void; - - /** Send a save request in Kanban when any card is in edit/new add card state and allowEditing/allowAdding is set as true. - * @returns {void} - */ - endEdit(): void; - - /** Send an edit card request in Kanban when allowEditing is set as true. Parameter will be HTML element or primary key - * @param {any} Pass the div selected row element to be edited in Kanban - * @returns {void} - */ - startEdit($div: any): void; - - /** Method used for set validation to a field during editing. - * @param {string} Specify the name of the column to set validation rules - * @param {any} Specify the validation rules for the field - * @returns {void} - */ - setValidationToField(name: string, rules: any): void; - } - - export interface Model { - - /** Gets or sets a value that indicates whether to enable allowDragAndDrop behavior on Kanban. - * @Default {true} - */ - allowDragAndDrop?: boolean; - - /** To enable or disable the title of the card. - * @Default {false} - */ - allowTitle?: boolean; - - /** Customize the settings for swim lane. - * @Default {Object} - */ - swimlaneSettings?: SwimlaneSettings; - - /** To enable or disable the column expand /collapse. - * @Default {false} - */ - allowToggleColumn?: boolean; - - /** To enable Searching operation in Kanban. - * @Default {false} - */ - allowSearching?: boolean; - - /** To enable filtering behavior on Kanban.User can specify query in filterSettings collection after enabling allowFiltering. - * @Default {false} - */ - allowFiltering?: boolean; - - /** Gets or sets a value that indicates whether to enable allowSelection behavior on Kanban.User can select card and the selected card will be highlighted on Kanban. - * @Default {true} - */ - allowSelection?: boolean; - - /** Gets or sets a value that indicates whether to allow card hover actions. - * @Default {true} - */ - allowHover?: boolean; - - /** To allow keyboard navigation actions. - * @Default {false} - */ - allowKeyboardNavigation?: boolean; - - /** Gets or sets a value that indicates whether to enable the scrollbar in the Kanban and view the card by scroll through the Kanban manually. - * @Default {false} - */ - allowScrolling?: boolean; - - /** Gets or sets a value that indicates whether to enable printing option. - * @Default {false} - */ - allowPrinting?: boolean; - - /** Gets or sets an object that indicates whether to customize the context menu behavior of the Kanban. - * @Default {Object} - */ - contextMenuSettings?: ContextMenuSettings; - - /** Gets or sets an object that indicates to render the Kanban with specified columns. - * @Default {Array} - */ - columns?: Column[]; - - /** Gets or sets an object that indicates whether to Customize the card settings. - * @Default {Object} - */ - cardSettings?: CardSettings; - - /** Gets or sets a value that indicates whether to add customToolbarItems within the toolbar to perform any action in the Kanban. - * @Default {[]} - */ - customToolbarItems?: CustomToolbarItem[]; - - /** Gets or sets a value that indicates to render the Kanban with custom theme. - */ - cssClass?: string; - - /** Gets or sets the data to render the Kanban with cards. - * @Default {null} - */ - dataSource?: any; - - /** To perform kanban functionalities with touch interaction. - * @Default {true} - */ - enableTouch?: boolean; - - /** Align content in the Kanban control align from right to left by setting the property as true. - * @Default {false} - */ - enableRTL?: boolean; - - /** To show total count of cards in each column. - * @Default {false} - */ - enableTotalCount?: boolean; - - /** Get or sets an object that indicates whether to customize the editing behavior of the Kanban. - * @Default {Object} - */ - editSettings?: EditSettings; - - /** To customize field mappings for card , editing title and control key parameters - * @Default {Object} - */ - fields?: Fields; - - /** To map datasource field for column values mapping - * @Default {null} - */ - keyField?: string; - - /** When set to true, adapts the Kanban layout to fit the screen size of devices on which it renders. - * @Default {false} - */ - isResponsive?: boolean; - - /** Gets or sets a value that indicates whether to set the minimum width of the responsive Kanban while isResponsive property is true. - * @Default {0} - */ - minWidth?: number; - - /** To customize the filtering behavior based on queries given. - * @Default {Array} - */ - filterSettings?: FilterSetting[]; - - /** ej Query to query database of Kanban. - * @Default {null} - */ - query?: any; - - /** To change the key in keyboard interaction to Kanban control. - * @Default {null} - */ - keySettings?: any; - - /** Gets or sets an object that indicates whether to customize the scrolling behavior of the Kanban. - * @Default {Object} - */ - scrollSettings?: ScrollSettings; + export interface Fields { - /** To customize the searching behavior of the Kanban. - * @Default {Object} - */ - searchSettings?: SearchSettings; + /** Used to group the suggestion list items. + */ + groupBy?: string; - /** To allow customize selection type. Accepting types are "single" and "multiple". - * @Default {ej.Kanban.SelectionType.Single} - */ - selectionType?: ej.Kanban.SelectionType | string; + /** Defines the HTML attributes such as id, class, styles for the item. + */ + htmlAttributes?: any; - /** Gets or sets an object that indicates to managing the collection of stacked header rows for the Kanban. - * @Default {Array} - */ - stackedHeaderRows?: StackedHeaderRow[]; + /** Defines the specific field name which contains unique key values for the list items. + */ + key?: string; - /** The tooltip allows to display card details in a tooltip while hovering on it. - */ - tooltipSettings?: TooltipSettings; + /** Defines the specific field name in the data source to load the suggestion list with data. + */ + text?: string; + } - /** Gets or sets an object that indicates to render the Kanban with specified workflows. - * @Default {Array} - */ - workflows?: Workflow[]; + export interface MultiColumnSettingsColumn { - /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data i.e. in a language and culture specific - * to a particular country or region. - * @Default {en-US} - */ - locale?: string; + /** Get or set a value that indicates to display the columns in the autocomplete mapping with column name of the dataSource. + */ + field?: string; - /** Triggered for every Kanban action before its starts. */ - actionBegin?(e: ActionBeginEventArgs): void; + /** Get or set a value that indicates to display the title of that particular column. + */ + headerText?: string; - /** Triggered for every Kanban action success event. */ - actionComplete?(e: ActionCompleteEventArgs): void; + /** Gets or sets a value that indicates to render the multicolumn with custom theme. + */ + cssClass?: string; - /** Triggered for every Kanban action server failure event. */ - actionFailure?(e: ActionFailureEventArgs): void; + /** Specifies the search data type. There are four types of data types available such as string, ‘number’, ‘boolean’ and ‘date’. + * @Default {ej.Type.String} + */ + type?: ej.Type|string; - /** Triggered before the task is going to be edited. */ - beginEdit?(e: BeginEditEventArgs): void; + /** Specifies the search filter type. There are several types of search filter available such as ‘startswith’, ‘contains’, ‘endswith’, ‘lessthan’, + * ‘lessthanorequal’, ‘greaterthan’, ‘greaterthanorequal’, ‘equal’, ‘notequal’. + * @Default {ej.filterType.StartsWith} + */ + filterType?: ej.filterType|string; - /** Triggered before the card is going to be added */ - beginAdd?(e: BeginAddEventArgs): void; + /** This defines the text alignment of a particular column header cell value. See headerTextAlign + * @Default {ej.TextAlign.Left} + */ + headerTextAlign?: ej.TextAlign|string; - /** Triggered before the card is selected. */ - beforeCardSelect?(e: BeforeCardSelectEventArgs): void; + /** Gets or sets a value that indicates to align the text within the column. See textAlign + * @Default {ej.TextAlign.Left} + */ + textAlign?: ej.TextAlign|string; + } - /** Trigger after the card is clicked. */ - cardClick?(e: CardClickEventArgs): void; + export interface MultiColumnSettings { - /** Triggered when the card is being dragged. */ - cardDrag?(e: CardDragEventArgs): void; + /** Allow list of data to be displayed in several columns. + * @Default {false} + */ + enable?: boolean; - /** Triggered when card dragging start. */ - cardDragStart?(e: CardDragStartEventArgs): void; + /** Allow header text to be displayed in corresponding columns. + * @Default {true} + */ + showHeader?: boolean; - /** Triggered when card dragging stops. */ - cardDragStop?(e: CardDragStopEventArgs): void; + /** Displayed selected value and autocomplete search based on mentioned column value specified in that format. + */ + stringFormat?: string; - /** Triggered when the card is Dropped. */ - cardDrop?(e: CardDropEventArgs): void; + /** Field and Header Text collections can be defined and customized through columns field. + */ + columns?: MultiColumnSettingsColumn[]; + } - /** Triggered after the card is selected. */ - cardSelect?(e: CardSelectEventArgs): void; + enum Animation { - /** Triggered when card is double clicked. */ - cardDoubleClick?(e: CardDoubleClickEventArgs): void; + ///Supports to animation type with none type only. + None, - /** Triggered before the card is selected. */ - cardSelecting?(e: CardSelectingEventArgs): void; + ///Supports to animation type with slide type only. + Slide, + + ///Supports to animation type with fade type only. + Fade + } + + + enum MultiSelectMode { - /** Triggered when the Kanban is rendered completely */ - create?(e: CreateEventArgs): void; + ///Multiple values are separated using a given special character. + Delimiter, + + ///Each values are displayed in separate box with close button. + VisualMode + } + + + enum SortOrder { + + ///Items to be displayed in the suggestion list in ascending order. + Ascending, + + ///Items to be displayed in the suggestion list in descending order. + Descending + } + + } + + class Button extends ej.Widget { + static fn: Button; + constructor(element: JQuery | Element, options?: Button.Model); + static Locale: any; + model: Button.Model; + defaults: Button.Model; + + /** destroy the button widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** To disable the button + * @returns {void} + */ + disable(): void; + + /** To enable the button + * @returns {void} + */ + enable(): void; + } + export namespace Button { + + export interface Model { + + /** Specifies the contentType of the Button. See below to know available ContentType + * @Default {ej.ContentType.TextOnly} + */ + contentType?: ej.ContentType|string; + + /** Sets the root CSS class for Button theme, which is used customize. + */ + cssClass?: string; + + /** Specifies the button control state. + * @Default {true} + */ + enabled?: boolean; + + /** Specify the Right to Left direction to button + * @Default {false} + */ + enableRTL?: boolean; - /** Triggers after the cell is clicked. */ - cellClick?(e: CellClickEventArgs): void; + /** Specifies the height of the Button. + * @Default {28} + */ + height?: number; + + /** It allows to define the characteristics of the Button control. It will helps to extend the capability of an HTML element. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specifies the image position of the Button. This image position is applicable only with the textandimage contentType property. The images can be positioned in both imageLeft and + * imageRight options. See below to know about available ImagePosition + * @Default {ej.ImagePosition.ImageLeft} + */ + imagePosition?: ej.ImagePosition|string; - /** Triggered before the context menu is opened. */ - contextOpen?(e: ContextOpenEventArgs): void; + /** Specifies the primary icon for Button. This icon will be displayed from the left margin of the button. + * @Default {null} + */ + prefixIcon?: string; - /** Triggered when context menu item is clicked in Kanban */ - contextClick?(e: ContextClickEventArgs): void; + /** Convert the button as repeat button. It raises the 'Click' event repeatedly from the it is pressed until it is released. + * @Default {false} + */ + repeatButton?: boolean; + + /** Displays the Button with rounded corners. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specifies the size of the Button. See below to know available ButtonSize + * @Default {ej.ButtonSize.Normal} + */ + size?: ej.ButtonSize|string; + + /** Specifies the secondary icon for Button. This icon will be displayed from the right margin of the button. + * @Default {null} + */ + suffixIcon?: string; + + /** Specifies the text content for Button. + * @Default {null} + */ + text?: string; + + /** Specified the time interval between two consecutive 'click' event on the button. + * @Default {150} + */ + timeInterval?: string; + + /** Specifies the Type of the Button. See below to know available ButtonType + * @Default {ej.ButtonType.Submit} + */ + type?: ej.ButtonType|string; + + /** Specifies the width of the Button. + * @Default {100px} + */ + width?: string|number; + + /** Fires when Button control is clicked successfully.Consider the scenario to perform any validation,modification of content or any other operations click on button,we can make use + * of this click event to achieve the scenario. + */ + click?(e: ClickEventArgs): void; + + /** Fires after Button control is created.If the user want to perform any operation after the button control creation then the user can make use of this create event. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the button is destroyed successfully.If the user want to perform any operation after the destroy button control then the user can make use of this destroy event. + */ + destroy?(e: DestroyEventArgs): void; + } + + export interface ClickEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the button model + */ + model?: ej.Button.Model; + + /** returns the name of the event + */ + type?: string; + + /** return the button state + */ + status?: boolean; + + /** return the event model for sever side processing. + */ + e?: any; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the button model + */ + model?: ej.Button.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the button model + */ + model?: ej.Button.Model; + + /** returns the name of the event + */ + type?: string; + } + } + enum ContentType { + //To display the text content only in button + TextOnly, + //To display the image only in button + ImageOnly, + //Supports to display image for both ends of the button + ImageBoth, + //Supports to display image with the text content + TextAndImage, + //Supports to display image with both ends of the text + ImageTextImage, + } + enum ImagePosition { + //support for aligning text in left and image in right + ImageRight, + //support for aligning text in right and image in left + ImageLeft, + //support for aligning text in bottom and image in top. + ImageTop, + //support for aligning text in top and image in bottom + ImageBottom, + } + enum ButtonSize { + //Creates button with Built-in default size height, width specified + Normal, + //Creates button with Built-in mini size height, width specified + Mini, + //Creates button with Built-in small size height, width specified + Small, + //Creates button with Built-in medium size height, width specified + Medium, + //Creates button with Built-in large size height, width specified + Large, + } + enum ButtonType { + //Creates button with Built-in button type specified + Button, + //Creates button with Built-in reset type specified + Reset, + //Creates button with Built-in submit type specified + Submit, + } + + class Captcha extends ej.Widget { + static fn: Captcha; + constructor(element: JQuery | Element, options?: Captcha.Model); + static Locale: any; + model: Captcha.Model; + defaults: Captcha.Model; + } + export namespace Captcha { + + export interface Model { + + /** Specifies the character set of the Captcha that will be used to generate captcha text randomly. + */ + characterSet?: string; + + /** Specifies the error message to be displayed when the Captcha mismatch. + */ + customErrorMessage?: string; + + /** Set the Captcha validation automatically. + */ + enableAutoValidation?: boolean; + + /** Specifies the case sensitivity for the characters typed in the Captcha. + */ + enableCaseSensitivity?: boolean; + + /** Specifies the background patterns for the Captcha. + */ + enablePattern?: boolean; + + /** Sets the Captcha direction as right to left alignment. + */ + enableRTL?: boolean; + + /** Specifies the background appearance for the captcha. + */ + hatchStyle?: ej.HatchStyle|string; + + /** Specifies the height of the Captcha. + */ + height?: number; + + /** Specifies the method with values to be mapped in the Captcha. + */ + mapper?: string; + + /** Specifies the maximum number of characters used in the Captcha. + */ + maximumLength?: number; + + /** Specifies the minimum number of characters used in the Captcha. + */ + minimumLength?: number; + + /** Specifies the method to map values to Captcha. + */ + requestMapper?: string; + + /** Sets the Captcha with audio support, that enables to dictate the captcha text. + */ + showAudioButton?: boolean; + + /** Sets the Captcha with a refresh button. + */ + showRefreshButton?: boolean; + + /** Specifies the target button of the Captcha to validate the entered text and captcha text. + */ + targetButton?: string; + + /** Specifies the target input element that will verify the Captcha. + */ + targetInput?: string; + + /** Specifies the width of the Captcha. + */ + width?: number; + + /** Fires when captcha refresh begins. + */ + refreshBegin?(e: RefreshBeginEventArgs): void; + + /** Fires after captcha refresh completed. + */ + refreshComplete?(e: RefreshCompleteEventArgs): void; + + /** Fires when captcha refresh fails to load. + */ + refreshFailure?(e: RefreshFailureEventArgs): void; + + /** Fires after captcha refresh succeeded. + */ + refreshSuccess?(e: RefreshSuccessEventArgs): void; + } + + export interface RefreshBeginEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Captcha model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface RefreshCompleteEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Captcha model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface RefreshFailureEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Captcha model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface RefreshSuccessEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Captcha model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + } + enum HatchStyle { + //Set background as None to Captcha + None, + //Set background as BackwardDiagonal to Captcha + BackwardDiagonal, + //Set background as Cross to Captcha + Cross, + //Set background as DarkDownwardDiagonal to Captcha + DarkDownwardDiagonal, + //Set background as DarkHorizontal to Captcha + DarkHorizontal, + //Set background as DarkUpwardDiagonal to Captcha + DarkUpwardDiagonal, + //Set background as DarkVertical to Captcha + DarkVertical, + //Set background as DashedDownwardDiagonal to Captcha + DashedDownwardDiagonal, + //Set background as DashedHorizontal to Captcha + DashedHorizontal, + //Set background as DashedUpwardDiagonal to Captcha + DashedUpwardDiagonal, + //Set background as DashedVertical to Captcha + DashedVertical, + //Set background as DiagonalBrick to Captcha + DiagonalBrick, + //Set background as DiagonalCross to Captcha + DiagonalCross, + //Set background as Divot to Captcha + Divot, + //Set background as DottedDiamond to Captcha + DottedDiamond, + //Set background as DottedGrid to Captcha + DottedGrid, + //Set background as ForwardDiagonal to Captcha + ForwardDiagonal, + //Set background as Horizontal to Captcha + Horizontal, + //Set background as HorizontalBrick to Captcha + HorizontalBrick, + //Set background as LargeCheckerBoard to Captcha + LargeCheckerBoard, + //Set background as LargeConfetti to Captcha + LargeConfetti, + //Set background as LargeGrid to Captcha + LargeGrid, + //Set background as LightDownwardDiagonal to Captcha + LightDownwardDiagonal, + //Set background as LightHorizontal to Captcha + LightHorizontal, + //Set background as LightUpwardDiagonal to Captcha + LightUpwardDiagonal, + //Set background as LightVertical to Captcha + LightVertical, + //Set background as Max to Captcha + Max, + //Set background as Min to Captcha + Min, + //Set background as NarrowHorizontal to Captcha + NarrowHorizontal, + //Set background as NarrowVertical to Captcha + NarrowVertical, + //Set background as OutlinedDiamond to Captcha + OutlinedDiamond, + //Set background as Percent90 to Captcha + Percent90, + //Set background as Wave to Captcha + Wave, + //Set background as Weave to Captcha + Weave, + //Set background as WideDownwardDiagonal to Captcha + WideDownwardDiagonal, + //Set background as WideUpwardDiagonal to Captcha + WideUpwardDiagonal, + //Set background as ZigZag to Captcha + ZigZag, + } + + class ListBox extends ej.Widget { + static fn: ListBox; + constructor(element: JQuery | Element, options?: ListBox.Model); + static Locale: any; + model: ListBox.Model; + defaults: ListBox.Model; + + /** Adds a given list items in the ListBox widget at a specified index. It accepts two parameters. + * @param {any|string} This can be a list item object (for JSON binding) or a string (for UL and LI rendering). Also we can the specify this as an array of list item object or an + * array of strings to add multiple items. + * @param {number} The index value to add the given items at the specified index. If index is not specified, the given items will be added at the end of the list. + * @returns {void} + */ + addItem(listItem: any|string, index: number): void; + + /** Checks all the list items in the ListBox widget. It is dependent on showCheckbox property. + * @returns {void} + */ + checkAll(): void; + + /** Checks a list item by using its index. It is dependent on showCheckbox property. + * @param {number} Index of the listbox item to be checked. If index is not specified, the given items will be added at the end of the list. + * @returns {void} + */ + checkItemByIndex(index: number): void; + + /** Checks multiple list items by using its index values. It is dependent on showCheckbox property. + * @param {number[]} Index/Indices of the listbox items to be checked. If index is not specified, the given items will be added at the end of the list. + * @returns {void} + */ + checkItemsByIndices(indices: number[]): void; + + /** Disables the ListBox widget. + * @returns {void} + */ + disable(): void; + + /** Disables a list item by passing the item text as parameter. + * @param {string} Text of the listbox item to be disabled. + * @returns {void} + */ + disableItem(text: string): void; + + /** Disables a list Item using its index value. + * @param {number} Index of the listbox item to be disabled. + * @returns {void} + */ + disableItemByIndex(index: number): void; + + /** Disables set of list Items using its index values. + * @param {number[]|string} Indices of the listbox items to be disabled. + * @returns {void} + */ + disableItemsByIndices(Indices: number[]|string): void; + + /** Enables the ListBox widget when it is disabled. + * @returns {void} + */ + enable(): void; + + /** Enables a list Item using its item text value. + * @param {string} Text of the listbox item to be enabled. + * @returns {void} + */ + enableItem(text: string): void; + + /** Enables a list item using its index value. + * @param {number} Index of the listbox item to be enabled. + * @returns {void} + */ + enableItemByIndex(index: number): void; + + /** Enables a set of list Items using its index values. + * @param {number[]|string} Indices of the listbox items to be enabled. + * @returns {void} + */ + enableItemsByIndices(indices: number[]|string): void; + + /** Returns the list of checked items in the ListBox widget. It is dependent on showCheckbox property. + * @returns {any} + */ + getCheckedItems(): any; + + /** Returns the list of selected items in the ListBox widget. + * @returns {any} + */ + getSelectedItems(): any; + + /** Returns an item’s index based on the given text. + * @param {string} The list item text (label) + * @returns {number} + */ + getIndexByText(text: string): number; + + /** Returns an item’s index based on the value given. + * @param {string} The list item’s value + * @returns {number} + */ + getIndexByValue(indices: string): number; + + /** Returns an item’s text (label) based on the index given. + * @returns {string} + */ + getTextByIndex(): string; + + /** Returns a list item’s object using its index. + * @returns {any} + */ + getItemByIndex(): any; + + /** Returns a list item’s object based on the text given. + * @param {string} The list item text. + * @returns {any} + */ + getItemByText(text: string): any; + + /** Merges the given data with the existing data items in the listbox. + * @param {any[]} Data to merge in listbox. + * @returns {void} + */ + mergeData(data: any[]): void; + + /** Selects the next item based on the current selection. + * @returns {void} + */ + moveDown(): void; + + /** Selects the previous item based on the current selection. + * @returns {void} + */ + moveUp(): void; + + /** Refreshes the ListBox widget. + * @param {boolean} Refreshes both the datasource and the dimensions of the ListBox widget when the parameter is passed as true, otherwise only the ListBox dimensions will be + * refreshed. + * @returns {void} + */ + refresh(refreshData: boolean): void; + + /** Removes all the list items from listbox. + * @returns {void} + */ + removeAll(): void; + + /** Removes the selected list items from the listbox. + * @returns {void} + */ + removeSelectedItems(): void; + + /** Removes a list item by using its text. + * @param {string} Text of the listbox item to be removed. + * @returns {void} + */ + removeItemByText(text: string): void; + + /** Removes a list item by using its index value. + * @param {number} Index of the listbox item to be removed. + * @returns {void} + */ + removeItemByIndex(index: number): void; + + /** + * @returns {void} + */ + selectAll(): void; + + /** Selects the list item using its text value. + * @param {string} Text of the listbox item to be selected. + * @returns {void} + */ + selectItemByText(text: string): void; + + /** Selects list item using its value property. + * @param {string} Value of the listbox item to be selected. + * @returns {void} + */ + selectItemByValue(value: string): void; + + /** Selects list item using its index value. + * @param {number} Index of the listbox item to be selected. + * @returns {void} + */ + selectItemByIndex(index: number): void; + + /** Selects a set of list items through its index values. + * @param {number|number[]} Index/Indices of the listbox item to be selected. + * @returns {void} + */ + selectItemsByIndices(Indices: number|number[]): void; + + /** Unchecks all the checked list items in the ListBox widget. To use this method showCheckbox property to be set as true. + * @returns {void} + */ + uncheckAll(): void; + + /** Unchecks a checked list item using its index value. To use this method showCheckbox property to be set as true. + * @param {number} Index of the listbox item to be unchecked. + * @returns {void} + */ + uncheckItemByIndex(index: number): void; + + /** Unchecks the set of checked list items using its index values. To use this method showCheckbox property must be set to true. + * @param {number[]|string} Indices of the listbox item to be unchecked. + * @returns {void} + */ + uncheckItemsByIndices(indices: number[]|string): void; + + /** + * @returns {void} + */ + unselectAll(): void; + + /** Unselects a selected list item using its index value + * @param {number} Index of the listbox item to be unselected. + * @returns {void} + */ + unselectItemByIndex(index: number): void; + + /** Unselects a selected list item using its text value. + * @param {string} Text of the listbox item to be unselected. + * @returns {void} + */ + unselectItemByText(text: string): void; + + /** Unselects a selected list item using its value. + * @param {string} Value of the listbox item to be unselected. + * @returns {void} + */ + unselectItemByValue(value: string): void; + + /** Unselects a set of list items using its index values. + * @param {number[]|string} Indices of the listbox item to be unselected. + * @returns {void} + */ + unselectItemsByIndices(indices: number[]|string): void; + + /** Hides all the checked items in the listbox. + * @returns {void} + */ + hideCheckedItems(): void; + + /** Shows a set of hidden list Items using its index values. + * @param {number[]|string} Indices of the listbox items to be shown. + * @returns {void} + */ + showItemByIndices(indices: number[]|string): void; + + /** Hides a set of list Items using its index values. + * @param {number[]|string} Indices of the listbox items to be hidden. + * @returns {void} + */ + hideItemsByIndices(indices: number[]|string): void; + + /** Shows the hidden list items using its values. + * @param {any[]} Values of the listbox items to be shown. + * @returns {void} + */ + showItemsByValues(values: any[]): void; + + /** Hides the list item using its values. + * @param {any[]} Values of the listbox items to be hidden. + * @returns {void} + */ + hideItemsByValues(values: any[]): void; + + /** Shows a hidden list item using its value. + * @param {string} Value of the listbox item to be shown. + * @returns {void} + */ + showItemByValue(value: string): void; + + /** Hide a list item using its value. + * @param {string} Value of the listbox item to be hidden. + * @returns {void} + */ + hideItemByValue(value: string): void; + + /** Shows a hidden list item using its index value. + * @param {number} Index of the listbox item to be shown. + * @returns {void} + */ + showItemByIndex(index: number): void; + + /** Hides a list item using its index value. + * @param {number} Index of the listbox item to be hidden. + * @returns {void} + */ + hideItemByIndex(index: number): void; + + /** + * @returns {void} + */ + show(): void; + + /** Hides the listbox. + * @returns {void} + */ + hide(): void; + + /** Hides all the listbox items in the listbox. + * @returns {void} + */ + hideAllItems(): void; + + /** Shows all the listbox items in the listbox. + * @returns {void} + */ + showAllItems(): void; + } + export namespace ListBox { + + export interface Model { + + /** Enables/disables the dragging behavior of the items in ListBox widget. + * @Default {false} + */ + allowDrag?: boolean; + + /** Accepts the items which are dropped in to it, when it is set to true. + * @Default {false} + */ + allowDrop?: boolean; + + /** Enables or disables multiple selection. + * @Default {false} + */ + allowMultiSelection?: boolean; + + /** Loads the list data on demand via scrolling behavior to improve the application’s performance. There are two ways to load data which can be defined using “virtualScrollMode” + * property. + * @Default {false} + */ + allowVirtualScrolling?: boolean; + + /** Enables or disables the case sensitive search for list item by typing the text (search) value. + * @Default {false} + */ + caseSensitiveSearch?: boolean; + + /** Dynamically populate data of a list box while selecting an item in another list box i.e. rendering child list box based on the item selection in parent list box. This property + * accepts the id of the child ListBox widget to populate the data. + * @Default {null} + */ + cascadeTo?: string; + + /** Set of list items to be checked by default using its index. It works only when the showCheckbox property is set to true. + * @Default {null} + */ + checkedIndices?: any[]; + + /** The root class for the ListBox widget to customize the existing theme. + * @Default {“”} + */ + cssClass?: string; + + /** Contains the list of data for generating the list items. + * @Default {null} + */ + dataSource?: any; + + /** Enables or disables the ListBox widget. + * @Default {true} + */ + enabled?: boolean; + + /** Enables or disables the search behavior to find the specific list item by typing the text value. + * @Default {false} + */ + enableIncrementalSearch?: boolean; + + /** Allows the current model values to be saved in local storage or browser cookies for state maintenance when it is set to true. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Displays the ListBox widget’s content from right to left when enabled. + * @Default {false} + */ + enableRTL?: boolean; + + /** Specifies ellipsis ("...") representation in an overflowed list item content when it is set to false. + * @Default {true} + */ + enableWordWrap?: boolean; + + /** Mapping fields for the data items of the ListBox widget. + * @Default {null} + */ + fields?: Fields; + + /** Defines the height of the ListBox widget. + * @Default {null} + */ + height?: string; + + /** Defines the height for individual ListBox item. + * @Default {null} + */ + itemHeight?: string; + + /** The number of list items to be shown in the ListBox widget. The remaining list items will be scrollable. + * @Default {null} + */ + itemsCount?: number; + + /** The total number of list items to be rendered in the ListBox widget. + * @Default {null} + */ + totalItemsCount?: number; + + /** The number of list items to be loaded in the list box while enabling virtual scrolling and when virtualScrollMode is set to continuous. + * @Default {5} + */ + itemRequestCount?: number; + + /** Loads data for the listbox by default (i.e. on initialization) when it is set to true. It creates empty ListBox if it is set to false. + * @Default {true} + */ + loadDataOnInit?: boolean; + + /** The query to retrieve required data from the data source. + * @Default {ej.Query()} + */ + query?: ej.Query; + + /** The list item to be selected by default using its index. + * @Default {null} + */ + selectedIndex?: number; + + /** The list items to be selected by default using its indices. To use this property allowMultiSelection should be enabled. + * @Default {[]} + */ + selectedIndices?: any[]; + + /** Enables/Disables the multi selection option with the help of checkbox control. + * @Default {false} + */ + showCheckbox?: boolean; + + /** To display the ListBox container with rounded corners. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Set to sort ListBox items either by Ascending or Descending order. By default sortOrder is set as enum type of "None".You can use only below mentioned type for sorting + * purpose. + * @Default {ej.SortOrder.None} + */ + sortOrder?: ej.ListBox.SortOrder|string; + + /** The template to display the ListBox widget with customized appearance. + * @Default {null} + */ + template?: string; + + /** Holds the selected items values and used to bind value to the list item using AngularJS and KnockoutJS. + * @Default {“”} + */ + value?: number; + + /** Specifies the virtual scroll mode to load the list data on demand via scrolling behavior. There are two types of mode. + * @Default {ej.VirtualScrollMode.Normal} + */ + virtualScrollMode?: ej.VirtualScrollMode|string; + + /** Defines the width of the ListBox widget. + * @Default {null} + */ + width?: string; + + /** Specifies the targetID for the listbox items. + * @Default {null} + */ + targetID?: string; + + /** Triggers before the AJAX request begins to load data in the ListBox widget. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Triggers after the data requested via AJAX is successfully loaded in the ListBox widget. + */ + actionSuccess?(e: ActionSuccessEventArgs): void; + + /** Triggers when the AJAX requests complete. The request may get failed or succeed. + */ + actionComplete?(e: ActionCompleteEventArgs): void; + + /** Triggers when the data requested from AJAX get failed. + */ + actionFailure?(e: ActionFailureEventArgs): void; + + /** Event will be triggered before the requested data via AJAX once loaded in successfully. + */ + actionBeforeSuccess?(e: ActionBeforeSuccessEventArgs): void; + + /** Triggers when the item selection is changed. + */ + change?(e: ChangeEventArgs): void; + + /** Triggers when the list item is checked or unchecked. + */ + checkChange?(e: CheckChangeEventArgs): void; + + /** Triggers when the ListBox widget is created successfully. + */ + create?(e: CreateEventArgs): void; + + /** Triggers when the ListBox widget is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Triggers when focus the listbox items. + */ + focusIn?(e: FocusInEventArgs): void; + + /** Triggers when focus out from listbox items. + */ + focusOut?(e: FocusOutEventArgs): void; + + /** Triggers when the list item is being dragged. + */ + itemDrag?(e: ItemDragEventArgs): void; + + /** Triggers when the list item is ready to be dragged. + */ + itemDragStart?(e: ItemDragStartEventArgs): void; + + /** Triggers when the list item stops dragging. + */ + itemDragStop?(e: ItemDragStopEventArgs): void; + + /** Triggers when the list item is dropped. + */ + itemDrop?(e: ItemDropEventArgs): void; + + /** Triggers when a list item gets selected. + */ + select?(e: SelectEventArgs): void; - /** Triggered the Kanban is bound with data during initial rendering. */ - dataBound?(e: DataBoundEventArgs): void; + /** Triggers when a list item gets unselected. + */ + unselect?(e: UnselectEventArgs): void; + } - /** Triggered when Kanban going to destroy. */ - destroy?(e: DestroyEventArgs): void; + export interface ActionBeginEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Triggered after the card is deleted. */ - endDelete?(e: EndDeleteEventArgs): void; + /** returns the ListBox model + */ + model?: any; - /** Triggered after the card is edited. */ - endEdit?(e: EndEditEventArgs): void; + /** returns the name of the event + */ + type?: string; + } - /** Triggers after the header is clicked. */ - headerClick?(e: HeaderClickEventArgs): void; + export interface ActionSuccessEventArgs { - /** Triggered initial load. */ - load?(e: LoadEventArgs): void; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Triggers before swim lane expand or collapse icon is clicked. */ - swimlaneClick?(e: SwimlaneClickEventArgs): void; + /** Returns number of times trying to fetch the data + */ + count?: number; - /** Triggered every time a single card rendered request is made to access particular card information. */ - queryCellInfo?(e: QueryCellInfoEventArgs): void; + /** returns the ListBox model + */ + model?: any; - /** Triggered when toolbar item is clicked in Kanban. */ - toolbarClick?(e: ToolbarClickEventArgs): void; - } + /** Returns the query for data retrieval + */ + query?: any; - export interface ActionBeginEventArgs { + /** Returns the query for data retrieval from the Database + */ + request?: any; - /** Returns the Kanban model. - */ - model?: any; + /** returns the name of the event + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the number of items fetched from remote data + */ + result?: any[]; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the requested data + */ + xhr?: any; + } - /** Returns the current action event type. - */ - originalEventType?: string; + export interface ActionCompleteEventArgs { - /** Returns primary key value. - */ - primaryKeyValue?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Returns request type. - */ - requestType?: string; + /** Returns number of times trying to fetch the data + */ + count?: number; - /** Returns the edited row index. - */ - rowIndex?: number; + /** returns the ListBox model + */ + model?: any; - /** Returns the card object (JSON). - */ - data?: any; + /** Returns the query for data retrieval + */ + query?: any; - /** Returns current filtering object field name. - */ - currentFilteringobject?: any; + /** Returns the query for data retrieval from the Database + */ + request?: any; - /** Returns filter details. - */ - filterCollection?: any; - } + /** returns the name of the event + */ + type?: string; - export interface ActionCompleteEventArgs { + /** Returns the number of items fetched from remote data + */ + result?: any[]; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the requested data + */ + xhr?: any; + } - /** Returns the Kanban model. - */ - model?: any; + export interface ActionFailureEventArgs { - /** Returns request type. - */ - requestType?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; + /** Returns the error message + */ + error?: any; - /** Returns current action event type. - */ - originalEventType?: string; + /** returns the ListBox model + */ + model?: any; - /** Returns primary key. - */ - primaryKey?: string; + /** Returns the query for data retrieval + */ + query?: any; - /** Returns primary key value. - */ - primaryKeyValue?: string; + /** returns the name of the event + */ + type?: string; + } - /** Returns Kanban element. - */ - target?: any; + export interface ActionBeforeSuccessEventArgs { - /** Returns the card object (JSON). - */ - data?: any; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the selectedRow index. - */ - selectedRow?: number; + /** Name of the event. + */ + type?: string; - /** Returns current filtering column field name. - */ - currentFilteringColumn?: string; + /** List of actual object. + */ + actual?: any; - /** Returns filter details. - */ - filterCollection?: any; - } + /** Object of ListBox widget which contains DataManager arguments + */ + request?: any; - export interface ActionFailureEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** List of array object + */ + result?: any[]; - /** Returns the Kanban model. - */ - model?: any; + /** ExecuteQuery object of DataManager + */ + xhr?: any; + } - /** Returns request type. - */ - requestType?: string; + export interface ChangeEventArgs { - /** Returns the name of the event. - */ - type?: string; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the error return by server. - */ - error?: any; + /** Name of the event. + */ + type?: string; - /** Returns current action event type. - */ - originalEventType?: string; + /** List item object. + */ + item?: any; - /** Returns primary key value. - */ - primaryKeyValue?: string; + /** The Datasource of the listbox. + */ + data?: any; - /** Returns Kanban element. - */ - target?: any; + /** List item’s index. + */ + index?: number; - /** Returns the card object (JSON). - */ - data?: any; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Returns current filtering column field name. - */ - currentFilteringColumn?: string; + /** Boolean value based on whether the list item is checked or not. + */ + isChecked?: boolean; - /** Returns filter details. - */ - filterCollection?: any; - } + /** Boolean value based on whether the list item is selected or not. + */ + isSelected?: boolean; - export interface BeginEditEventArgs { + /** Boolean value based on the list item is enabled or not. + */ + isEnabled?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** List item’s text (label). + */ + text?: string; - /** Returns the Kanban model. - */ - model?: any; + /** List item’s value. + */ + value?: string; + } - /** Returns primary key value. - */ - primaryKeyValue?: string; + export interface CheckChangeEventArgs { - /** Returns begin edit data. - */ - data?: any; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the name of the event. - */ - type?: string; - } + /** Name of the event. + */ + type?: string; - export interface BeginAddEventArgs { + /** List item object. + */ + item?: any; - /** Returns the Kanban model. - */ - model?: any; + /** The Datasource of the listbox. + */ + data?: any; - /** Returns primary key value. - */ - primaryKeyValue?: string; + /** List item’s index. + */ + index?: number; - /** Returns beginAdd data. - */ - data?: any; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** Boolean value based on whether the list item is checked or not. + */ + isChecked?: boolean; - export interface BeforeCardSelectEventArgs { + /** Boolean value based on whether the list item is selected or not. + */ + isSelected?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Boolean value based on the list item is enabled or not. + */ + isEnabled?: boolean; - /** Returns the select cell index value. - */ - cellIndex?: number; + /** List item’s text (label). + */ + text?: string; - /** Returns the select card index value. - */ - cardIndex?: number; + /** List item’s value. + */ + value?: string; + } - /** Returns the select cell element - */ - currentCell?: any; + export interface CreateEventArgs { - /** Returns the previously select the card element - */ - previousCard?: any; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the previously select card indexes - */ - previousRowcellindex?: any[]; + /** Name of the event. + */ + type?: string; - /** Returns the Target item. - */ - Target?: any; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + } - /** Returns the Kanban model. - */ - model?: any; + export interface DestroyEventArgs { - /** Returns select card data. - */ - data?: any; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the name of the event. - */ - type?: string; - } + /** Name of the event. + */ + type?: string; - export interface CardClickEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface FocusInEventArgs { - /** Returns current record object (JSON). - */ - data?: any; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the current card to the Kanban. - */ - currentCard?: string; + /** Name of the event. + */ + type?: string; - /** Returns Kanban element. - */ - target?: any; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + } - /** Returns the Kanban model. - */ - model?: any; + export interface FocusOutEventArgs { - /** Returns the Header text of the column corresponding to the selected card. - */ - columnName?: string; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the name of the event. - */ - type?: string; - } + /** Name of the event. + */ + type?: string; - export interface CardDragEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface ItemDragEventArgs { - /** Returns drag data. - */ - data?: any; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns drag start element. - */ - dragtarget?: any; + /** Name of the event. + */ + type?: string; - /** Returns dragged element. - */ - draggedElement?: any; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Returns the Kanban model. - */ - model?: any; + /** The Datasource of the listbox. + */ + data?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** List item’s index. + */ + index?: number; - export interface CardDragStartEventArgs { + /** Boolean value based on whether the list item is checked or not. + */ + isChecked?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Boolean value based on whether the list item is selected or not. + */ + isSelected?: boolean; - /** Returns card drag start data. - */ - data?: any; + /** Boolean value based on whether the list item is enabled or not. + */ + isEnabled?: boolean; - /** Returns dragged element. - */ - draggedElement?: any; + /** List item’s text (label). + */ + text?: string; - /** Returns the Kanban model. - */ - model?: any; + /** List item’s value. + */ + value?: string; + } - /** Returns drag start element. - */ - dragtarget?: any; + export interface ItemDragStartEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - export interface CardDragStopEventArgs { + /** Name of the event. + */ + type?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Returns dragged element. - */ - draggedElement?: any; + /** The Datasource of the listbox. + */ + data?: any; - /** Returns the Kanban model. - */ - model?: any; + /** List item’s index. + */ + index?: number; - /** Returns drag stop element. - */ - droptarget?: any; + /** Boolean value based on whether the list item is checked or not. + */ + isChecked?: boolean; - /** Returns drag stop data. - */ - data?: any; + /** Boolean value based on whether the list item is selected or not. + */ + isSelected?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** Boolean value based on whether the list item is enabled or not. + */ + isEnabled?: boolean; - export interface CardDropEventArgs { + /** List item’s text (label). + */ + text?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** List item’s value. + */ + value?: string; + } - /** Returns dragged element. - */ - draggedElement?: any; + export interface ItemDragStopEventArgs { - /** Returns previous parent of dragged element - */ - draggedParent?: any; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns dragged data. - */ - data?: any; + /** Name of the event. + */ + type?: string; - /** Returns the Kanban model. - */ - model?: any; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Returns drop element. - */ - target?: any; + /** The Datasource of the listbox. + */ + data?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** List item’s index. + */ + index?: number; - export interface CardSelectEventArgs { + /** Boolean value based on whether the list item is checked or not. + */ + isChecked?: boolean; - /** Returns the select cell index value. - */ - cellIndex?: number; + /** Boolean value based on whether the list item is selected or not. + */ + isSelected?: boolean; - /** Returns the select card index value. - */ - cardIndex?: number; + /** Boolean value based on whether the list item is enabled or not. + */ + isEnabled?: boolean; - /** Returns the select cell element - */ - currentCell?: any; + /** List item’s text (label). + */ + text?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** List item’s value. + */ + value?: string; + } - /** Returns the previously select the card element - */ - previousCard?: any; + export interface ItemDropEventArgs { - /** Returns the previously select card indexes - */ - previousRowcellindex?: any[]; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the current item. - */ - currentTarget?: any; + /** Name of the event. + */ + type?: string; - /** Returns the Kanban model. - */ - model?: any; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Returns select card data. - */ - data?: any; + /** The Datasource of the listbox. + */ + data?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** List item’s index. + */ + index?: number; - export interface CardDoubleClickEventArgs { + /** Boolean value based on whether the list item is checked or not. + */ + isChecked?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Boolean value based on whether the list item is selected or not. + */ + isSelected?: boolean; - /** Returns current card object (JSON). - */ - data?: any; + /** Boolean value based on whether the list item is enabled or not. + */ + isEnabled?: boolean; - /** Returns the Kanban model. - */ - model?: any; + /** List item’s text (label). + */ + text?: string; - /** Returns the name of the event. - */ - type?: string; - } + /** List item’s value. + */ + value?: string; + } - export interface CardSelectingEventArgs { + export interface SelectEventArgs { - /** Returns the selecting cell index value. - */ - cellIndex?: number; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the selecting card index value. - */ - cardIndex?: number; + /** Name of the event. + */ + type?: string; - /** Returns the selecting cell element - */ - currentCell?: any; + /** List item object. + */ + item?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** The Datasource of the listbox. + */ + data?: any; - /** Returns the previously selecting the card element - */ - previousCard?: any; + /** List item’s index. + */ + index?: number; - /** Returns the previously rowcell is selecting card indexes - */ - previousRowcellindex?: any[]; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Returns the current item. - */ - currentTarget?: any; + /** Boolean value based on whether the list item is checked or not. + */ + isChecked?: boolean; - /** Returns the Kanban model. - */ - model?: any; + /** Boolean value based on whether the list item is selected or not. + */ + isSelected?: boolean; - /** Returns added data. - */ - data?: any; + /** Boolean value based on the list item is enabled or not. + */ + isEnabled?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** List item’s text (label). + */ + text?: string; - export interface CreateEventArgs { + /** List item’s value. + */ + value?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface UnselectEventArgs { - /** Returns the kanban model. - */ - model?: any; + /** Instance of the listbox model object. + */ + model?: ej.ListBox.Model; - /** Returns the name of the event. - */ - type?: string; - } + /** Name of the event. + */ + type?: string; - export interface CellClickEventArgs { + /** List item object. + */ + item?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** The Datasource of the listbox. + */ + data?: any; - /** Returns the kanban model. - */ - model?: any; + /** List item’s index. + */ + index?: number; - /** Returns the name of the event. - */ - type?: string; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Returns the select cell index value. - */ - cellIndex?: number; + /** Boolean value based on whether the list item is checked or not. + */ + isChecked?: boolean; - /** Returns the edited row index. - */ - rowIndex?: number; - } + /** Boolean value based on whether the list item is selected or not. + */ + isSelected?: boolean; + + /** Boolean value based on the list item is enabled or not. + */ + isEnabled?: boolean; + + /** List item’s text (label). + */ + text?: string; + + /** List item’s value. + */ + value?: string; + } + + export interface Fields { + + /** Defines the specific field name which contains Boolean values to specify whether the list items to be checked by default or not. + */ + checkBy?: boolean; + + /** The grouping in the ListBox widget can be defined using this field. + */ + groupBy?: string; + + /** Defines the HTML attributes such as id, class, styles for the specific ListBox item. + */ + htmlAttributes?: any; + + /** Defines the specific field name which contains id values for the list items. + */ + id?: string; + + /** Defines the imageURL for the image to be displayed in the ListBox item. + */ + imageUrl?: string; + + /** Defines the image attributes such as height, width, styles and so on. + */ + imageAttributes?: string; + + /** Defines the specific field name which contains Boolean values to specify whether the list items to be selected by default or not. + */ + selectBy?: boolean; + + /** Defines the sprite CSS class for the image to be displayed. + */ + spriteCssClass?: string; + + /** Defines the table name to get the specific set of list items to be loaded in the ListBox widget while rendering with remote data. + */ + tableName?: string; + + /** Defines the specific field name in the data source to load the list with data. + */ + text?: string; + + /** Defines the specific field name in the data source to load the list with data value property. + */ + value?: string; + } + + enum SortOrder { + + ///The items are not sorted. + None, + + ///To sort items in Ascending order. + Ascending, + + ///To sort items in Descending order. + Descending + } + + } + + class Calculate { + static fn: Calculate; + constructor(element: JQuery | Element, options?: Calculate.Model); + static Locale: any; + model: Calculate.Model; + defaults: Calculate.Model; + + /** Add the custom formulas with function in CalcEngine library + * @param {string} pass the formula name + * @param {string} pass the custom function name to call + * @returns {void} + */ + addCustomFunction(FormulaName: string, FunctionName: string): void; + + /** Adds a named range to the NamedRanges collection + * @param {string} pass the namedRange's name + * @param {string} pass the cell range of NamedRange + * @returns {void} + */ + addNamedRange(Name: string, cellRange: string): void; + + /** Accepts a possible parsed formula and returns the calculated value without quotes. + * @param {string} pass the cell range to adjust its range + * @returns {string} + */ + adjustRangeArg(Name: string): string; + + /** When a formula cell changes, call this method to clear it from its dependent cells. + * @param {string} pass the changed cell address + * @returns {void} + */ + clearFormulaDependentCells(Cell: string): void; + + /** Call this method to clear whether an exception was raised during the computation of a library function. + * @returns {void} + */ + clearLibraryComputationException(): void; + + /** Get the column index from a cell reference passed in. + * @param {string} pass the cell address + * @returns {void} + */ + colIndex(Cell: string): void; + + /** Evaluates a parsed formula. + * @param {string} pass the parsed formula + * @returns {string} + */ + computedValue(Formula: string): string; + + /** Evaluates a parsed formula. + * @param {string} pass the parsed formula + * @returns {string} + */ + computeFormula(Formula: string): string; + } + export namespace Calculate { + + export interface Model { + } + } + + class CheckBox extends ej.Widget { + static fn: CheckBox; + constructor(element: JQuery | Element, options?: CheckBox.Model); + static Locale: any; + model: CheckBox.Model; + defaults: CheckBox.Model; + + /** Destroy the CheckBox widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** Disable the CheckBox to prevent all user interactions. + * @returns {void} + */ + disable(): void; + + /** To enable the CheckBox + * @returns {void} + */ + enable(): void; + + /** To Check the status of CheckBox + * @returns {boolean} + */ + isChecked(): boolean; + } + export namespace CheckBox { + + export interface Model { + + /** Specifies whether CheckBox has to be in checked or not. We can also specify array of string as value for this property. If any of the value in the specified array matches the + * value of the textbox, then it will be considered as checked. It will be useful in MVVM binding, specify array type to identify the values of the checked CheckBoxes. + * @Default {false} + */ + checked?: boolean|string[]; + + /** Specifies the State of CheckBox.See below to get available CheckState + * @Default {null} + */ + checkState?: ej.CheckState|string; + + /** Sets the root CSS class for CheckBox theme, which is used customize. + */ + cssClass?: string; + + /** Specifies the checkbox control state. + * @Default {true} + */ + enabled?: boolean; + + /** Specifies the persist property for CheckBox while initialization. The persist API save current model value to browser cookies for state maintains. While refreshing the CheckBox + * control page the model value apply from browser cookies. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Specify the Right to Left direction to Checkbox + * @Default {false} + */ + enableRTL?: boolean; + + /** Specifies the enable or disable Tri-State for checkbox control. + * @Default {false} + */ + enableTriState?: boolean; + + /** It allows to define the characteristics of the CheckBox control. It will helps to extend the capability of an HTML element. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specified value to be added an id attribute of the CheckBox. + * @Default {null} + */ + id?: string; + + /** Specify the prefix value of id to be added before the current id of the CheckBox. + * @Default {ej} + */ + idPrefix?: string; + + /** Specifies the name attribute of the CheckBox. + * @Default {null} + */ + name?: string; + + /** Displays rounded corner borders to CheckBox + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specifies the size of the CheckBox.See below to know available CheckboxSize + * @Default {small} + */ + size?: ej.CheckboxSize|string; + + /** Specifies the text content to be displayed for CheckBox. + */ + text?: string; + + /** Set the jQuery validation error message in CheckBox. + * @Default {null} + */ + validationMessage?: any; + + /** Set the jQuery validation rules in CheckBox. + * @Default {null} + */ + validationRules?: any; + + /** Specifies the value attribute of the CheckBox. + * @Default {null} + */ + value?: string; + + /** Fires before the CheckBox is going to changed its state successfully + */ + beforeChange?(e: BeforeChangeEventArgs): void; + + /** Fires when the CheckBox state is changed successfully + */ + change?(e: ChangeEventArgs): void; + + /** Fires when the CheckBox state is created successfully + */ + create?(e: CreateEventArgs): void; + + /** Fires when the CheckBox state is destroyed successfully + */ + destroy?(e: DestroyEventArgs): void; + } + + export interface BeforeChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the CheckBox model + */ + model?: ej.CheckBox.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the event model values + */ + event?: any; + + /** returns the status whether the element is checked or not. + */ + isChecked?: boolean; + } + + export interface ChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the CheckBox model + */ + model?: ej.CheckBox.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the event arguments + */ + event?: any; + + /** returns the status whether the element is checked or not. + */ + isChecked?: boolean; + + /** returns the state of the checkbox + */ + checkState?: string; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the CheckBox model + */ + model?: ej.CheckBox.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the CheckBox model + */ + model?: ej.CheckBox.Model; + + /** returns the name of the event + */ + type?: string; + } + } + enum CheckState { + //string + Uncheck, + //string + Check, + //string + Indeterminate, + } + enum CheckboxSize { + //Displays the CheckBox in medium size + Medium, + //Displays the CheckBox in small size + Small, + } + + class ColorPicker extends ej.Widget { + static fn: ColorPicker; + constructor(element: JQuery | Element, options?: ColorPicker.Model); + static Locale: any; + model: ColorPicker.Model; + defaults: ColorPicker.Model; + + /** Disables the color picker control + * @returns {void} + */ + disable(): void; + + /** Enable the color picker control + * @returns {void} + */ + enable(): void; + + /** Gets the selected color in RGB format + * @returns {any} + */ + getColor(): any; + + /** Gets the selected color value as string + * @returns {string} + */ + getValue(): string; + + /** To Convert color value from hexCode to RGB + * @param {string} Specified HEX code converted to RGB + * @returns {any} + */ + hexCodeToRGB(colorCode: string): any; + + /** Hides the ColorPicker popup, if in opened state. + * @returns {void} + */ + hide(): void; + + /** Convert color value from HSV to RGB + * @param {any} Specified HSV code converted to RGB + * @returns {any} + */ + HSVToRGB(HSV: any): any; + + /** Convert color value from RGB to HEX + * @param {any} Specified RGB code converted to HEX code + * @returns {string} + */ + RGBToHEX(RGB: any): string; + + /** Convert color value from RGB to HSV + * @param {any} Specified RGB code converted to HSV code + * @returns {any} + */ + RGBToHSV(RGB: any): any; + + /** Open the ColorPicker popup. + * @returns {void} + */ + show(): void; + } + export namespace ColorPicker { + + export interface Model { + + /** The ColorPicker control allows to define the customized text to displayed in button elements. Using the property to achieve the customized culture values. + * @Default {{ apply: Apply, cancel: Cancel, swatches: Swatches }} + */ + buttonText?: ButtonText; + + /** Allows to change the mode of the button. Please refer below to know available button mode + * @Default {ej.ButtonMode.Split} + */ + buttonMode?: ej.ButtonMode|string; + + /** Specifies the number of columns to be displayed color palette model. + * @Default {10} + */ + columns?: number|string; + + /** This property allows you to customize its appearance using user-defined CSS and custom skin options such as colors and backgrounds. + */ + cssClass?: string; + + /** This property allows to define the custom colors in the palette model.Custom palettes are created by passing a comma delimited string of HEX values or an array of colors. + * @Default {empty} + */ + custom?: any[]; + + /** This property allows to embed the popup in the order of DOM element flow . When we set the value as true, the color picker popup is always in visible state. + * @Default {false} + */ + displayInline?: boolean; + + /** This property allows to change the control in enabled or disabled state. + * @Default {true} + */ + enabled?: boolean; + + /** This property allows to enable or disable the opacity slider in the color picker control + * @Default {true} + */ + enableOpacity?: boolean; + + /** It allows to define the characteristics of the ColorPicker control. It will helps to extend the capability of an HTML element. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Defines the localized text values in button and tooltip. + * @Default {en-US} + */ + locale?: string; + + /** Specifies the model type to be rendered initially in the color picker control. See below to get available ModelType + * @Default {ej.ColorPicker.ModelType.Default} + */ + modelType?: ej.ColorPicker.ModelType|string; + + /** This property allows to change the opacity value .The selected color opacity will be adjusted by using this opacity value. + * @Default {100} + */ + opacityValue?: number|string; + + /** Specifies the palette type to be displayed at initial time in palette model.There two types of palette model available in ColorPicker control. See below available Palette + * @Default {ej.ColorPicker.Palette.BasicPalette} + */ + palette?: ej.ColorPicker.Palette|string; + + /** This property allows to define the preset model to be rendered initially in palette type.It consists of 12 different types of presets. Each presets have 50 colors. See below + * available Presets + * @Default {ej.ColorPicker.Presets.Basic} + */ + presetType?: ej.ColorPicker.Presets|string; + + /** Allows to show/hides the apply and cancel buttons in ColorPicker control + * @Default {true} + */ + showApplyCancel?: boolean; + + /** Allows to show/hides the clear button in ColorPicker control + * @Default {true} + */ + showClearButton?: boolean; + + /** This property allows to provides live preview support for current cursor selection color and selected color. + * @Default {true} + */ + showPreview?: boolean; + + /** This property allows to store the color values in custom list.The ColorPicker will keep up to 11 colors in a custom list.By clicking the add button, the selected color from picker + * or palette will get added in the recent color list. + * @Default {false} + */ + showRecentColors?: boolean; + + /** Allows to show/hides the switcher button in ColorPicker control.It helps to switch palette or picker mode in colorpicker. + * @Default {true} + */ + showSwitcher?: boolean; + + /** This property allows to shows tooltip to notify the slider value in color picker control. + * @Default {false} + */ + showTooltip?: boolean; + + /** Specifies the toolIcon to be displayed in dropdown control color area. + * @Default {null} + */ + toolIcon?: string; + + /** This property allows to define the customized text or content to displayed when mouse over the following elements. This property also allows to use the culture values. + * @Default {{ switcher: Switcher, addbutton: Add Color, basic: Basic, monochrome: Mono Chrome, flatcolors: Flat Color, seawolf: Sea Wolf, webcolors: Web Colors, sandy: Sandy, + * pinkshades: Pink Shades, misty: Misty, citrus: Citrus, vintage: Vintage, moonlight: Moon Light, candycrush: Candy Crush, currentcolor: Current Color, selectedcolor: Selected + * Color }} + */ + tooltipText?: TooltipText; + + /** Specifies the color value for color picker control, the value is in hexadecimal form with prefix of "#". + * @Default {null} + */ + value?: string; + + /** Fires after Color value has been changed successfully.If the user want to perform any operation after the color value changed then the user can make use of this change event. + */ + change?(e: ChangeEventArgs): void; + + /** Fires after closing the color picker popup. + */ + close?(e: CloseEventArgs): void; + + /** Fires after Color picker control is created. If the user want to perform any operation after the color picker control creation then the user can make use of this create event. + */ + create?(e: CreateEventArgs): void; + + /** Fires after Color picker control is destroyed. If the user want to perform any operation after the color picker control destroyed then the user can make use of this destroy event. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires after opening the color picker popup + */ + open?(e: OpenEventArgs): void; + + /** Fires after Color value has been selected successfully. If the user want to perform any operation after the color value selected then the user can make use of this select event. + */ + select?(e: SelectEventArgs): void; + } + + export interface ChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the color picker model + */ + model?: ej.ColorPicker.Model; + + /** returns the name of the event + */ + type?: string; + + /** return the changed color value + */ + value?: string; + } + + export interface CloseEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the color picker model + */ + model?: ej.ColorPicker.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface CreateEventArgs { - export interface ContextOpenEventArgs { + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** returns the color picker model + */ + model?: any; - /** Returns the Kanban model. - */ - model?: any; + /** returns the name of the event + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; + export interface DestroyEventArgs { - /** Returns the current item. - */ - currentTarget?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Returns the status of contextmenu item which denotes its enabled state. - */ - status?: boolean; + /** returns the color picker model + */ + model?: ej.ColorPicker.Model; - /** Returns the target item. - */ - target?: any; - } + /** returns the name of the event + */ + type?: string; + } - export interface ContextClickEventArgs { + export interface OpenEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Returns the Kanban model. - */ - model?: any; + /** returns the color picker model + */ + model?: ej.ColorPicker.Model; - /** Returns the name of the event. - */ - type?: string; + /** returns the name of the event + */ + type?: string; + } - /** Returns the current item. - */ - currentTarget?: any; + export interface SelectEventArgs { - /** Returns the status of contextmenu item which denotes its enabled state. - */ - status?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Returns the target item. - */ - target?: any; - } + /** returns the color picker model + */ + model?: ej.ColorPicker.Model; - export interface DataBoundEventArgs { + /** returns the name of the event + */ + type?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** return the selected color value + */ + value?: string; + } - /** Returns the Kanban model. - */ - model?: any; + export interface ButtonText { - /** Returns the name of the event. - */ - type?: string; - } + /** Sets the text for the apply button. + */ + apply?: string; - export interface DestroyEventArgs { + /** Sets the text for the cancel button. + */ + cancel?: string; - /** Returns the kanban model. - */ - model?: any; + /** Sets the header text for the swatches area. + */ + swatches?: string; + } - /** Returns deleted data. - */ - data?: any; + export interface TooltipText { - /** Returns the name of the event. - */ - type?: string; - } + /** Sets the tooltip text for the switcher button. + */ + switcher?: string; - export interface EndDeleteEventArgs { + /** Sets the tooltip text for the add button. + */ + addbutton?: string; - /** Returns the Kanban model. - */ - model?: any; + /** Sets the tooltip text for the basic preset. + */ + basic?: string; - /** Returns request type. - */ - requestType?: string; + /** Sets the tooltip text for the mono chrome preset. + */ + monochrome?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Sets the tooltip text for the flat colors preset. + */ + flatcolors?: string; - /** Returns deleted data. - */ - data?: any; + /** Sets the tooltip text for the sea wolf preset. + */ + seawolf?: string; - /** Returns the name of the event. - */ - type?: string; + /** Sets the tooltip text for the web colors preset. + */ + webcolors?: string; - /** Current action name - */ - action?: string; - } + /** Sets the tooltip text for the sandy preset. + */ + sandy?: string; - export interface EndEditEventArgs { + /** Sets the tooltip text for the pink shades preset. + */ + pinkshades?: string; - /** Returns the Kanban model. - */ - model?: any; + /** Sets the tooltip text for the misty preset. + */ + misty?: string; - /** Returns request type. - */ - requestType?: string; + /** Sets the tooltip text for the citrus preset. + */ + citrus?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Sets the tooltip text for the vintage preset. + */ + vintage?: string; - /** Returns modified data. - */ - data?: any; + /** Sets the tooltip text for the moon light preset. + */ + moonlight?: string; - /** Returns the name of the event. - */ - type?: string; + /** Sets the tooltip text for the candy crush preset. + */ + candycrush?: string; - /** Current Action name - */ - action?: string; - } + /** Sets the tooltip text for the current color area. + */ + currentcolor?: string; - export interface HeaderClickEventArgs { + /** Sets the tooltip text for the selected color area. + */ + selectedcolor?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + enum ModelType { - /** Returns the kanban model. - */ - model?: any; + ///support palette type mode in color picker. + Palette, - /** Returns the name of the event. - */ - type?: string; + ///support palette type mode in color picker. + Picker + } - /** Returns the select cell index value. - */ - cellIndex?: number; - /** Returns the column object. - */ - columnData?: any; - } + enum Palette { - export interface LoadEventArgs { + ///used to show the basic palette + BasicPalette, - /** Returns the kanban model. - */ - model?: any; + ///used to show the custompalette + CustomPalette + } - /** Returns the cancel option value. - */ - cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + enum Presets { - export interface SwimlaneClickEventArgs { + ///used to show the basic presets + Basic, - /** Current Action name while swim lane clicked. Actions are "expand" or "collapse" - */ - action?: string; + ///used to show the CandyCrush colors presets + CandyCrush, - /** Returns the kanban model. - */ - model?: any; + ///used to show the Citrus colors presets + Citrus, - /** Returns the cancel option value. - */ - cancel?: boolean; + ///used to show the FlatColors presets + FlatColors, - /** Returns the name of the event. - */ - type?: string; + ///used to show the Misty presets + Misty, - /** Returns the swim lane group data's. - */ - data?: any; + ///used to show the MoonLight presets + MoonLight, + + ///used to show the PinkShades presets + PinkShades, - /** Returns current swim lane row index. - */ - rowIndex?: number; + ///used to show the Sandy presets + Sandy, - /** Returns current target element. - */ - target?: any; - } + ///used to show the Seawolf presets + SeaWolf, + + ///used to show the Vintage presets + Vintage, + + ///used to show the WebColors presets + WebColors + } + + } + enum ButtonMode { + //Displays the button in split mode + Split, + //Displays the button in Dropdown mode + Dropdown, + } + + class FileExplorer extends ej.Widget { + static fn: FileExplorer; + constructor(element: JQuery | Element, options?: FileExplorer.Model); + static Locale: any; + model: FileExplorer.Model; + defaults: FileExplorer.Model; + + /** Refresh the size of FileExplorer control. + * @returns {void} + */ + adjustSize(): void; + + /** Disable the particular context menu item. + * @param {string|HTMLElement} Id of the menu item/ Menu element to be disabled + * @returns {void} + */ + disableMenuItem(item: string|HTMLElement): void; + + /** Disable the particular toolbar item. + * @param {string|HTMLElement} Id of the toolbar item/ Tool item element to be disabled + * @returns {void} + */ + disableToolbarItem(item: string|HTMLElement): void; + + /** Enable the particular context menu item. + * @param {string|HTMLElement} Id of the menu item/ Menu element to be Enabled + * @returns {void} + */ + enableMenuItem(item: string|HTMLElement): void; + + /** Enable the particular toolbar item + * @param {string|HTMLElement} Id of the tool item/ Tool item element to be Enabled + * @returns {void} + */ + enableToolbarItem(item: string|HTMLElement): void; + + /** Refresh the content of the selected folder in FileExplorer control. + * @returns {void} + */ + refresh(): void; + + /** Remove the particular toolbar item. + * @param {string|HTMLElement} Id of the tool item/ tool item element to be removed + * @returns {void} + */ + removeToolbarItem(item: string|HTMLElement): void; + } + export namespace FileExplorer { + + export interface Model { + + /** Sets the URL of server side AJAX handling method that handles file operation like Read, Remove, Rename, Create, Upload, Download, Copy and Move in FileExplorer. + */ + ajaxAction?: string; + + /** Specifies the data type of server side AJAX handling method. + * @Default {json} + */ + ajaxDataType?: string; + + /** By using ajaxSettings property, you can customize the AJAX configurations. Normally you can customize the following option in AJAX handling data, URL, type, async, contentType, + * dataType and success. For upload, download and getImage API, you can only customize URL. + * @Default {{ read: {}, createFolder: {}, remove: {}, rename: {}, paste: {}, getDetails: {}, download: {}, upload: {}, getImage: {}, search: {}}} + */ + ajaxSettings?: any; + + /** The FileExplorer allows to move the files from one folder to another folder of FileExplorer by using drag and drop option. Also it supports to upload a file by dragging it from + * windows explorer to the necessary folder of ejFileExplorer. + * @Default {true} + */ + allowDragAndDrop?: boolean; + + /** Gets or sets a value that indicates whether to enable keyboard support for FileExplorer actions. + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** The FileExplorer allows to select multiple files by enabling the allowMultiSelection property. You can perform multi selection by pressing the Ctrl key or Shift key. + * @Default {true} + */ + allowMultiSelection?: boolean; + + /** By using the contextMenuSettings property, you can customize the ContextMenu in the FileExplorer control. + */ + contextMenuSettings?: ContextMenuSettings; + + /** Sets the root class for FileExplorer theme. This cssClass API allows to use custom skinning option for File Explorer control. By defining the root class by using this API, you + * have to include this root class in CSS. + */ + cssClass?: string; + + /** Specify the enablePersistence to FileExplorer to save the current model value in browser cookies for state maintains. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Enables or disables the resize support in FileExplorer control. + * @Default {false} + */ + enableResize?: boolean; + + /** Enables or disables the Right to Left alignment support in FileExplorer control. + * @Default {false} + */ + enableRTL?: boolean; + + /** Enables or disables the thumbnail image compression option in FileExplorer control. By enabling this option, you can reduce the thumbnail image size while loading. + * @Default {false} + */ + enableThumbnailCompress?: boolean; + + /** Allows specified type of files only to display in FileExplorer control. + * @Default {.} + */ + fileTypes?: string; + + /** By using filterSettings property, you can customize the search functionality of the search bar in FileExplorer control. + */ + filterSettings?: FilterSettings; + + /** By using the gridSettings property, you can customize the grid behavior in the FileExplorer control. + */ + gridSettings?: GridSettings; + + /** Specifies the height of FileExplorer control. + * @Default {400} + */ + height?: string|number; + + /** Enables or disables the responsive support for FileExplorer control during the window resizing time. + * @Default {false} + */ + isResponsive?: boolean; + + /** Sets the file view type. There are three view types available such as Grid, Tile and Large icons. See layoutType. + * @Default {ej.FileExplorer.layoutType.Grid} + */ + layout?: ej.FileExplorer.layoutType|string; + + /** Sets the culture in FileExplorer. + * @Default {en-US} + */ + locale?: string; + + /** Sets the maximum height of FileExplorer control. + * @Default {null} + */ + maxHeight?: string|number; + + /** Sets the maximum width of FileExplorer control. + * @Default {null} + */ + maxWidth?: string|number; + + /** Sets the minimum height of FileExplorer control. + * @Default {250px} + */ + minHeight?: string|number; + + /** Sets the minimum width of FileExplorer control. + * @Default {400px} + */ + minWidth?: string|number; + + /** The property path denotes the filesystem path that are to be explored. The path for the filesystem can be physical path or relative path, but it has to be relevant to where the + * Web API is hosted. + */ + path?: string; + + /** The selectedFolder is used to select the specified folder of FileExplorer control. + */ + selectedFolder?: string; + + /** The selectedItems is used to select the specified items (file, folder) of FileExplorer control. + */ + selectedItems?: string|any[]; + + /** Enables or disables the checkbox option in FileExplorer control. + * @Default {true} + */ + showCheckbox?: boolean; + + /** Enables or disables the context menu option in FileExplorer control. + * @Default {true} + */ + showContextMenu?: boolean; + + /** Enables or disables the footer in FileExplorer control. The footer element displays the details of the current selected files and folders. And also the footer having the switcher + * to change the layout view. + * @Default {true} + */ + showFooter?: boolean; + + /** FileExplorer control is displayed with rounded corner when this property is set to true. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** FileExplorer control is rendered with thumbnail preview of images in Tile and LargeIcons layout when this property set to true. + * @Default {true} + */ + showThumbnail?: boolean; + + /** Shows or disables the toolbar in FileExplorer control. + * @Default {true} + */ + showToolbar?: boolean; + + /** Enables or disables the navigation pane in FileExplorer control. The navigation pane contains a tree view element that displays all the folders from the filesystem in a + * hierarchical manner. This is useful to a quick navigation of any folder in the filesystem. + * @Default {true} + */ + showNavigationPane?: boolean; + + /** The tools property is used to configure and group required toolbar items in FileExplorer control. + * @Default {{ creation: [NewFolder], navigation: [Back, Forward, Upward], addressBar: [Addressbar], editing: [Refresh, Upload, Delete, Rename, Download], copyPaste: [Cut, Copy, + * Paste], getProperties: [Details], searchBar: [Searchbar], layout: [Layout], sortBy: [SortBy]}} + */ + tools?: any; + + /** The toolsList property is used to arrange the toolbar items in the FileExplorer control. + * @Default {[layout, creation, navigation, addressBar, editing, copyPaste, sortBy, getProperties, searchBar]} + */ + toolsList?: any[]; + + /** Gets or sets an object that indicates whether to customize the upload behavior in the FileExplorer. + */ + uploadSettings?: UploadSettings; + + /** Specifies the width of FileExplorer control. + * @Default {850} + */ + width?: string|number; + + /** Fires before the AJAX request is performed. + */ + beforeAjaxRequest?(e: BeforeAjaxRequestEventArgs): void; + + /** Fires before downloading the files. + */ + beforeDownload?(e: BeforeDownloadEventArgs): void; + + /** Fires before getting a requested image from server. Also this event will be triggered when you have enabled thumbnail image compression option in FileExplorer.Using this event, + * you can customize the image compression size. + */ + beforeGetImage?(e: BeforeGetImageEventArgs): void; + + /** Fires before files or folders open. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + + /** Fires before uploading the files. + */ + beforeUpload?(e: BeforeUploadEventArgs): void; + + /** Fires when FileExplorer control was created + */ + create?(e: CreateEventArgs): void; + + /** Fires when file or folder is copied successfully. + */ + copy?(e: CopyEventArgs): void; + + /** Fires when new folder is created successfully in file system. + */ + createFolder?(e: CreateFolderEventArgs): void; + + /** Fires when file or folder is cut successfully. + */ + cut?(e: CutEventArgs): void; + + /** Fires when the FileExplorer is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when the files or directory has been started to drag over on the FileExplorer + */ + dragStart?(e: DragStartEventArgs): void; + + /** Fires when the files or directory is dragging over on the FileExplorer. + */ + drag?(e: DragEventArgs): void; + + /** Fires when the files or directory has been stopped to drag over on FileExplorer + */ + dragStop?(e: DragStopEventArgs): void; + + /** Fires when the files or directory is dropped to the target folder of FileExplorer + */ + drop?(e: DropEventArgs): void; + + /** Fires after loading the requested image from server. Using this event, you can get the details of loaded image. + */ + getImage?(e: GetImageEventArgs): void; + + /** Fires when keydown in FileExplorer control. + */ + keydown?(e: KeydownEventArgs): void; + + /** Fires when the file view type is changed. + */ + layoutChange?(e: LayoutChangeEventArgs): void; + + /** Fires when before the ContextMenu opening. + */ + menuBeforeOpen?(e: MenuBeforeOpenEventArgs): void; + + /** Fires when click the ContextMenu item. + */ + menuClick?(e: MenuClickEventArgs): void; + + /** Fires when ContextMenu is successfully opened. + */ + menuOpen?(e: MenuOpenEventArgs): void; + + /** Fires when files are successfully opened. + */ + open?(e: OpenEventArgs): void; - export interface QueryCellInfoEventArgs { + /** Fires when a file or folder is pasted successfully. + */ + paste?(e: PasteEventArgs): void; - /** Returns Kanban card. - */ - card?: any; + /** Fires when file or folder is deleted successfully. + */ + remove?(e: RemoveEventArgs): void; - /** Returns Kanban card. - */ - cell?: any; + /** Fires when resizing is performed for FileExplorer. + */ + resize?(e: ResizeEventArgs): void; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Fires when resizing is started for FileExplorer. + */ + resizeStart?(e: ResizeStartEventArgs): void; - /** Returns current row record object (JSON). - */ - data?: any; + /** Fires this event when the resizing is stopped for FileExplorer. + */ + resizeStop?(e: ResizeStopEventArgs): void; - /** Returns the column object. - */ - column?: any; + /** Fires when the items from grid view or tile view of FileExplorer control is selected. + */ + select?(e: SelectEventArgs): void; - /** Returns the Kanban model. - */ - model?: any; + /** Triggered when refresh the template column elements in the grid view of FileExplorer control. + */ + templateRefresh?(e: TemplateRefreshEventArgs): void; + + /** Fires when the items from grid view or tile view or large icons view of FileExplorer control is unselected. + */ + unselect?(e: UnselectEventArgs): void; + } + + export interface BeforeAjaxRequestEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the AJAX request data + */ + data?: any; + + /** returns the FileExplorer model + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface BeforeDownloadEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the downloaded file names. + */ + files?: string[]; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the path of currently opened item. + */ + path?: string; + + /** returns the selected item details. + */ + selectedItems?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface BeforeGetImageEventArgs { + + /** set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** enable or disable the image compress option. + */ + canCompress?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the expected image size. + */ + size?: any; + + /** returns the selected item details. + */ + selectedItems?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface BeforeOpenEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the opened item type. + */ + itemType?: string; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the path of currently opened item. + */ + path?: string; + + /** returns the selected item details. + */ + selectedItems?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface BeforeUploadEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the path of currently opened item. + */ + path?: string; + + /** returns the selected item details. + */ + selectedItems?: any; + + /** returns the upload item details. + */ + uploadItemDetails?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface CreateEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface CopyEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of copied file/folder. + */ + name?: string[]; + + /** returns the selected item details. + */ + selectedItems?: any; + + /** returns the source path. + */ + sourcePath?: string; + + /** returns the name of the event. + */ + type?: string; + } + + export interface CreateFolderEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the AJAX response data + */ + data?: any; + + /** returns the FileExplorer model + */ + model?: ej.FileExplorer.Model; + + /** returns the selected item details + */ + selectedItems?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface CutEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of moved file or folder. + */ + name?: string[]; + + /** returns the selected item details. + */ + selectedItems?: any; + + /** returns the source path. + */ + sourcePath?: string; + + /** returns the name of the event. + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface DragStartEventArgs { + + /** set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the dragging element. + */ + target?: any; + + /** returns the path of dragging element. + */ + targetPath?: string; + + /** returns the dragging file details. + */ + selectedItems?: any; + } + + export interface DragEventArgs { + + /** set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the target element. + */ + target?: any; + + /** returns the name of target element. + */ + targetElementName?: string; + + /** returns the path of target element. + */ + targetPath?: string; + } + + export interface DragStopEventArgs { + + /** set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the target element. + */ + target?: any; + + /** returns the path of target element. + */ + targetPath?: string; + + /** returns the name of target element + */ + targetElementName?: string; + + /** returns the action, which is performed after dropping the files (upload/ move). + */ + dropAction?: string; + + /** returns the dragging file details + */ + fileInfo?: any; + } + + export interface DropEventArgs { + + /** set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the target element. + */ + target?: any; + + /** returns the name of target folder. + */ + targetFolder?: string; + + /** returns the path of target folder. + */ + targetPath?: string; + + /** returns the dragging element details. + */ + fileInfo?: any; + + /** returns the action, which is performed after dropping the files (upload/ move). + */ + dropAction?: string; + } + + export interface GetImageEventArgs { + + /** set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** loaded image path. + */ + path?: string; + + /** loaded image element + */ + element?: any; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** original arguments of image load or error event + */ + originalArgs?: any; + + /** returns the action type, which specifies thumbnail preview or opening image. + */ + action?: string; + + /** returns the name of the event. + */ + type?: string; + } + + export interface KeydownEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the downed key keyCode value + */ + keyCode?: number; + + /** returns altKey value. + */ + altKey?: boolean; + + /** returns shiftKey value. + */ + shiftKey?: boolean; + + /** returns ctrlKey value. + */ + ctrlKey?: boolean; + + /** returns the event object. + */ + originalArgs?: any; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface LayoutChangeEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** return true when we change the layout via interaction, else false. + */ + isInteraction?: boolean; + + /** returns the current view type. + */ + layoutType?: string; + + /** returns the FileExplorer model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface MenuBeforeOpenEventArgs { + + /** set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the name of ContextMenu items group. + */ + contextMenu?: string; + + /** returns the dataSource of ContextMenu. + */ + dataSource?: any[]; + + /** returns the element of ContextMenu. + */ + element?: any; + + /** returns the event of ContextMenu. + */ + events?: any; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the target element. + */ + target?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface MenuClickEventArgs { + + /** returns the ID of clicked ContextMenu item. + */ + ID?: string; + + /** set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the name of ContextMenu items group. + */ + contextMenu?: string; + + /** returns the element of clicked ContextMenu item. + */ + element?: any; + + /** returns the event of ContextMenu. + */ + event?: any; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the parent element ID of clicked ContextMenu item. + */ + parentId?: string; + + /** returns the parent element text of clicked ContextMenu item. + */ + parentText?: string; + + /** returns the text of clicked ContextMenu item. + */ + text?: string; + + /** returns the name of the event. + */ + type?: string; + } + + export interface MenuOpenEventArgs { + + /** set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the name of ContextMenu items group. + */ + contextMenu?: string; + + /** returns the element of ContextMenu. + */ + element?: any; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the target element. + */ + target?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface OpenEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the opened item type. + */ + itemType?: string; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the path of currently opened item. + */ + path?: string; + + /** returns the selected item details. + */ + selectedItems?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface PasteEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of moved/copied file or folder. + */ + name?: string[]; + + /** returns the selected item details. + */ + selectedItems?: any; + + /** returns the target folder item details. + */ + targetFolder?: any; + + /** returns the target path. + */ + targetPath?: string; + + /** returns the name of the event. + */ + type?: string; + } + + export interface RemoveEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the AJAX response data. + */ + data?: any; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the names of deleted items. + */ + name?: string; + + /** returns the path of deleted item. + */ + path?: string; + + /** returns the removed item details. + */ + selectedItems?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface ResizeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the mouse move event args. + */ + event?: any; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface ResizeStartEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the mouse down event args. + */ + event?: any; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface ResizeStopEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the mouse leave event args. + */ + event?: any; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface SelectEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** returns the name of selected items. + */ + name?: string[]; + + /** returns the path of selected items. + */ + path?: string; + + /** returns the selected item details + */ + selectedItems?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface TemplateRefreshEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** Returns the cell object. + */ + cell?: ej.FileExplorer.Model; + + /** Returns the column object. + */ + column?: any; + + /** Returns the current row data. + */ + data?: any; + + /** Returns the grid model of FileExplorer. + */ + model?: any; + + /** Returns the current row index. + */ + rowIndex?: number; + + /** returns the name of the event. + */ + type?: string; + } + + export interface UnselectEventArgs { + + /** Returns the FileExplorer model. + */ + model?: ej.FileExplorer.Model; + + /** Returns the name of unselected item. + */ + name?: string; + + /** Returns the name of unselected items. + */ + names?: string[]; + + /** Returns the type of unselected item. + */ + nodeType?: string; + + /** Returns the path of unselected item. + */ + path?: string; /** Returns the name of the event. */ - type?: string; - } + type?: string; + + /** Returns the unselected item details. + */ + unselectedItem?: any; + + /** Returns the unselected items details. + */ + unselectedItems?: any[]; + } + + export interface ContextMenuSettings { + + /** The items property is used to configure and group the required ContextMenu items in FileExplorer control. + * @Default {{% highlight javascript %}{navbar: [NewFolder, Upload, |, Delete, Rename, |, Cut, Copy, Paste, |, Getinfo],cwd: [Refresh, Paste,|, SortBy, |, NewFolder, Upload, |, + * Getinfo],files: [Open, Download, |, Upload, |, Delete, Rename, |, Cut, Copy, Paste, |, OpenFolderLocation, Getinfo]}{% endhighlight %}} + */ + items?: any; + + /** The customMenuFields property is used to define custom functionality for custom ContextMenu item's which are defined in items property. + * @Default {[]} + */ + customMenuFields?: any[]; + } + + export interface FilterSettings { + + /** It allows to search the text given in search Textbox in every keyup event. When this property was set as false, searching will works only on Enter key and searchbar blur. + * @Default {true} + */ + allowSearchOnTyping?: boolean; + + /** Enables or disables to perform the filter operation with case sensitive. + * @Default {false} + */ + caseSensitiveSearch?: boolean; + + /** Sets the search filter type. There are several filter types available such as "startswith", "contains", "endswith". See filterType. + * @Default {ej.FileExplorer.filterType.Contains} + */ + filterType?: ej.FilterType|string; + } + + export interface GridSettings { + + /** Allows to Resize the width of the columns by simply click and move the particular column header line. + * @Default {true} + */ + allowResizing?: boolean; + + /** Gets or sets a value that indicates whether to enable the dynamic sorting behavior on grid data. Sorting can be done through clicking on particular column header. + * @Default {true} + */ + allowSorting?: boolean; + + /** Gets or sets an object that indicates to render the grid with specified columns. You can use this property same as the column property in Grid control. + * @Default {[{ field: name, headerText: Name, width: 30% }, { field: dateModified, headerText: Date Modified, width: 30% }, { field: type, headerText: Type, width: 15% }, { field: + * size, headerText: Size, width: 12%, textAlign: right, headerTextAlign: left }]} + */ + columns?: any[]; + } + + export interface UploadSettings { + + /** Specifies the maximum file size allowed to upload. It accepts the value in bytes. + * @Default {31457280} + */ + maxFileSize?: number; + + /** Enables or disables the multiple files upload. When it is enabled, you can upload multiple files at a time and when disabled, you can upload only one file at a time. + * @Default {true} + */ + allowMultipleFile?: boolean; + + /** Enables or disables the auto upload option while uploading files in FileExplorer control. + * @Default {false} + */ + autoUpload?: boolean; + } + + enum layoutType { + + ///Supports to display files in tile view + Tile, + + ///Supports to display files in grid view + Grid, + + ///Supports to display files as large icons + LargeIcons + } + + } + + class DatePicker extends ej.Widget { + static fn: DatePicker; + constructor(element: JQuery | Element, options?: DatePicker.Model); + static Locale: any; + model: DatePicker.Model; + defaults: DatePicker.Model; + + /** Disables the DatePicker control. + * @returns {void} + */ + disable(): void; + + /** Enable the DatePicker control, if it is in disabled state. + * @returns {void} + */ + enable(): void; + + /** Returns the current date value in the DatePicker control. + * @returns {string} + */ + getValue(): string; + + /** Close the DatePicker popup, if it is in opened state. + * @returns {void} + */ + hide(): void; + + /** Opens the DatePicker popup. + * @returns {void} + */ + show(): void; + } + export namespace DatePicker { + + export interface Model { + + /** Used to allow or restrict the editing in DatePicker input field directly. By setting false to this API, You can only pick the date from DatePicker popup. + * @Default {true} + */ + allowEdit?: boolean; + + /** allow or restrict the drill down to multiple levels of view (month/year/decade) in DatePicker calendar + * @Default {true} + */ + allowDrillDown?: boolean; + + /** Disable the list of specified date value. + * @Default {{}} + */ + blackoutDates?: any; + + /** Sets the specified text value to the today button in the DatePicker calendar. + * @Default {Today} + */ + buttonText?: string; + + /** Sets the root CSS class for DatePicker theme, which is used customize. + */ + cssClass?: string; + + /** Formats the value of the DatePicker in to the specified date format. If this API is not specified, dateFormat will be set based on the current culture of DatePicker. + * @Default {MM/dd/yyyy} + */ + dateFormat?: string; + + /** Specifies the header format of days in DatePicker calendar. See below to get available Headers options + * @Default {ej.DatePicker.Header.Short} + */ + dayHeaderFormat?: string|ej.DatePicker.Header; + + /** Specifies the navigation depth level in DatePicker calendar. This option is not applied when start level view option is lower than depth level view. See below to know available + * levels in DatePicker Calendar + */ + depthLevel?: string|ej.DatePicker.Level; + + /** Allows to embed the DatePicker calendar in the page. Also associates DatePicker with div element instead of input. + * @Default {false} + */ + displayInline?: boolean; + + /** Enables or disables the animation effect with DatePicker calendar. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Enable or disable the DatePicker control. + * @Default {true} + */ + enabled?: boolean; + + /** Sustain the entire widget model of DatePicker even after form post or browser refresh + * @Default {false} + */ + enablePersistence?: boolean; + + /** Displays DatePicker calendar along with DatePicker input field in Right to Left direction. + * @Default {false} + */ + enableRTL?: boolean; + + /** Allows to enter valid or invalid date in input textbox and indicate as error if it is invalid value, when this API value is set to true. For false value, invalid date is not + * allowed to input field and corrected to valid date automatically, even if invalid date is given. + * @Default {false} + */ + enableStrictMode?: boolean; + + /** Used the required fields for special Dates in DatePicker in order to customize the special dates in a calendar. + * @Default {null} + */ + fields?: Fields; + + /** Specifies the header format to be displayed in the DatePicker calendar. + * @Default {MMMM yyyy} + */ + headerFormat?: string; + + /** Specifies the height of the DatePicker input text. + * @Default {28px} + */ + height?: string; + + /** HighlightSection is used to highlight currently selected date's month/week/workdays. See below to get available HighlightSection options + * @Default {none} + */ + highlightSection?: string|ej.DatePicker.HighlightSection; + + /** Weekend dates will be highlighted when this property is set to true. + * @Default {false} + */ + highlightWeekend?: boolean; + + /** Specifies the HTML Attributes of the DatePicker. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Change the DatePicker calendar and date format based on given culture. + * @Default {en-US} + */ + locale?: string; + + /** Specifies the maximum date in the calendar that the user can select. + * @Default {new Date(2099, 11, 31)} + */ + maxDate?: string|Date; + + /** Specifies the minimum date in the calendar that the user can select. + * @Default {new Date(1900, 00, 01)} + */ + minDate?: string|Date; + + /** Allows to toggles the read only state of the DatePicker. When the widget is readOnly, it doesn't allow your input. + * @Default {false} + */ + readOnly?: boolean; + + /** It allow to show/hide the disabled date ranges + * @Default {true} + */ + showDisabledRange?: boolean; + + /** It allows to display footer in DatePicker calendar. + * @Default {true} + */ + showFooter?: boolean; + + /** It allows to display/hides the other months days from the current month calendar in a DatePicker. + * @Default {true} + */ + showOtherMonths?: boolean; + + /** Shows/hides the date icon button at right side of textbox, which is used to open or close the DatePicker calendar popup. + * @Default {true} + */ + showPopupButton?: boolean; + + /** DatePicker input is displayed with rounded corner when this property is set to true. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Used to show the tooltip when hovering on the days in the DatePicker calendar. + * @Default {true} + */ + showTooltip?: boolean; + + /** Specifies the special dates in DatePicker. + * @Default {null} + */ + specialDates?: any; + + /** Specifies the start day of the week in DatePicker calendar. + * @Default {0} + */ + startDay?: number; + + /** Specifies the start level view in DatePicker calendar. See below available Levels + * @Default {ej.DatePicker.Level.Month} + */ + startLevel?: string|ej.DatePicker.Level; + + /** Specifies the number of months to be navigate for one click of next and previous button in a DatePicker Calendar. + * @Default {1} + */ + stepMonths?: number; + + /** Provides option to customize the tooltip format. + * @Default {ddd MMM dd yyyy} + */ + tooltipFormat?: string; + + /** Sets the jQuery validation support to DatePicker Date value. See validation + * @Default {null} + */ + validationMessage?: any; + + /** Sets the jQuery validation custom rules to the DatePicker. see validation + * @Default {null} + */ + validationRules?: any; + + /** sets or returns the current value of DatePicker + * @Default {null} + */ + value?: string|Date; + + /** Specifies the water mark text to be displayed in input text. + * @Default {Select date} + */ + watermarkText?: string; + + /** Specifies the width of the DatePicker input text. + * @Default {160px} + */ + width?: string; + + /** Fires before closing the DatePicker popup. + */ + beforeClose?(e: BeforeCloseEventArgs): void; + + /** Fires when each date is created in the DatePicker popup calendar. + */ + beforeDateCreate?(e: BeforeDateCreateEventArgs): void; + + /** Fires before opening the DatePicker popup. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + + /** Fires when the DatePicker input value is changed. + */ + change?(e: ChangeEventArgs): void; + + /** Fires when DatePicker popup is closed. + */ + close?(e: CloseEventArgs): void; + + /** Fires when the DatePicker is created successfully. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the DatePicker is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when DatePicker input gets focus. + */ + focusIn?(e: FocusInEventArgs): void; + + /** Fires when DatePicker input loses the focus. + */ + focusOut?(e: FocusOutEventArgs): void; + + /** Fires when calender view navigates to month/year/decade/century. + */ + navigate?(e: NavigateEventArgs): void; + + /** Fires when DatePicker popup is opened. + */ + open?(e: OpenEventArgs): void; + + /** Fires when a date is selected from the DatePicker popup. + */ + select?(e: SelectEventArgs): void; + } + + export interface BeforeCloseEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - export interface ToolbarClickEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the current item. - */ - currentTarget?: any; - - /** Returns the item id of that current element. - */ - itemId?: string; - - /** Returns the item index of that current element. - */ - itemIndex?: number; - - /** Returns the item name of that current element. - */ - itemName?: string; - - /** Returns the item text of that current element. - */ - itemText?: string; - - /** Returns the Kanban model. - */ - model?: any; - - /** Returns the name of the event. - */ - type?: string; - - /** Returns the toolbar object of the Kanban. - */ - toolbarData?: any; - } - - export interface SwimlaneSettingsUnassignedGroup { - - /** To enable or disable unassigned category change with swim lane key values. - * @Default {true} - */ - enable?: boolean; - - /** To set the user defined values which are need to categorized as unassigned category swim lane groups. - * @Default {[null,undefined,]} - */ - keys?: any[]; - } - - export interface SwimlaneSettings { - - /** To enable or disable items count in swim lane. - * @Default {true} - */ - showCount?: boolean; - - /** To enable or disable DragAndDrop across swim lane. - * @Default {false} - */ - allowDragAndDrop?: boolean; - - /** Customize the settings for unassigned category of swim lane. - * @Default {Object} - */ - unassignedGroup?: SwimlaneSettingsUnassignedGroup; - } - - export interface ContextMenuSettingsCustomMenuItem { - - /** Its sets target element to custom context menu item. - * @Default {ej.Kanban.Target.All} - */ - target?: ej.Kanban.Target | string; - - /** Gets the display name to custom menu item. - * @Default {null} - */ - text?: string; - - /** Gets the template to render custom context menu item. - * @Default {null} - */ - template?: string; - } - - export interface ContextMenuSettings { - - /** To enable context menu.All default context menu will show. - * @Default {false} - */ - enable?: boolean; - - /** Gets or sets a value that indicates the list of items needs to be disable from default context menu items. - * @Default {Array} - */ - disableDefaultItems?: any[]; - - /** Its used to add specific default context menu items. - * @Default {Array} - */ - menuItems?: any[]; - - /** Gets or sets a value that indicates whether to add custom contextMenu items. - * @Default {Array} - */ - customMenuItems?: ContextMenuSettingsCustomMenuItem[]; - } - - export interface ColumnsTotalCount { - - /** To customize the totalCount text properties. - * @Default {null} - */ - text?: string; - } - - export interface ColumnsConstraints { - - /** It is used to specify the type of constraints as column or swimlane. - * @Default {null} - */ - type?: string; - - /** It is used to specify the minimum amount of card in particular column cell or swimlane cell can hold. - * @Default {null} - */ - min?: number; - - /** It is used to specify the maximum amount of card in particular column cell or swimlane cell can hold. - * @Default {null} - */ - max?: number; - } - - export interface Column { - - /** Gets or sets an object that indicates to render the Kanban with specified columns header text. - * @Default {null} - */ - headerText?: string; - - /** To customize the totalCount properties. - * @Default {Object} - */ - totalCount?: ColumnsTotalCount; - - /** Gets or sets an object that indicates to render the Kanban with specified columns key. - * @Default {null} - */ - key?: string | number; - - /** To enable/disable allowDrop for specific column wise. - * @Default {true} - */ - allowDrop?: boolean; - - /** To enable/disable allowDrag for specific column wise. - * @Default {true} - */ - allowDrag?: boolean; - - /** To set column collapse or expand state - * @Default {false} - */ - isCollapsed?: boolean; - - /** To customize the column level constraints with minimum ,maximum limit validation. - * @Default {Object} - */ - constraints?: ColumnsConstraints; - - /** Gets or sets a value that indicates to add the template within the header element. - * @Default {null} - */ - headerTemplate?: string; - - /** Gets or sets an object that indicates to render the Kanban with specified columns width. - * @Default {null} - */ - width?: string | number; - - /** Gets or sets an object that indicates to set specific column visibility. - * @Default {true} - */ - visible?: boolean; - - /** Gets or sets an object that indicates whether to show add new button. - * @Default {false} - */ - showAddButton?: boolean; - } - - export interface CardSettings { - - /** Gets or sets a value that indicates to add the template for card . - * @Default {null} - */ - template?: string; - - /** To customize the card border color based on assigned task. Colors and corresponding values defined here will be mapped with colorField mapped data source column. - * @Default {Object} - */ - colorMapping?: any; - } - - export interface CustomToolbarItem { - - /** Gets the template to render customToolbarItems. - * @Default {null} - */ - template?: string; - } - - export interface EditSettingsEditItem { - - /** It is used to map editing field from the data source. - * @Default {null} - */ - field?: string; - - /** It is used to set the particular editType in the card for editing. - * @Default {ej.Kanban.EditingType.String} - */ - editType?: ej.Kanban.EditingType | string; - - /** Gets or sets a value that indicates to define constraints for saving data to the database. - * @Default {Object} - */ - validationRules?: any; - - /** It is used to set the particular editparams in the card for editing. - * @Default {Object} - */ - editParams?: any; - - /** It is used to specify defaultValue for the fields while adding new card. - * @Default {null} - */ - defaultValue?: string | number; - } - - export interface EditSettings { - - /** Gets or sets a value that indicates whether to enable the editing action in cards of Kanban. - * @Default {false} - */ - allowEditing?: boolean; - - /** Gets or sets a value that indicates whether to enable the adding action in cards behavior on Kanban. - * @Default {false} - */ - allowAdding?: boolean; - - /** This specifies the id of the template which is require to be edited using the Dialog Box. - * @Default {null} - */ - dialogTemplate?: string; - - /** Get or sets an object that indicates whether to customize the editMode of the Kanban. - * @Default {ej.Kanban.EditMode.Dialog} - */ - editMode?: ej.Kanban.EditMode | string; - - /** Get or sets an object that indicates whether to customize the editing fields of Kanban card. - * @Default {Array} - */ - editItems?: EditSettingsEditItem[]; - - /** This specifies the id of the template which is require to be edited using the External edit form. - * @Default {null} - */ - externalFormTemplate?: string; - - /** This specifies to set the position of an External edit form either in the right or bottom of the Kanban. - * @Default {ej.Kanban.FormPosition.Bottom} - */ - formPosition?: ej.Kanban.FormPosition | string; - } - - export interface Fields { - - /** The primarykey field is mapped to data source field. And this will used for Drag and drop and editing mainly. - * @Default {null} - */ - primaryKey?: string; - - /** To enable swimlane grouping based on the given key field from datasource mapping. - * @Default {null} - */ - swimlaneKey?: string; - - /** Priority field has been mapped data source field to maintain cards priority. - * @Default {null} - */ - priority?: string; - - /** Content field has been Mapped into card text. - * @Default {null} - */ - content?: string; - - /** Tag field has been Mapped into card tag. - * @Default {null} - */ - tag?: string; - - /** Title field has been Mapped to field in datasource for title content. If title field specified , card expand/collapse will be enabled with header and content section. - * @Default {null} - */ - title?: string; - - /** To customize the card has been Mapped into card color field. - * @Default {null} - */ - color?: string; - - /** ImageUrl field has been Mapped into card image. - * @Default {null} - */ - imageUrl?: string; - } - - export interface FilterSetting { - - /** Gets or sets an object of display name to filter queries. - * @Default {null} - */ - text?: string; - - /** Gets or sets an object that Queries to perform filtering - * @Default {Object} - */ - query?: any; - - /** Gets or sets an object of tooltip to filter buttons. - * @Default {null} - */ - description?: string; - } - - export interface ScrollSettings { - - /** Gets or sets an object that indicates to render the Kanban with specified scroll height. - * @Default {0} - */ - height?: string | number; - - /** Gets or sets an object that indicates to render the Kanban with specified scroll width. - * @Default {auto} - */ - width?: string | number; - - /** To allow the Kanban to freeze particular swimlane at the time of scrolling , until scroll reaches next swimlane and it continues. - * @Default {false} - */ - allowFreezeSwimlane?: boolean; - } - - export interface SearchSettings { - - /** To customize the fields the searching operation can be perform. - * @Default {Array} - */ - fields?: any[]; + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - /** To customize the searching string. - */ - key?: string; + /** returns the name of the event. + */ + type?: string; - /** To customize the operator based on searching. - * @Default {contains} - */ - operator?: string; + /** returns the event parameters from DatePicker. + */ + events?: any; - /** To customize the ignore case based on searching. - * @Default {true} - */ - ignoreCase?: boolean; - } + /** returns the DatePicker popup. + */ + element?: HTMLElement; + } - export interface StackedHeaderRowsStackedHeaderColumn { + export interface BeforeDateCreateEventArgs { - /** Gets or sets a value that indicates the headerText for the particular stacked header column. - * @Default {null} - */ - headerText?: string; + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** Gets or sets a value that indicates the column for the particular stacked header column. - * @Default {null} - */ - column?: string; - } + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - export interface StackedHeaderRow { + /** returns the name of the event. + */ + type?: string; - /** Gets or sets a value that indicates whether to add stacked header columns into the stacked header rows. - * @Default {Array} - */ - stackedHeaderColumns?: StackedHeaderRowsStackedHeaderColumn[]; - } + /** returns the currently created date object. + */ + date?: any; - export interface TooltipSettings { + /** returns the current DOM object of the date from the Calendar. + */ + element?: HTMLElement; - /** To enable or disable the tooltip display. - * @Default {false} - */ - enable?: boolean; + /** returns the currently created date as string type. + */ + value?: string; + } - /** To customize the tooltip display based on your requirements. - * @Default {null} - */ - template?: string; - } + export interface BeforeOpenEventArgs { - export interface Workflow { + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** Gets or sets an object that indicates to render the Kanban with specified workflows key. - * @Default {null} - */ - key?: string | number; + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - /** Gets or sets an object that indicates to render the Kanban with specified workflows allowed Transitions. - * @Default {null} - */ - allowedTransitions?: string; - } + /** returns the name of the event. + */ + type?: string; - enum Target { + /** returns the event parameters from DatePicker. + */ + events?: any; - ///Sets context menu to Kanban header - Header, + /** returns the DatePicker popup. + */ + element?: HTMLElement; + } - ///Sets context menu to Kanban content - Content, + export interface ChangeEventArgs { - ///Sets context menu to Kanban card - Card, + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - ///Sets context menu to Kanban - All - } + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; + /** returns the name of the event. + */ + type?: string; - enum EditMode { + /** returns the DatePicker input value. + */ + value?: string; - ///Creates Kanban with editMode as Dialog - Dialog, + /** returns the previously selected value. + */ + prevDate?: string; + } - ///Creates Kanban with editMode as DialogTemplate - DialogTemplate, + export interface CloseEventArgs { - ///Creates Kanban with editMode as ExternalForm - ExternalForm, + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - ///Creates Kanban with editMode as ExternalFormTemplate - ExternalFormTemplate - } + /** returns the current date object. + */ + date?: any; + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - enum EditingType { + /** returns the name of the event. + */ + type?: string; - ///Allows to set edit type as string edit type - String, + /** returns the current date value. + */ + value?: string; - ///Allows to set edit type as numeric edit type - Numeric, + /** returns the previously selected value. + */ + prevDate?: string; + } - ///Allows to set edit type as drop down edit type - Dropdown, + export interface CreateEventArgs { - ///Allows to set edit type as date picker edit type - DatePicker, + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - ///Allows to set edit type as date time picker edit type - DateTimePicker, + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - ///Allows to set edit type as text area edit type - TextArea, + /** returns the name of the event. + */ + type?: string; + } - ///Allows to set edit type as RTE edit type - RTE - } + export interface DestroyEventArgs { + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - enum FormPosition { + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - ///Form position is bottom. - Bottom, + /** returns the name of the event. + */ + type?: string; + } - ///Form position is right. - Right - } + export interface FocusInEventArgs { + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - enum SelectionType { + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - ///Support for Single selection in Kanban - Single, + /** returns the name of the event. + */ + type?: string; - ///Support for multiple selections in Kanban - Multiple - } + /** returns the currently selected date value. + */ + value?: string; + } - } + export interface FocusOutEventArgs { - class Rotator extends ej.Widget { - static fn: Rotator; - constructor(element: JQuery | Element, options?: Rotator.Model); - static Locale: any; - model: Rotator.Model; - defaults: Rotator.Model; + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** Disables the Rotator control. - * @returns {void} - */ - disable(): void; + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - /** Enables the Rotator control. - * @returns {void} - */ - enable(): void; + /** returns the name of the event. + */ + type?: string; - /** This method is used to get the current slide index. - * @returns {number} - */ - getIndex(): number; + /** returns the currently selected date value. + */ + value?: string; - /** This method is used to move a slide to the specified index. - * @param {number} index of an slide - * @returns {void} - */ - gotoIndex(index: number): void; + /** returns the previously selected date value. + */ + prevDate?: string; + } - /** This method is used to pause autoplay. - * @returns {void} - */ - pause(): void; + export interface NavigateEventArgs { - /** This method is used to move slides continuously (or start autoplay) in the specified autoplay direction. - * @returns {void} - */ - play(): void; + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** This method is used to move to the next slide from the current slide. If the current slide is the last slide, then the first slide will be treated as the next slide. - * @returns {void} - */ - slideNext(): void; + /** returns the current date object. + */ + date?: any; - /** This method is used to move to the previous slide from the current slide. If the current slide is the first slide, then the last slide will be treated as the previous slide. - * @returns {void} - */ - slidePrevious(): void; - - /** This method is used to update/modify the slide content of template rotator by using id based on index value. - * @param {number} index of an slide - * @param {string} id of a new updated slide - * @returns {void} - */ - updateTemplateById(index: number, id: string): void; - } - export namespace Rotator { - - export interface Model { - - /** Turns on keyboard interaction with the Rotator items. You must set this property to true to access the following keyboard shortcuts: - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** Sets the animationSpeed of slide transition. - * @Default {600} - */ - animationSpeed?: string | number; - - /** Specifies the animationType type for the Rotator Item. animationType options include slide, fastSlide, slowSlide, and other custom easing animationTypes. - * @Default {slide} - */ - animationType?: string; - - /** Enables the circular mode item rotation. - * @Default {true} - */ - circularMode?: boolean; - - /** Specify the CSS class to Rotator to achieve custom theme. - */ - cssClass?: string; - - /** Specify the list of data which contains a set of data fields. Each data value is used to render an item for the Rotator. - * @Default {null} - */ - dataSource?: any; - - /** Sets the delay between the Rotator Items move after the slide transition. - * @Default {500} - */ - delay?: number; - - /** Specifies the number of Rotator Items to be displayed. - * @Default {1} - */ - displayItemsCount?: string | number; - - /** Rotates the Rotator Items continuously without user interference. - * @Default {false} - */ - enableAutoPlay?: boolean; - - /** Enables or disables the Rotator control. - * @Default {true} - */ - enabled?: boolean; - - /** Specifies right to left transition of slides. - * @Default {false} - */ - enableRTL?: boolean; - - /** Defines mapping fields for the data items of the Rotator. - * @Default {null} - */ - fields?: Fields; - - /** Sets the space between the Rotator Items. - */ - frameSpace?: string | number; - - /** Resizes the Rotator when the browser is resized. - * @Default {false} - */ - isResponsive?: boolean; - - /** Specifies the number of Rotator Items to navigate on a single click (next/previous/play buttons). - * The navigateSteps property value must be less than or equal to the displayItemsCount property value. - * @Default {1} - */ - navigateSteps?: string | number; - - /** Specifies the orientation for the Rotator control, that is, whether it must be rendered horizontally or vertically. See Orientation - * @Default {ej.Orientation.Horizontal} - */ - orientation?: ej.Orientation | string; - - /** Specifies the position of the showPager in the Rotator Item. See PagerPosition - * @Default {outside} - */ - pagerPosition?: string | ej.Rotator.PagerPosition; - - /** Retrieves data from remote data. This property is applicable only when a remote data source is used. - * @Default {null} - */ - query?: string; - - /** If the Rotator Item is an image, you can specify a caption for the Rotator Item. The caption text for each Rotator Item must be set by using the title attribute of the respective tag. - * The caption cannot be displayed if multiple Rotator Items are present. - * @Default {false} - */ - showCaption?: boolean; - - /** Turns on or off the slide buttons (next and previous) in the Rotator Items. Slide buttons are used to navigate the Rotator Items. - * @Default {true} - */ - showNavigateButton?: boolean; - - /** Turns on or off the pager support in the Rotator control. The Pager is used to navigate the Rotator Items. - * @Default {true} - */ - showPager?: boolean; - - /** Enable play / pause button on rotator. - * @Default {false} - */ - showPlayButton?: boolean; - - /** Turns on or off thumbnail support in the Rotator control. Thumbnail is used to navigate between slides. Thumbnail supports only single slide transition - * You must specify the source for thumbnail elements through the thumbnailSourceID property. - * @Default {false} - */ - showThumbnail?: boolean; - - /** Sets the height of a Rotator Item. - */ - slideHeight?: string | number; - - /** Sets the width of a Rotator Item. - */ - slideWidth?: string | number; - - /** Sets the index of the slide that must be displayed first. - * @Default {0} - */ - startIndex?: string | number; - - /** Pause the auto play while hover on the rotator content. - * @Default {false} - */ - stopOnHover?: boolean; - - /** The template to display the Rotator widget with customized appearance. - * @Default {null} - */ - template?: string; - - /** The templateId enables to bind multiple customized template items in Rotator. - * @Default {null} - */ - templateId?: any[]; - - /** Specifies the source for thumbnail elements. - * @Default {null} - */ - thumbnailSourceID?: any; - - /** This event is fired when the Rotator slides are changed. */ - change?(e: ChangeEventArgs): void; - - /** This event is fired when the Rotator control is initialized. */ - create?(e: CreateEventArgs): void; - - /** This event is fired when the Rotator control is destroyed. */ - destroy?(e: DestroyEventArgs): void; - - /** This event is fired when a pager is clicked. */ - pagerClick?(e: PagerClickEventArgs): void; - - /** This event is fired when enableAutoPlay is started. */ - start?(e: StartEventArgs): void; - - /** This event is fired when autoplay is stopped or paused. */ - stop?(e: StopEventArgs): void; - - /** This event is fired when a thumbnail pager is clicked. */ - thumbItemClick?(e: ThumbItemClickEventArgs): void; - } - - export interface ChangeEventArgs { + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the previous view state of calendar. + */ + navigateFrom?: string; - /** returns the rotator model - */ - model?: ej.Rotator.Model; + /** returns the current view state of calendar. + */ + navigateTo?: string; - /** returns the name of the event - */ - type?: string; + /** returns the name of the event + */ + type?: string; - /** the current rotator id. - */ - itemId?: string; + /** returns the current date value. + */ + value?: string; + } - /** returns the current slide index. - */ - activeItemIndex?: number; - } + export interface OpenEventArgs { - export interface CreateEventArgs { + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the current date object. + */ + date?: any; - /** returns the rotator model - */ - model?: ej.Rotator.Model; + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - /** returns the name of the event - */ - type?: string; - } + /** returns the name of the event + */ + type?: string; - export interface DestroyEventArgs { + /** returns the current date value. + */ + value?: string; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the previously selected value. + */ + prevDate?: string; + } - /** returns the rotator model - */ - model?: ej.Rotator.Model; + export interface SelectEventArgs { - /** returns the name of the event - */ - type?: string; - } + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - export interface PagerClickEventArgs { + /** returns the selected date object. + */ + date?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the DatePicker model. + */ + model?: ej.DatePicker.Model; - /** returns the rotator model - */ - model?: ej.Rotator.Model; + /** returns the name of the event. + */ + type?: string; - /** returns the name of the event - */ - type?: string; + /** returns the current date value. + */ + value?: string; - /** the current rotator id. - */ - itemId?: string; + /** returns the previously selected value. + */ + prevDate?: string; - /** returns the current slide index. - */ - activeItemIndex?: number; - } + /** returns whether the currently selected date is special date or not. + */ + isSpecialDay?: string; + } - export interface StartEventArgs { + export interface Fields { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Specifies the specials dates + */ + date?: string; - /** returns the rotator model - */ - model?: ej.Rotator.Model; + /** Specifies the icon class to special dates. + */ + iconClass?: string; - /** returns the name of the event - */ - type?: string; + /** Specifies the tooltip to special dates. + */ + tooltip?: string; - /** the current rotator id. - */ - itemId?: string; + /** Specifies the CSS class to customize the date. + */ + cssClass?: string; + } - /** returns the current slide index. - */ - activeItemIndex?: number; - } + enum Header { - export interface StopEventArgs { + ///Removes day header in DatePicker + None, - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + ///sets the short format of day name (like Sun) in header in DatePicker + Short, - /** returns the rotator model - */ - model?: ej.Rotator.Model; + ///sets the Min format of day name (like su) in header format DatePicker + Min + } - /** returns the name of the event - */ - type?: string; - /** the current rotator id. - */ - itemId?: string; + enum Level { - /** returns the current slide index. - */ - activeItemIndex?: number; - } + ///allow navigation upto year level in DatePicker + Year, - export interface ThumbItemClickEventArgs { + ///allow navigation upto decade level in DatePicker + Decade, - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + ///allow navigation upto Century level in DatePicker + Century + } - /** returns the rotator model - */ - model?: ej.Rotator.Model; - /** returns the name of the event - */ - type?: string; + enum HighlightSection { - /** the current rotator id. - */ - itemId?: string; + ///Highlight the week of the currently selected date in DatePicker popup calendar + Week, - /** returns the current slide index. - */ - activeItemIndex?: number; - } + ///Highlight the workdays in a currently selected date's week in DatePicker popup calendar + WorkDays, - export interface Fields { + ///Nothing will be highlighted, remove highlights from DatePicker popup calendar if already exists + None + } - /** Specifies a link for the image. - */ - linkAttribute?: string; + } - /** Specifies where to open a given link. - */ - targetAttribute?: string; + class DateTimePicker extends ej.Widget { + static fn: DateTimePicker; + constructor(element: JQuery | Element, options?: DateTimePicker.Model); + static Locale: any; + model: DateTimePicker.Model; + defaults: DateTimePicker.Model; - /** Specifies a caption for the image. - */ - text?: string; + /** Disables the DateTimePicker control. + * @returns {void} + */ + disable(): void; - /** Specifies a caption for the thumbnail image. - */ - thumbnailText?: string; + /** Enables the DateTimePicker control. + * @returns {void} + */ + enable(): void; + + /** Returns the current datetime value in the DateTimePicker. + * @returns {string} + */ + getValue(): string; + + /** Hides or closes the DateTimePicker popup. + * @returns {void} + */ + hide(): void; + + /** Updates the current system date value and time value to the DateTimePicker. + * @returns {void} + */ + setCurrentDateTime(): void; + + /** Shows or opens the DateTimePicker popup. + * @returns {void} + */ + show(): void; + } + export namespace DateTimePicker { + + export interface Model { + + /** Used to allow or restrict the editing in DateTimePicker input field directly. By setting false to this API, You can only pick the date and time values from DateTimePicker popup. + * @Default {true} + */ + allowEdit?: boolean; + + /** Displays the custom text for the buttons inside the DateTimePicker popup. when the culture value changed, we can change the buttons text based on the culture. + * @Default {{ today: Today, timeNow: Time Now, done: Done, timeTitle: Time }} + */ + buttonText?: ButtonText; + + /** Set the root class for DateTimePicker theme. This cssClass API helps to use custom skinning option for DateTimePicker control. + */ + cssClass?: string; + + /** Defines the datetime format displayed in the DateTimePicker. The value should be a combination of date format and time format. + * @Default {M/d/yyyy h:mm tt} + */ + dateTimeFormat?: string; + + /** Specifies the header format of the datepicker inside the DateTimePicker popup. See DatePicker.Header + * @Default {ej.DatePicker.Header.Short} + */ + dayHeaderFormat?: ej.DatePicker.Header|string; + + /** Specifies the navigation depth level in DatePicker calendar inside DateTimePicker popup. This option is not applied when start level view option is lower than depth level view. + * See ej.DatePicker.Level + */ + depthLevel?: ej.DatePicker.Level|string; + + /** Enable or disable the animation effect in DateTimePicker. + * @Default {true} + */ + enableAnimation?: boolean; + + /** When this property is set to false, it disables the DateTimePicker control. + * @Default {false} + */ + enabled?: boolean; + + /** Enables or disables the state maintenance of DateTimePicker. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Sets the DateTimePicker direction as right to left alignment. + * @Default {false} + */ + enableRTL?: boolean; + + /** When enableStrictMode true it allows the value outside of the range also but it highlights the textbox with error class, otherwise it internally changed to the correct value. + * @Default {false} + */ + enableStrictMode?: boolean; + + /** Specifies the header format to be displayed in the DatePicker calendar inside the DateTimePicker popup. + * @Default {MMMM yyyy} + */ + headerFormat?: string; + + /** Defines the height of the DateTimePicker textbox. + * @Default {30} + */ + height?: string|number; + + /** Specifies the HTML Attributes of the ejDateTimePicker + * @Default {{}} + */ + htmlAttributes?: any; + + /** Sets the time interval between the two adjacent time values in the time popup. + * @Default {30} + */ + interval?: number; + + /** Defines the localization culture for DateTimePicker. + * @Default {en-US} + */ + locale?: string; + + /** Sets the maximum value to the DateTimePicker. Beyond the maximum value an error class is added to the wrapper element when we set true to enableStrictMode. + * @Default {new Date(12/31/2099 11:59:59 PM)} + */ + maxDateTime?: string|Date; + + /** Sets the minimum value to the DateTimePicker. Behind the minimum value an error class is added to the wrapper element. + * @Default {new Date(1/1/1900 12:00:00 AM)} + */ + minDateTime?: string|Date; + + /** Specifies the popup position of DateTimePicker.See below to know available popup positions + * @Default {ej.DateTimePicker.Bottom} + */ + popupPosition?: string|ej.popupPosition; + + /** Indicates that the DateTimePicker value can only be read and can’t change. + * @Default {false} + */ + readOnly?: boolean; + + /** It allows showing days in other months of DatePicker calendar inside the DateTimePicker popup. + * @Default {true} + */ + showOtherMonths?: boolean; + + /** Shows or hides the arrow button from the DateTimePicker textbox. When the button disabled, the DateTimePicker popup opens while focus in the textbox and hides while focus out from + * the textbox. + * @Default {true} + */ + showPopupButton?: boolean; + + /** Changes the sharped edges into rounded corner for the DateTimePicker textbox and popup. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specifies the start day of the week in datepicker inside the DateTimePicker popup. + * @Default {1} + */ + startDay?: number; + + /** Specifies the start level view in datepicker inside the DateTimePicker popup. See DatePicker.Level + * @Default {ej.DatePicker.Level.Month or month} + */ + startLevel?: ej.DatePicker.Level|string; + + /** Specifies the number of months to navigate at one click of next and previous button in datepicker inside the DateTimePicker popup. + * @Default {1} + */ + stepMonths?: number; + + /** Defines the time format displayed in the time dropdown inside the DateTimePicker popup. + * @Default {h:mm tt} + */ + timeDisplayFormat?: string; + + /** We can drill down up to time interval on selected date with meridian details. + * @Default {{ enabled: false, interval: 5, showMeridian: false, autoClose: true }} + */ + timeDrillDown?: TimeDrillDown; + + /** Defines the width of the time dropdown inside the DateTimePicker popup. + * @Default {100} + */ + timePopupWidth?: string|number; + + /** Set the jQuery validation error message in DateTimePicker. + * @Default {null} + */ + validationMessage?: any; + + /** Set the jQuery validation rules in DateTimePicker. + * @Default {null} + */ + validationRules?: any; + + /** Sets the DateTime value to the control. + */ + value?: string|Date; + + /** Specifies the water mark text to be displayed in input text. + * @Default {Select date and time} + */ + watermarkText?: string; + + /** Defines the width of the DateTimePicker textbox. + * @Default {143} + */ + width?: string|number; + + /** Fires before the datetime popup closed in the DateTimePicker. + */ + beforeClose?(e: BeforeCloseEventArgs): void; + + /** Fires before the datetime popup open in the DateTimePicker. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + + /** Fires when the datetime value changed in the DateTimePicker textbox. + */ + change?(e: ChangeEventArgs): void; + + /** Fires when DateTimePicker popup closes. + */ + close?(e: CloseEventArgs): void; + + /** Fires after DateTimePicker control is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the DateTimePicker is destroyed successfully + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when the focus-in happens in the DateTimePicker textbox. + */ + focusIn?(e: FocusInEventArgs): void; + + /** Fires when the focus-out happens in the DateTimePicker textbox. + */ + focusOut?(e: FocusOutEventArgs): void; + + /** Fires when DateTimePicker popup opens. + */ + open?(e: OpenEventArgs): void; + } + + export interface BeforeCloseEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the DateTimePicker model. + */ + model?: ej.DateTimePicker.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the event parameters from DateTimePicker. + */ + events?: any; - /** Specifies the URL for an thumbnail image. - */ - thumbnailUrl?: string; + /** returns the DateTimePicker popup. + */ + element?: HTMLElement; + } - /** Specifies the URL for an image. - */ - url?: string; - } - - enum PagerPosition { - - ///string - BottomLeft, - - ///string - BottomRight, - - ///string - Outside, - - ///string - TopCenter, - - ///string - TopLeft, - - ///string - TopRight - } - - } - - class RTE extends ej.Widget { - static fn: RTE; - constructor(element: JQuery | Element, options?: RTE.Model); - static Locale: any; - model: RTE.Model; - defaults: RTE.Model; - - /** Returns the range object. - * @returns {any} - */ - createRange(): any; - - /** Disables the RTE control. - * @returns {void} - */ - disable(): void; - - /** Disables the corresponding tool in the RTE ToolBar. - * @returns {void} - */ - disableToolbarItem(): void; - - /** Enables the RTE control. - * @returns {void} - */ - enable(): void; - - /** Enables the corresponding tool in the toolbar when the tool is disabled. - * @returns {void} - */ - enableToolbarItem(): void; - - /** Performs the action value based on the given command. - * @returns {void} - */ - executeCommand(): void; - - /** Focuses the RTE control. - * @returns {void} - */ - focus(): void; - - /** Gets the command status of the selected text based on the given comment in the RTE control. - * @returns {boolean} - */ - getCommandStatus(): boolean; - - /** Gets the Document from the RTE control. - * @returns {Document} - */ - getDocument(): Document; - - /** Gets the HTML string from the RTE control. - * @returns {HTMLElement} - */ - getHtml(): HTMLElement; - - /** Gets the selected HTML string from the RTE control. - * @returns {HTMLElement} - */ - getSelectedHtml(): HTMLElement; - - /** Gets the content as string from the RTE control. - * @returns {string} - */ - getText(): string; - - /** Hides the RTE control. - * @returns {void} - */ - hide(): void; - - /** Inserts new item to the target contextmenu node. - * @returns {void} - */ - insertMenuOption(): void; - - /** Add a table column at the right or left of the specified cell - * @param {boolean} If it’s true, add a column at the left of the cell, otherwise add a column at the right of the cell - * @param {JQuery} Column will be added based on the given cell element - * @returns {HTMLElement} - */ - insertColumn(before?: boolean, cell?: JQuery): HTMLElement; - - /** To add a table row below or above the specified cell. - * @param {boolean} If it’s true, add a row before the cell, otherwise add a row after the cell - * @param {JQuery} Row will be added based on the given cell element - * @returns {HTMLElement} - */ - insertRow(before?: boolean, cell?: JQuery): HTMLElement; - - /** This method helps to insert/paste the content at the current cursor (caret) position or the selected content to be replaced with our text by passing the value as parameter to the - * pasteContent method in the Editor. - * @returns {void} - */ - pasteContent(): void; - - /** Refreshes the RTE control. - * @returns {void} - */ - refresh(): void; - - /** Removes the specified table column. - * @param {JQuery} Remove the given column element - * @returns {void} - */ - removeColumn(cell?: JQuery): void; - - /** Removes the specified table row. - * @param {JQuery} Remove the given row element - * @returns {void} - */ - removeRow(cell?: JQuery): void; - - /** Deletes the specified table. - * @param {JQuery} Remove the given table - * @returns {void} - */ - removeTable(table?: JQuery): void; - - /** Removes the target menu item from the RTE contextmenu. - * @returns {void} - */ - removeMenuOption(): void; - - /** Removes the given tool from the RTE Toolbar. - * @returns {void} - */ - removeToolbarItem(): void; - - /** Selects all the contents within the RTE. - * @returns {void} - */ - selectAll(): void; - - /** Selects the contents in the given range. - * @returns {void} - */ - selectRange(): void; - - /** Sets the color picker model type rendered initially in the RTE control. - * @returns {void} - */ - setColorPickerType(): void; - - /** Sets the HTML string from the RTE control. - * @returns {void} - */ - setHtml(): void; - - /** Displays the RTE control. - * @returns {void} - */ - show(): void; - } - export namespace RTE { - - export interface Model { - - /** Enables/disables the editing of the content. - * @Default {True} - */ - allowEditing?: boolean; - - /** RTE control can be accessed through the keyboard shortcut keys. - * @Default {True} - */ - allowKeyboardNavigation?: boolean; - - /** When the property is set to true, it focuses the RTE at the time of rendering. - * @Default {false} - */ - autoFocus?: boolean; - - /** Based on the content size, its height is adjusted instead of adding the scrollbar. - * @Default {false} - */ - autoHeight?: boolean; - - /** This API holds configuration setting for paste clenaup behavior. - * @Default {{ listConversion: false, cleanCSS: false, removeStyles: false, cleanElements: false }} - */ - pasteCleanupSettings?: PasteCleanupSettings; - - /** Sets the colorCode to display the color of the fontColor and backgroundColor in the font tools of the RTE. - * @Default {[000000, FFFFFF, C4C4C4, ADADAD, 595959, 262626, 4f81bd, dbe5f1, b8cce4, 95b3d7, 366092, 244061, c0504d, f2dcdb, e5b9b7, d99694, 953734,632423, 9bbb59, - * ebf1dd, d7e3bc, c3d69b, 76923c, 4f6128, 8064a2, e5e0ec, ccc1d9, b2a2c7, 5f497a, 3f3151, f79646, fdeada, fbd5b5, fac08f,e36c09, 974806]} - */ - colorCode?: any; - - /** The number of columns given are rendered in the color palate popup. - * @Default {6} - */ - colorPaletteColumns?: number; - - /** The number of rows given are rendered in the color palate popup. - * @Default {6} - */ - colorPaletteRows?: number; - - /** Sets the root class for the RTE theme. This cssClass API helps the usage of custom skinning option for the RTE control by including this root class in CSS. - */ - cssClass?: string; - - /** Enables/disables the RTE control’s accessibility or interaction. - * @Default {True} - */ - enabled?: boolean; - - /** When the property is set to true, it returns the encrypted text. - * @Default {false} - */ - enableHtmlEncode?: boolean; - - /** Maintain the values of the RTE after page reload. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Shows the resize icon and enables the resize option in the RTE. - * @Default {True} - */ - enableResize?: boolean; - - /** Shows the RTE in the RTL direction. - * @Default {false} - */ - enableRTL?: boolean; - - /** Formats the contents based on the XHTML rules. - * @Default {false} - */ - enableXHTML?: boolean; - - /** Enables the tab key action with the RichTextEditor content. - * @Default {True} - */ - enableTabKeyNavigation?: boolean; - - /** This API allows to enable url and fileName for pdf export. - * @Default {null} - */ - exportToPdfSettings?: ExportToPdfSettings; - - /** This API allows to enable url and fileName for word export. - * @Default {null} - */ - exportToWordSettings?: ExportToWordSettings; - - /** Load the external CSS file inside Iframe. - * @Default {null} - */ - externalCSS?: string; - - /** This API allows to enable the file browser support in the RTE control to browse, create, delete and upload the files in the specified current directory. - * @Default {null} - */ - fileBrowser?: FileBrowser; - - /** Sets the fontName in the RTE. - * @Default {{text: Segoe UI, value: Segoe UI },{text: Arial, value: Arial,Helvetica,sans-serif },{text: Courier New, value: Courier New,Courier,Monospace }, - * {text: Georgia, value: Georgia,serif },{text: Impact, value: Impact,Charcoal,sans-serif },{text: Lucida Console, value: Lucida Console,Monaco,Monospace }, - * {text: Tahoma, value: Tahoma,Geneva,sans-serif },{text: Times New Roman, value: Times New Roman },{text: Trebuchet MS, value: Trebuchet MS,Helvetica,sans-serif }, - * {text: Verdana, value: Verdana,Geneva,sans-serif}} - */ - fontName?: any; - - /** Sets the fontSize in the RTE. - * @Default {{ text: 1, value: 1 },{ text: 2 (10pt), value: 2 },{ text: 3 (12pt), value: 3 },{ text: 4 (14pt), value: 4 },{ text: 5 (18pt), value: 5 }, - * { text: 6 (24pt), value: 6 },{ text: 7 (36pt), value: 7 }} - */ - fontSize?: any; - - /** Sets the format in the RTE. - * @Default {{ text: Paragraph, value: <p>, spriteCssClass: e-paragraph },{ text: Quotation, value: <blockquote>, spriteCssClass: e-quotation }, - * { text: Heading 1, value: <h1>, spriteCssClass: e-h1 },{ text: Heading 2, value: <h2>, spriteCssClass: e-h2 },{ text: Heading 3, value: <h3>, spriteCssClass: e-h3 }, - * { text: Heading 4, value: <h4>, spriteCssClass: e-h4 },{ text: Heading 5, value: <h5>, spriteCssClass: e-h5 },{ text: Heading 6, value: <h6>, spriteCssClass: e-h6}} - */ - format?: string; - - /** Defines the height of the RTE textbox. - * @Default {370} - */ - height?: string | number; - - /** Specifies the HTML Attributes of the ejRTE. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Sets the given attributes to the iframe body element. - * @Default {{}} - */ - iframeAttributes?: any; - - /** This API allows the image browser to support in the RTE control to browse, create, delete, and upload the image files to the specified current directory. - * @Default {null} - */ - imageBrowser?: ImageBrowser; - - /** This API allows to enable the url for connecting to RTE import. - * @Default {null} - */ - importSettings?: ImportSettings; - - /** Enables/disables responsive support for the RTE control toolbar items during the window resizing time. - * @Default {false} - */ - isResponsive?: boolean; - - /** Sets the culture in the RTE when you set the localization values are needs to be assigned to the corresponding text as follows. - * @Default {en-US} - */ - locale?: string; - - /** Sets the maximum height for the RTE outer wrapper element. - * @Default {null} - */ - maxHeight?: string | number; - - /** Sets the maximum length for the RTE outer wrapper element. - * @Default {7000} - */ - maxLength?: number; - - /** Sets the maximum width for the RTE outer wrapper element. - * @Default {null} - */ - maxWidth?: string | number; - - /** Sets the minimum height for the RTE outer wrapper element. - * @Default {280} - */ - minHeight?: string | number; - - /** Sets the minimum width for the RTE outer wrapper element. - * @Default {400} - */ - minWidth?: string | number; - - /** Sets the name in the RTE. When the name value is not initialized, the ID value is assigned to the name. - */ - name?: string; - - /** Shows ClearAll icon in the RTE footer. - * @Default {false} - */ - showClearAll?: boolean; - - /** Shows the clear format in the RTE footer. - * @Default {true} - */ - showClearFormat?: boolean; - - /** Shows the Custom Table in the RTE. - * @Default {True} - */ - showCustomTable?: boolean; - - /** The showContextMenu property helps to enable custom context menu within editor area. - * @Default {True} - */ - showContextMenu?: boolean; - - /** This API is used to set the default dimensions for the image and video. When this property is set to true, the image and video dialog displays the dimension option. - * @Default {false} - */ - showDimensions?: boolean; - - /** Shows the FontOption in the RTE. - * @Default {True} - */ - showFontOption?: boolean; - - /** Shows footer in the RTE. When the footer is enabled, it displays the HTML tag, word Count, character count, clear format, resize icon and clear all the content icons, by default. - * @Default {false} - */ - showFooter?: boolean; - - /** Shows the HtmlSource in the RTE footer. - * @Default {false} - */ - showHtmlSource?: boolean; - - /** When the cursor is placed or when the text is selected in the RTE, it displays the tag info in the footer. - * @Default {True} - */ - showHtmlTagInfo?: boolean; - - /** Shows the toolbar in the RTE. - * @Default {True} - */ - showToolbar?: boolean; - - /** Counts the total characters and displays it in the RTE footer. - * @Default {True} - */ - showCharCount?: boolean; - - /** Enables or disables rounded corner UI look for RTE. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Counts the total words and displays it in the RTE footer. - * @Default {True} - */ - showWordCount?: boolean; - - /** The given number of columns render the insert table pop. - * @Default {10} - */ - tableColumns?: number; - - /** The given number of rows render the insert table pop. - * @Default {8} - */ - tableRows?: number; - - /** Sets the tools in the RTE and gets the inner display order of the corresponding group element. Tools are dependent on the toolsList property. - * @Default {formatStyle: [format],style: [bold, italic, underline, strikethrough],alignment: [justifyLeft, justifyCenter, justifyRight, justifyFull],lists: [unorderedList, orderedList], - * indenting: [outdent, indent],doAction: [undo, redo],links: [createLink,removeLink],images: [image],media: [video],tables: [createTable, addRowAbove, addRowBelow, - * addColumnLeft, addColumnRight, deleteRow, deleteColumn, deleteTable]],view:[“fullScreen”,zoomIn,zoomOut],print:[print]} - */ - tools?: Tools; - - /** Specifies the list of groups and order of those groups displayed in the RTE toolbar. The toolsList property is used to get the root group order and tools property is used to get the - * inner order of the corresponding groups displayed. When the value is not specified, it gets its default display order and tools. - * @Default {[formatStyle, font, style, effects, alignment, lists, indenting, clipboard, doAction, clear, links, images, media, tables, casing,view, customTools,print,edit]} - */ - toolsList?: any[]; - - /** Specifies the overflow mode for RTE responsive toolbar - * @Default {Popup} - */ - toolbarOverflowMode?: ej.RTE.ToolbarOverflowMode | string; - - /** Display the hints for the tools in the Toolbar. - * @Default {{ associate: mouseenter, showShadow: true, position: { stem: { horizontal: left, vertical: top } }, tip: { size: { width: 5, height: 5 }, isBalloon: false }} - */ - tooltipSettings?: any; - - /** Gets the undo stack limit. - * @Default {50} - */ - undoStackLimit?: number; - - /** The given string value is displayed in the editable area. - * @Default {null} - */ - value?: string; - - /** Sets the jQuery validation rules to the Rich Text Editor. - * @Default {null} - */ - validationRules?: any; - - /** Sets the jQuery validation error message to the Rich Text Editor. - * @Default {null} - */ - validationMessage?: any; - - /** Defines the width of the RTE textbox. - * @Default {786} - */ - width?: string | number; - - /** Increases and decreases the contents zoom range in percentage - * @Default {0.05} - */ - zoomStep?: string | number; - - /** Fires when changed successfully. */ - change?(e: ChangeEventArgs): void; - - /** Fires when the RTE is created successfully */ - create?(e: CreateEventArgs): void; - - /** Fires when mouse click on menu items. */ - contextMenuClick?(e: ContextMenuClickEventArgs): void; - - /** Fires before the RTE is destroyed. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when the commands are executed successfully. */ - execute?(e: ExecuteEventArgs): void; - - /** Fires when the keydown action is successful. */ - keydown?(e: KeydownEventArgs): void; - - /** Fires when the keyup action is successful. */ - keyup?(e: KeyupEventArgs): void; + export interface BeforeOpenEventArgs { - /** Fires before the RTE Edit area is rendered and after the toolbar is rendered. */ - preRender?(e: PreRenderEventArgs): void; + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** Fires when the text is selected in the text area */ - select?(e: SelectEventArgs): void; - } + /** returns the DateTimePicker model. + */ + model?: ej.DateTimePicker.Model; - export interface ChangeEventArgs { + /** returns the name of the event. + */ + type?: string; - /** When the event is canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the event parameters from DateTimePicker. + */ + events?: any; - /** returns the RTE model - */ - model?: any; + /** returns the DateTimePicker popup. + */ + element?: HTMLElement; + } - /** returns the name of the event - */ - type?: string; - } + export interface ChangeEventArgs { - export interface CreateEventArgs { + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** When the event is canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the TimePicker model + */ + model?: ej.DateTimePicker.Model; - /** Returns the RTE model - */ - model?: any; + /** returns the name of the event + */ + type?: string; - /** Returns the name of the event - */ - type?: string; - } + /** returns the current value is valid or not + */ + isValidState?: boolean; - export interface ContextMenuClickEventArgs { + /** returns the modified datetime value + */ + value?: string; - /** returns clicked menu item text. - */ - text?: string; + /** returns the previously selected date time value + */ + prevDateTime?: string; - /** returns clicked menu item element. - */ - element?: any; + /** returns true if change event triggered by interaction, otherwise returns false + */ + isInteraction?: boolean; + } - /** returns the selected item. - */ - selectedItem?: number; - } + export interface CloseEventArgs { - export interface DestroyEventArgs { + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** When the event is canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the TimePicker model + */ + model?: ej.DateTimePicker.Model; - /** Returns the RTE model - */ - model?: any; + /** returns the name of the event + */ + type?: string; - /** Returns the name of the event - */ - type?: string; - } + /** returns the modified datetime value + */ + value?: string; - export interface ExecuteEventArgs { + /** returns the previously selected date time value + */ + prevDateTime?: string; + } - /** When the event is canceled; otherwise, false. - */ - cancel?: boolean; + export interface CreateEventArgs { - /** Returns the RTE model - */ - model?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Returns the name of the event - */ - type?: string; - } + /** returns the DateTimePicker model + */ + model?: ej.DateTimePicker.Model; - export interface KeydownEventArgs { + /** returns the name of the event + */ + type?: string; + } - /** When the event is canceled; otherwise, false. - */ - cancel?: boolean; + export interface DestroyEventArgs { - /** Returns the RTE model - */ - model?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Returns the name of the event - */ - type?: string; - } + /** returns the DateTimePicker model + */ + model?: ej.DateTimePicker.Model; - export interface KeyupEventArgs { + /** returns the name of the event + */ + type?: string; + } - /** When the event is canceled; otherwise, false. - */ - cancel?: boolean; + export interface FocusInEventArgs { - /** Returns the RTE model - */ - model?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Returns the name of the event - */ - type?: string; - } + /** returns the TimePicker model + */ + model?: ej.DateTimePicker.Model; - export interface PreRenderEventArgs { + /** returns the name of the event + */ + type?: string; - /** When the event is canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the datetime value, which is in text box + */ + value?: string; + } + + export interface FocusOutEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TimePicker model + */ + model?: ej.DateTimePicker.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the datetime value, which is in text box + */ + value?: string; + } + + export interface OpenEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TimePicker model + */ + model?: ej.DateTimePicker.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the modified datetime value + */ + value?: string; + + /** returns the previously selected date time value + */ + prevDateTime?: string; + } + + export interface ButtonText { + + /** Sets the text for the Done button inside the datetime popup. + */ + done?: string; + + /** Sets the text for the Now button inside the datetime popup. + */ + timeNow?: string; + + /** Sets the header text for the Time dropdown. + */ + timeTitle?: string; + + /** Sets the text for the Today button inside the datetime popup. + */ + today?: string; + } + + export interface TimeDrillDown { + + /** This is the field to show/hide the timeDrillDown in DateTimePicker. + */ + enabled?: boolean; + + /** Sets the interval time of minutes on selected date. + */ + interval?: number; + + /** Allows the user to show or hide the meridian with time in DateTimePicker. + */ + showMeridian?: boolean; + + /** After choosing the time, the popup will close automatically if we set it as true, otherwise we focus out the DateTimePicker or choose timeNow button for closing the popup. + */ + autoClose?: boolean; + } + } + enum popupPosition { + //Opens the DateTimePicker popup below to the DateTimePicker input box + Bottom, + //Opens the DateTimePicker popup above to the DateTimePicker input box + Top, + } + + class DateRangePicker extends ej.Widget { + static fn: DateRangePicker; + constructor(element: JQuery | Element, options?: DateRangePicker.Model); + static Locale: any; + model: DateRangePicker.Model; + defaults: DateRangePicker.Model; + + /** Add the preset ranges to DateRangePicker popup. + * @param {string} Display name + * @param {any[]} StartDate and endDate of range. + * @returns {void} + */ + addRanges(label: string, range: any[]): void; + + /** Clears the all ranges selections in DateRangePicker popup + * @returns {void} + */ + clearRanges(): void; + + /** Disables the DateRangePicker control. + * @returns {void} + */ + disable(): void; + + /** Enable the DateRangePicker control, if it is in disabled state. + * @returns {void} + */ + enable(): void; + + /** Returns the startDate and endDate values in the selected ranges in the DateRangePicker control. + * @returns {any} + */ + getSelectedRange(): any; + + /** Close the DateRangePicker popup, if it is in opened state. + * @returns {void} + */ + popupHide(): void; + + /** Opens the DateRangePicker popup. + * @returns {void} + */ + popupShow(): void; + + /** set the preset ranges to DateRangePicker popup. + * @returns {void} + */ + setRange(): void; + } + export namespace DateRangePicker { + + export interface Model { + + /** Used to allow or restrict the editing in DateRangePicker input field directly. By setting false to this API, You can only pick the date ranges from DateRangePicker popup. + * @Default {true} + */ + allowEdit?: boolean; + + /** Sets the specified text value to the available buttons (Reset, Cancel, Apply) in the DateRangePicker popup. + * @Default {{ reset: Reset, cancel: Cancel, apply: Apply}} + */ + buttonText?: any; + + /** Sets the root CSS class for DateRangePicker theme, which is used to customize. + */ + cssClass?: string; + + /** Formats the date value of the DateRangePicker in to the specified date format. If this API is not specified, dateFormat will be set based on the current culture of DateRangePicker. + * @Default {MM/dd/yyyy} + */ + dateFormat?: string; + + /** Allows to embed the Timepicker align with the calendars in the page, two timepicker will be render, for selecting start and end date. + * @Default {false} + */ + enableTimePicker?: boolean; + + /** Enable or disable the DateRangePicker control. + * @Default {true} + */ + enabled?: boolean; + + /** Sustain the entire widget model of DateRangePicker even after form post or browser refresh + * @Default {false} + */ + enablePersistence?: boolean; + + /** Specifies the end date of the date ranges. + * @Default {null} + */ + endDate?: string|Date; + + /** Specifies the height of the DateRangePicker input. + * @Default {28px} + */ + height?: string|number; + + /** Change the DateRangePicker calendar and date format based on given culture. + * @Default {en-US} + */ + locale?: string; + + /** Used to add the preset ranges. Added ranges using this, will show in popup in right side for easy selection of different preset ranges. + * @Default {null} + */ + ranges?: any; + + /** Specifies the start date of the date ranges + * @Default {null} + */ + startDate?: string|Date; + + /** Shows/hides the date icon button at right side of textbox, which is used to open or close the DateRangePicker calendar popup. + * @Default {true} + */ + showPopupButton?: boolean; + + /** DateRangePicker input and popup is displayed with rounded corner when this property is set to true. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Formats the date value of the DateRangePicker in to the specified time format. If this API is not specified, timeFormat will be set based on the current culture of DateRangePicker. + * @Default {HH:mm tt} + */ + timeFormat?: string; + + /** Separated two date values in string format to sets the date ranges in calendars. + * @Default {null} + */ + value?: string; + + /** Specifies the water mark text to be displayed in input text. + * @Default {Select Range} + */ + watermarkText?: string; + + /** Specifies the width of the DateRangePicker input text. + * @Default {160px} + */ + width?: string|number; + + /** Fires before closing the DateRangePicker popup. + */ + beforeClose?(e: BeforeCloseEventArgs): void; + + /** Fires before opening the DateRangePicker popup. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + + /** Fires when the DateRangePicker values get changed. + */ + onChange?(e: OnChangeEventArgs): void; + + /** Fires when DateRangePicker popup is closed. + */ + close?(e: CloseEventArgs): void; + + /** Fires when the DateRangePicker is created successfully. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the DateRangePicker is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when DateRangePicker popup is opened. + */ + open?(e: OpenEventArgs): void; + + /** Fires when a date ranges is selected from the DateRangePicker popup. + */ + select?(e: SelectEventArgs): void; + } + + export interface BeforeCloseEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the DateRangePicker model + */ + model?: ej.DateRangePicker.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the event parameters from DateRangePicker. + */ + events?: any; + + /** returns the DateRangePicker popup. + */ + element?: HTMLElement; + } + + export interface BeforeOpenEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** Returns the RTE model - */ - model?: any; + /** returns the DateRangePicker model. + */ + model?: ej.DateRangePicker.Model; - /** Returns the name of the event - */ - type?: string; - } + /** returns the name of the event. + */ + type?: string; - export interface SelectEventArgs { + /** returns the event parameters from DateRangePicker. + */ + events?: any; - /** When the event is canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the DateRangePicker popup. + */ + element?: HTMLElement; + } - /** Returns the RTE model - */ - model?: any; + export interface OnChangeEventArgs { - /** Returns the name of the event - */ - type?: string; + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** Returns the event object - */ - event?: any; - } + /** returns the DateRangePicker model. + */ + model?: ej.DateRangePicker.Model; - export interface PasteCleanupSettings { + /** returns the name of the event. + */ + type?: string; - /** This API is used to convert the list elements pasted from word document to editor. - * @Default {false} - */ - listConversion?: boolean; + /** returns the DateRangePicker input value. + */ + value?: string; - /** This API is used to clean the unwanted css in the elements pasted from word document to editor. - * @Default {false} - */ - cleanCSS?: boolean; + /** returns the startDate of DateRangePicker. + */ + startDate?: any; - /** This API is used to remove all styles in the elements pasted from word document to editor. - * @Default {false} - */ - removeStyles?: boolean; + /** returns the endDate of the DateRangePicker popup. + */ + endDate?: any; + } - /** This API is used to clean the unwanted elements pasted from word document to editor. - * @Default {false} - */ - cleanElements?: boolean; - } + export interface CloseEventArgs { - export interface ExportToPdfSettings { + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** This API is used to receive the server-side handler for export related operations. - */ - url?: string; + /** returns the current date object. + */ + date?: any; - /** Specifies the file name for the exported pdf file. - */ - fileName?: string; - } + /** returns the DateRangePicker model. + */ + model?: ej.DateRangePicker.Model; - export interface ExportToWordSettings { + /** returns the name of the event. + */ + type?: string; - /** This API is used to receive the server-side handler for export related operations. - */ - url?: string; + /** returns the DateRangePicker popup. + */ + element?: HTMLElement; + } - /** Specifies the file name for the exported word file. - */ - fileName?: string; - } + export interface CreateEventArgs { - export interface FileBrowser { + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; - /** This API is used to receive the server-side handler for file related operations. - */ - ajaxAction?: string; + /** returns the DateRangePicker model. + */ + model?: ej.DateRangePicker.Model; - /** Specifies the file type extension shown in the file browser window. - */ - extensionAllow?: string; + /** returns the name of the event. + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the DateRangePicker model. + */ + model?: ej.DateRangePicker.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface OpenEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the current date object. + */ + date?: any; + + /** returns the DateRangePicker model. + */ + model?: ej.DateRangePicker.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the DateRangePicker popup. + */ + element?: HTMLElement; + } + + export interface SelectEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the selected date object. + */ + startDate?: any; + + /** returns the DateRangePicker model. + */ + model?: ej.DateRangePicker.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the current date value. + */ + endDate?: any; + } + } + + class Dialog extends ej.Widget { + static fn: Dialog; + constructor(element: JQuery | Element, options?: Dialog.Model); + static Locale: any; + model: Dialog.Model; + defaults: Dialog.Model; + + /** Closes the dialog widget dynamically. + * @returns {any} + */ + close(): any; + + /** Collapses the content area when it is expanded. + * @returns {any} + */ + collapse(): any; + + /** Destroys the Dialog widget. + * @returns {void} + */ + destroy(): void; + + /** Expands the content area when it is collapsed. + * @returns {any} + */ + expand(): any; + + /** Checks whether the Dialog widget is opened or not. This methods returns Boolean value. + * @returns {boolean} + */ + isOpen(): boolean; + + /** Maximizes the Dialog widget. + * @returns {any} + */ + maximize(): any; + + /** Minimizes the Dialog widget. + * @returns {any} + */ + minimize(): any; + + /** Opens the Dialog widget. + * @returns {any} + */ + open(): any; + + /** Pins the dialog in its current position. + * @returns {any} + */ + pin(): any; + + /** Refreshes the dialog content dynamically. + * @returns {void} + */ + refresh(): void; + + /** Restores the dialog. + * @returns {any} + */ + restore(): any; + + /** Unpins the Dialog widget. + * @returns {any} + */ + unpin(): any; + + /** Sets the title for the Dialog widget. + * @param {string} The title for the dialog widget. + * @returns {any} + */ + setTitle(Title: string): any; + + /** Sets the content for the Dialog widget dynamically. + * @param {string} The content for the dialog widget. It accepts both string and HTML string. + * @returns {any} + */ + setContent(content: string): any; + + /** Sets the focus on the Dialog widget. + * @returns {any} + */ + focus(): any; + } + export namespace Dialog { + + export interface Model { + + /** Adds action buttons like close, minimize, pin, maximize in the dialog header. + */ + actionButtons?: string[]; + + /** Specifies the ajaxSettings option to load the content to the Dialog control. + * @Default {null} + */ + ajaxSettings?: AjaxSettings; + + /** Enables or disables draggable. + */ + allowDraggable?: boolean; + + /** Enables or disables keyboard interaction. + */ + allowKeyboardNavigation?: boolean; + + /** Customizes the Dialog widget animations. The Dialog widget can be animated while opening and closing the dialog. In order to customize animation effects, you need to set + * “enableAnimation” as true. It contains the following sub properties. + */ + animation?: any; + + /** To Enable or disable the scrolling for background element of the modal dialog. This will work only with modal dialog. + */ + backgroundScroll?: boolean; + + /** Closes the dialog widget on pressing the ESC key when it is set to true. + */ + closeOnEscape?: boolean; + + /** The selector for the container element. If the property is set, then dialog will append to the selected element and it is restricted to move only within the specified container + * element. + */ + containment?: string; + + /** The content type to load the dialog content at run time. The possible values are null, AJAX, iframe and image. When it is null (default value), the content inside dialog element + * will be displayed as content and when it is not null, the content will be loaded from the URL specified in the contentUrl property. + */ + contentType?: string; + + /** The URL to load the dialog content (such as AJAX, image, and iframe). In order to load content from URL, you need to set contentType as ‘ajax’ or ‘iframe’ or ‘image’. + */ + contentUrl?: string; + + /** The root class for the Dialog widget to customize the existing theme. + */ + cssClass?: string; + + /** Enable or disables animation when the dialog is opened or closed. + */ + enableAnimation?: boolean; + + /** Enables or disables the Dialog widget. + */ + enabled?: boolean; + + /** Enable or disables modal dialog. The modal dialog acts like a child window that is displayed on top of the main window/screen and disables the main window interaction until it is + * closed. + */ + enableModal?: boolean; + + /** Allows the current model values to be saved in local storage or browser cookies for state maintenance when it is set to true. + */ + enablePersistence?: boolean; + + /** Allows the dialog to be resized. The dialog cannot be resized less than the minimum height, width values and greater than the maximum height and width. + */ + enableResize?: boolean; + + /** Displays dialog content from right to left when set to true. + */ + enableRTL?: boolean; + + /** The CSS class name to display the favicon in the dialog header. In order to display favicon, you need to set showHeader as true since the favicon will be displayed in the dialog + * header. + */ + faviconCSS?: string; + + /** Sets the height for the dialog widget. It accepts both string and integer values. For example, it can accepts values like “auto”, “100%”, “100px” as string type and + * “100”, “500” as integer type. + */ + height?: string|number; + + /** Specifies the HTML Attributes of the Dialog. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Enable or disables responsive behavior. + */ + isResponsive?: boolean; + + /** Default Value:{:.param}“en-US” + */ + locale?: string; + + /** Sets the maximum height for the dialog widget. + */ + maxHeight?: string|number; + + /** Sets the maximum width for the dialog widget. + */ + maxWidth?: string|number; + + /** Sets the minimum height for the dialog widget. + */ + minHeight?: string|number; + + /** Sets the minimum width for the dialog widget. + */ + minWidth?: string|number; + + /** Displays the Dialog widget at the given X and Y position. + */ + position?: any; + + /** Shows or hides the dialog header. + */ + showHeader?: boolean; + + /** The Dialog widget can be opened by default i.e. on initialization, when it is set to true. + */ + showOnInit?: boolean; + + /** Enables or disables the rounder corner. + */ + showRoundedCorner?: boolean; + + /** The selector for the container element. If this property is set, the dialog will be displayed (positioned) based on its container. + */ + target?: string; + + /** The title text to be displayed in the dialog header. In order to set title, you need to set showHeader as true since the title will be displayed in the dialog header. + */ + title?: string; + + /** Add or configure the tooltip text for actionButtons in the dialog header. + */ + tooltip?: any; - /** Specifies the directory to perform operations like create, delete and rename folder and files, and upload the selected files to the current directory. - */ - filePath?: string; - } + /** Sets the height for the dialog widget. It accepts both string and integer values. For example, it can accepts values like “auto”, “100%”, “100px” as string type and + * “100”, “500” as integer type. + */ + width?: string|number; + + /** Sets the z-index value for the Dialog widget. + */ + zIndex?: number; + + /** Sets the Footer for the Dialog widget. + */ + showFooter?: boolean; + + /** Sets the FooterTemplate for the Dialog widget. + */ + footerTemplateId?: string; + + /** This event is triggered before the dialog widgets gets open. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; - export interface ImageBrowser { + /** This event is triggered whenever the AJAX request fails to retrieve the dialog content. + */ + ajaxError?(e: AjaxErrorEventArgs): void; - /** This API is used to receive the server-side handler for the file related operations. - */ - ajaxAction?: string; + /** This event is triggered whenever the AJAX request to retrieve the dialog content, gets succeed. + */ + ajaxSuccess?(e: AjaxSuccessEventArgs): void; - /** Specifies the file type extension shown in the image browser window. - */ - extensionAllow?: string; + /** This event is triggered before the dialog widgets get closed. + */ + beforeClose?(e: BeforeCloseEventArgs): void; - /** Specifies the directory to perform operations like create, delete and rename folder and files, and upload the selected images to the current directory. - */ - filePath?: string; - } + /** This event is triggered after the dialog widget is closed. + */ + close?(e: CloseEventArgs): void; - export interface ImportSettings { + /** Triggered after the dialog content is loaded in DOM. + */ + contentLoad?(e: ContentLoadEventArgs): void; - /** This API is used to receive the server-side handler for import operations. - */ - url?: string; - } + /** Triggered after the dialog is created successfully + */ + create?(e: CreateEventArgs): void; - export interface ToolsCustomOrderedList { + /** Triggered after the dialog widget is destroyed successfully + */ + destroy?(e: DestroyEventArgs): void; - /** Specifies the name for customOrderedList item. - */ - name?: string; + /** Triggered while the dialog is dragged. + */ + drag?(e: DragEventArgs): void; - /** Specifies the title for customOrderedList item. - */ - tooltip?: string; + /** Triggered when the user starts dragging the dialog. + */ + dragStart?(e: DragStartEventArgs): void; - /** Specifies the styles for customOrderedList item. - */ - css?: string; + /** Triggered when the user stops dragging the dialog. + */ + dragStop?(e: DragStopEventArgs): void; - /** Specifies the text for customOrderedList item. - */ - text?: string; + /** Triggered after the dialog is opened. + */ + open?(e: OpenEventArgs): void; - /** Specifies the list style for customOrderedList item. - */ - listStyle?: string; + /** Triggered while the dialog is resized. + */ + resize?(e: ResizeEventArgs): void; - /** Specifies the image for customOrderedList item. - */ - listImage?: string; - } + /** Triggered when the user starts resizing the dialog. + */ + resizeStart?(e: ResizeStartEventArgs): void; - export interface ToolsCustomUnorderedList { + /** Triggered when the user stops resizing the dialog. + */ + resizeStop?(e: ResizeStopEventArgs): void; - /** Specifies the name for customUnorderedList item. - */ - name?: string; + /** Triggered when the dialog content is expanded. + */ + expand?(e: ExpandEventArgs): void; - /** Specifies the title for customUnorderedList item. - */ - tooltip?: string; + /** Triggered when the dialog content is collapsed. + */ + collapse?(e: CollapseEventArgs): void; - /** Specifies the styles for customUnorderedList item. - */ - css?: string; + /** Triggered when the custom action button clicked. + */ + actionButtonClick?(e: ActionButtonClickEventArgs): void; + } - /** Specifies the text for customUnorderedList item. - */ - text?: string; + export interface BeforeOpenEventArgs { - /** Specifies the list style for customUnorderedList item. - */ - listStyle?: string; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Specifies the image for customUnorderedList item. - */ - listImage?: string; - } + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - export interface Tools { + /** Name of the event + */ + type?: string; + } - /** Specifies the alignment tools and the display order of this tool in the RTE toolbar. - */ - alignment?: any; + export interface AjaxErrorEventArgs { - /** Specifies the casing tools and the display order of this tool in the RTE toolbar. - */ - casing?: any[]; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Specifies the clear tools and the display order of this tool in the RTE toolbar. - */ - clear?: any[]; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** Specifies the clipboard tools and the display order of this tool in the RTE toolbar. - */ - clipboard?: any[]; + /** Name of the event. + */ + type?: string; - /** Specifies the edit tools and the displays tool in the RTE toolbar. - */ - edit?: any[]; + /** URL of the content. + */ + URL?: string; - /** Specifies the doAction tools and the display order of this tool in the RTE toolbar. - */ - doAction?: any[]; + /** Error page content. + */ + responseText?: string; - /** Specifies the effect of tools and the display order of this tool in RTE toolbar. - */ - effects?: any[]; + /** Error code. + */ + status?: number; - /** Specifies the font tools and the display order of this tool in the RTE toolbar. - */ - font?: any[]; + /** The corresponding error description. + */ + statusText?: string; + } - /** Specifies the formatStyle tools and the display order of this tool in the RTE toolbar. - */ - formatStyle?: any[]; + export interface AjaxSuccessEventArgs { - /** Specifies the image tools and the display order of this tool in the RTE toolbar. - */ - images?: any[]; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Specifies the indent tools and the display order of this tool in the RTE toolbar. - */ - indenting?: any[]; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** Specifies the link tools and the display order of this tool in the RTE toolbar. - */ - links?: any[]; + /** Name of the event. + */ + type?: string; - /** Specifies the list tools and the display order of this tool in the RTE toolbar. - */ - lists?: any[]; + /** URL of the content. + */ + URL?: string; - /** Specifies the media tools and the display order of this tool in the RTE toolbar. - */ - media?: any[]; - - /** Specifies the style tools and the display order of this tool in the RTE toolbar. - */ - style?: any[]; - - /** Specifies the table tools and the display order of this tool in the RTE toolbar. - */ - tables?: any[]; - - /** Specifies the view tools and the display order of this tool in the RTE toolbar. - */ - view?: any[]; - - /** Specifies the print tools and the display order of this tool in the RTE toolbar. - */ - print?: any[]; - - /** Specifies the importExport tools and the display order of this tool in the RTE toolbar. - */ - importExport?: any[]; - - /** Specifies the customOrderedList tools and the display order of this tool in the RTE toolbar. - */ - customOrderedList?: ToolsCustomOrderedList[]; - - /** Specifies the customUnOrderedList tools and the display order of this tool in the RTE toolbar. - */ - customUnorderedList?: ToolsCustomUnorderedList[]; - } - - enum ToolbarOverflowMode { - - ///To display the RTE toolbar overflow items as popup - Popup, - - ///To display the RTE toolbar overflow items as inline toolbar - Inline - } - - } - - class Slider extends ej.Widget { - static fn: Slider; - constructor(element: JQuery | Element, options?: Slider.Model); - static Locale: any; - model: Slider.Model; - defaults: Slider.Model; - - /** To disable the slider - * @returns {void} - */ - disable(): void; - - /** To enable the slider - * @returns {void} - */ - enable(): void; - - /** To get value from slider handle - * @returns {number} - */ - getValue(): number; - - /** To set value to slider handle.By default animation is false while set the value. If you want to enable the animation, pass the enableAnimation as true to this method. - * @returns {void} - */ - setValue(): void; - } - - export namespace Slider { - - export interface Model { - - /** Specifies the allowMouseWheel of the slider. - * @Default {false} - */ - allowMouseWheel?: boolean; - - /** Specifies the animationSpeed of the slider. - * @Default {500} - */ - animationSpeed?: number; - - /** Specify the CSS class to slider to achieve custom theme. - */ - cssClass?: string; - - /** Specifies the animation behavior of the slider. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Specifies the state of the slider. - * @Default {true} - */ - enabled?: boolean; - - /** Specify the enablePersistence to slider to save current model value to browser cookies for state maintains - * @Default {false} - */ - enablePersistence?: boolean; - - /** Specifies the Right to Left Direction of the slider. - * @Default {false} - */ - enableRTL?: boolean; - - /** Specifies the height of the slider. - * @Default {14} - */ - height?: string; - - /** Specifies the HTML Attributes of the ejSlider. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specifies the incremental step value of the slider. - * @Default {1} - */ - incrementStep?: number; - - /** Specifies the distance between two major (large) ticks from the scale of the slider. - * @Default {10} - */ - largeStep?: number; - - /** Specifies the ending value of the slider. - * @Default {100} - */ - maxValue?: number; - - /** Specifies the starting value of the slider. - * @Default {0} - */ - minValue?: number; - - /** Specifies the orientation of the slider. - * @Default {ej.orientation.Horizontal} - */ - orientation?: ej.Orientation | string; - - /** Specifies the readOnly of the slider. - * @Default {false} - */ - readOnly?: boolean; - - /** Specifies the rounded corner behavior for slider. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Shows/Hide the major (large) and minor (small) ticks in the scale of the slider. - * @Default {false} - */ - showScale?: boolean; - - /** Specifies the small ticks from the scale of the slider. - * @Default {true} - */ - showSmallTicks?: boolean; - - /** Specifies the showTooltip to shows the current Slider value, while moving the Slider handle or clicking on the slider handle of the slider. - * @Default {true} - */ - showTooltip?: boolean; - - /** Specifies the sliderType of the slider. - * @Default {ej.SliderType.Default} - */ - sliderType?: ej.slider.sliderType | string; - - /** Specifies the distance between two minor (small) ticks from the scale of the slider. - * @Default {1} - */ - smallStep?: number; - - /** Specifies the value of the slider. But it's not applicable for range slider. To range slider we can use values property. - * @Default {0} - */ - value?: number; - - /** Specifies the values of the range slider. But it's not applicable for default and minRange sliders. we can use value property for default and minRange sliders. - * @Default {[minValue,maxValue]} - */ - values?: any[]; - - /** Specifies the width of the slider. - * @Default {100%} - */ - width?: string; - - /** Fires once Slider control value is changed successfully. */ - change?(e: ChangeEventArgs): void; - - /** Fires once Slider control has been created successfully. */ - create?(e: CreateEventArgs): void; - - /** Fires when Slider control has been destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires once Slider control is sliding successfully. */ - slide?(e: SlideEventArgs): void; - - /** Fires once Slider control is started successfully. */ - start?(e: StartEventArgs): void; - - /** Fires when Slider control is stopped successfully. */ - stop?(e: StopEventArgs): void; - - /** Fires when display the custom tooltip */ - tooltipChange?(e: TooltipChangeEventArgs): void; - } - - export interface ChangeEventArgs { + /** Response content. + */ + data?: string; + } - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface BeforeCloseEventArgs { - /** returns current handle number or index - */ - sliderIndex?: number; + /** Current event object. + */ + event?: any; - /** returns slider id. - */ - id?: string; - - /** returns the slider model. - */ - model?: ej.Slider.Model; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** returns the name of the event. - */ - type?: string; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns the slider value. - */ - value?: number; + /** Name of the event. + */ + type?: string; + } - /** returns true if event triggered by interaction else returns false. - */ - isInteraction?: boolean; - } + export interface CloseEventArgs { - export interface CreateEventArgs { + /** Current event object. + */ + event?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** returns the slider model - */ - model?: ej.Slider.Model; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns the name of the event - */ - type?: string; - } + /** Name of the event + */ + type?: string; + } - export interface DestroyEventArgs { + export interface ContentLoadEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** returns the slider model - */ - model?: ej.Slider.Model; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns the name of the event - */ - type?: string; - } + /** Name of the event. + */ + type?: string; - export interface SlideEventArgs { + /** URL of the content. + */ + URL?: string; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Content type + */ + contentType?: any; + } - /** returns current handle number or index - */ - sliderIndex?: number; - - /** returns slider id - */ - id?: string; - - /** returns the slider model - */ - model?: ej.Slider.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the slider value - */ - value?: number; - } - - export interface StartEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns current handle number or index - */ - sliderIndex?: number; - - /** returns slider id - */ - id?: string; - - /** returns the slider model - */ - model?: ej.Slider.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the slider value - */ - value?: number; - } - - export interface StopEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns current handle number or index - */ - sliderIndex?: number; - - /** returns slider id - */ - id?: string; - - /** returns the slider model - */ - model?: ej.Slider.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the slider value - */ - value?: number; - } - - export interface TooltipChangeEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - } - - namespace slider { - enum sliderType { - //Shows default slider - Default, - //Shows minRange slider - MinRange, - //Shows Range slider - Range, - } - } - - class SplitButton extends ej.Widget { - static fn: SplitButton; - constructor(element: JQuery | Element, options?: SplitButton.Model); - static Locale: any; - model: SplitButton.Model; - defaults: SplitButton.Model; - - /** Destroy the split button widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** To disable the split button - * @returns {void} - */ - disable(): void; - - /** To Enable the split button - * @returns {void} - */ - enable(): void; - - /** To hide the list content of the split button. - * @returns {void} - */ - hide(): void; - - /** To show the list content of the split button. - * @returns {void} - */ - show(): void; - } - export namespace SplitButton { - - export interface Model { - - /** Specifies the arrowPosition of the Split or Dropdown Button.See arrowPosition - * @Default {ej.ArrowPosition.Right} - */ - arrowPosition?: string | ej.ArrowPosition; - - /** Specifies the buttonMode like Split or Dropdown Button.See ButtonMode - * @Default {ej.ButtonMode.Split} - */ - buttonMode?: string | ej.ButtonMode; - - /** Specifies the contentType of the Split Button.See ContentType - * @Default {ej.ContentType.TextOnly} - */ - contentType?: string | ej.ContentType; - - /** Set the root class for Split Button control theme - */ - cssClass?: string; - - /** Specifies the disabling of Split Button if enabled is set to false. - * @Default {true} - */ - enabled?: boolean; - - /** Specifies the enableRTL property for Split Button while initialization. - * @Default {false} - */ - enableRTL?: boolean; - - /** Specifies the height of the Split Button. - * @Default {“”} - */ - height?: string | number; - - /** Specifies the HTML Attributes of the Split Button. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specifies the imagePosition of the Split Button.See imagePositions - * @Default {ej.ImagePosition.ImageRight} - */ - imagePosition?: string | ej.ImagePosition; - - /** Specifies the image content for Split Button while initialization. - */ - prefixIcon?: string; - - /** Specifies the showRoundedCorner property for Split Button while initialization. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specifies the size of the Button. See ButtonSize - * @Default {ej.ButtonSize.Normal} - */ - size?: string | ej.ButtonSize; - - /** Specifies the image content for Split Button while initialization. - */ - suffixIcon?: string; - - /** Specifies the list content for Split Button while initialization - */ - targetID?: string; - - /** Specifies the text content for Split Button while initialization. - */ - text?: string; - - /** Specifies the width of the Split Button. - * @Default {“”} - */ - width?: string | number; + export interface CreateEventArgs { - /** Fires before menu of the split button control is opened. */ - beforeOpen?(e: BeforeOpenEventArgs): void; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Fires when Button control is clicked successfully */ - click?(e: ClickEventArgs): void; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** Fires before the list content of Button control is closed */ - close?(e: CloseEventArgs): void; + /** Name of the event. + */ + type?: string; + } - /** Fires after Split Button control is created. */ - create?(e: CreateEventArgs): void; + export interface DestroyEventArgs { - /** Fires when the Split Button is destroyed successfully */ - destroy?(e: DestroyEventArgs): void; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Fires when a menu item is Hovered out successfully */ - itemMouseOut?(e: ItemMouseOutEventArgs): void; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** Fires when a menu item is Hovered in successfully */ - itemMouseOver?(e: ItemMouseOverEventArgs): void; + /** Name of the event. + */ + type?: string; + } - /** Fires when a menu item is clicked successfully */ - itemSelected?(e: ItemSelectedEventArgs): void; + export interface DragEventArgs { - /** Fires before the list content of Button control is opened */ - open?(e: OpenEventArgs): void; - } + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - export interface BeforeOpenEventArgs { + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns the cancel option value - */ - cancel?: boolean; + /** Name of the event. + */ + type?: string; - /** returns the split button model - */ - model?: ej.SplitButton.Model; + /** Current event object. + */ + event?: any; + } - /** returns the name of the event - */ - type?: string; - } + export interface DragStartEventArgs { - export interface ClickEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** returns the cancel option value - */ - cancel?: boolean; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns the split button model - */ - model?: ej.SplitButton.Model; + /** Name of the event. + */ + type?: string; - /** returns the name of the event - */ - type?: string; + /** Current event object. + */ + event?: any; + } - /** returns the target of the current object. - */ - target?: any; + export interface DragStopEventArgs { - /** return the button state - */ - status?: boolean; - } + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - export interface CloseEventArgs { + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns the cancel option value - */ - cancel?: boolean; + /** Name of the event. + */ + type?: string; - /** returns the split button model - */ - model?: ej.SplitButton.Model; + /** Current event object. + */ + event?: any; + } - /** returns the name of the event - */ - type?: string; - } + export interface OpenEventArgs { - export interface CreateEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** returns the cancel option value - */ - cancel?: boolean; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns the split button model - */ - model?: ej.SplitButton.Model; + /** Name of the event. + */ + type?: string; + } - /** returns the name of the event - */ - type?: string; - } + export interface ResizeEventArgs { - export interface DestroyEventArgs { + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** returns the cancel option value - */ - cancel?: boolean; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns the split button model - */ - model?: ej.SplitButton.Model; + /** Name of the event. + */ + type?: string; - /** returns the name of the event - */ - type?: string; - } + /** Current event object. + */ + event?: any; + } - export interface ItemMouseOutEventArgs { + export interface ResizeStartEventArgs { - /** returns the cancel option value - */ - cancel?: boolean; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** returns the split button model - */ - model?: ej.SplitButton.Model; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns the name of the event - */ - type?: string; - - /** returns the clicked menu item element - */ - element?: any; - - /** return the menu item id - */ - ID?: string; - - /** return the clicked menu item text - */ - Text?: string; - } - - export interface ItemMouseOverEventArgs { - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the split button model - */ - model?: ej.SplitButton.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the clicked menu item element - */ - element?: any; - - /** return the menu item id - */ - ID?: string; - - /** return the clicked menu item text - */ - Text?: string; - } - - export interface ItemSelectedEventArgs { - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the split button model - */ - model?: ej.SplitButton.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the clicked menu item element - */ - element?: any; - - /** returns the selected item - */ - selectedItem?: any; - - /** return the menu id - */ - menuId?: string; - - /** return the clicked menu item text - */ - menuText?: string; - } - - export interface OpenEventArgs { - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the split button model - */ - model?: ej.SplitButton.Model; - - /** returns the name of the event - */ - type?: string; - } - } - enum ArrowPosition { - //To set Left arrowPosition of the split button - Left, - //To set Right arrowPosition of the split button - Right, - //To set Top arrowPosition of the split button - Top, - //To set Bottom arrowPosition of the split button - Bottom, - } - - class Splitter extends ej.Widget { - static fn: Splitter; - constructor(element: JQuery | Element, options?: Splitter.Model); - static Locale: any; - model: Splitter.Model; - defaults: Splitter.Model; - - /** To add a new pane to splitter control. - * @param {string} content of pane. - * @param {any} pane properties. - * @param {number} index of pane. - * @returns {HTMLElement} - */ - addItem(content: string, property: any, index: number): HTMLElement; - - /** To collapse the splitter control pane. - * @param {number} index number of pane. - * @returns {void} - */ - collapse(paneIndex: number): void; - - /** To expand the splitter control pane. - * @param {number} index number of pane. - * @returns {void} - */ - expand(paneIndex: number): void; - - /** To refresh the splitter control pane resizing. - * @returns {void} - */ - refresh(): void; - - /** To remove a specified pane from the splitter control. - * @param {number} index of pane. - * @returns {void} - */ - removeItem(index: number): void; - } - export namespace Splitter { - - export interface Model { - - /** Turns on keyboard interaction with the Splitter panes. You must set this property to true to access the keyboard shortcuts of ejSplitter. - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** Specify animation speed for the Splitter pane movement, while collapsing and expanding. - * @Default {300} - */ - animationSpeed?: number; - - /** Specify the CSS class to splitter control to achieve custom theme. - * @Default {“”} - */ - cssClass?: string; - - /** Specifies the animation behavior of the splitter. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Specifies the splitter control to be displayed in right to left direction. - * @Default {false} - */ - enableRTL?: boolean; - - /** Specify height for splitter control. - * @Default {null} - */ - height?: string; - - /** Specifies the HTML Attributes of the Splitter. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specify window resizing behavior for splitter control. - * @Default {false} - */ - isResponsive?: boolean; - - /** Specify the orientation for splitter control. See orientation - * @Default {ej.orientation.Horizontal or “horizontal”} - */ - orientation?: ej.Orientation | string; - - /** Specify properties for each pane like paneSize, minSize, maxSize, collapsible, expandable, resizable. - * @Default {[]} - */ - properties?: any[]; - - /** Specify width for splitter control. - * @Default {null} - */ - width?: string; - - /** Fires before expanding / collapsing the split pane of splitter control. */ - beforeExpandCollapse?(e: BeforeExpandCollapseEventArgs): void; - - /** Fires when splitter control pane has been created. */ - create?(e: CreateEventArgs): void; - - /** Fires when splitter control pane has been destroyed. */ - destroy?(e: DestroyEventArgs): void; - - /** Fires when expand / collapse operation in splitter control pane has been performed successfully. */ - expandCollapse?(e: ExpandCollapseEventArgs): void; - - /** Fires when resize in splitter control pane. */ - resize?(e: ResizeEventArgs): void; - } - - export interface BeforeExpandCollapseEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns collapsed pane details. - */ - collapsed?: any; - - /** returns expanded pane details. - */ - expanded?: any; - - /** returns the splitter model. - */ - model?: ej.Splitter.Model; - - /** returns the current split bar index. - */ - splitbarIndex?: number; - - /** returns the name of the event. - */ - type?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the splitter model. - */ - model?: ej.Splitter.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the splitter model. - */ - model?: ej.Splitter.Model; - - /** returns the name of the event. - */ - type?: string; - } - - export interface ExpandCollapseEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns collapsed pane details. - */ - collapsed?: any; - - /** returns expanded pane details. - */ - expanded?: any; - - /** returns the splitter model. - */ - model?: ej.Splitter.Model; - - /** returns the current split bar index. - */ - splitbarIndex?: number; - - /** returns the name of the event. - */ - type?: string; - } - - export interface ResizeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns previous pane details. - */ - prevPane?: any; - - /** returns next pane details. - */ - nextPane?: any; - - /** returns the splitter model. - */ - model?: ej.Splitter.Model; - - /** returns the current split bar index. - */ - splitbarIndex?: number; - - /** returns the name of the event. - */ - type?: string; - } - } - - class Tab extends ej.Widget { - static fn: Tab; - constructor(element: JQuery | Element, options?: Tab.Model); - static Locale: any; - model: Tab.Model; - defaults: Tab.Model; - - /** Add new tab items with given name, URL and given index position, if index null it’s add last item. - * @param {string} URL name / tab id. - * @param {string} Tab Display name. - * @param {number} Index position to placed , this is optional. - * @param {string} specifies cssClass, this is optional. - * @param {string} specifies id of tab, this is optional. - * @returns {void} - */ - addItem(URL: string, displayLabel: string, index: number, cssClass: string, id: string): void; - - /** To disable the tab control. - * @returns {void} - */ - disable(): void; - - /** To enable the tab control. - * @returns {void} - */ - enable(): void; - - /** This function get the number of tab rendered - * @returns {number} - */ - getItemsCount(): number; - - /** This function hides the tab control. - * @returns {void} - */ - hide(): void; - - /** This function hides the specified item tab in tab control. - * @param {number} index of tab item. - * @returns {void} - */ - hideItem(index: number): void; - - /** Remove the given index tab item. - * @param {number} index of tab item. - * @returns {void} - */ - removeItem(index: number): void; - - /** This function is to show the tab control. - * @returns {void} - */ - show(): void; - - /** This function helps to show the specified hidden tab item in tab control. - * @param {number} index of tab item. - * @returns {void} - */ - showItem(index: number): void; - } - export namespace Tab { - - export interface Model { - - /** Specifies the ajaxSettings option to load the content to the Tab control. - */ - ajaxSettings?: AjaxSettings; - - /** Tab items interaction with keyboard keys, like headers active navigation. - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** Allow to collapsing the active item, while click on the active header. - * @Default {false} - */ - collapsible?: boolean; - - /** Set the root class for Tab theme. This cssClass API helps to use custom skinning option for Tab control. - */ - cssClass?: string; - - /** Disables the given tab headers and content panels. - * @Default {[]} - */ - disabledItemIndex?: number[]; - - /** Specifies the animation behavior of the tab. - * @Default {true} - */ - enableAnimation?: boolean; - - /** When this property is set to false, it disables the tab control. - * @Default {true} - */ - enabled?: boolean; - - /** Enables the given tab headers and content panels. - * @Default {[]} - */ - enabledItemIndex?: number[]; - - /** Save current model value to browser cookies for state maintains. While refresh the Tab control page the model value apply from browser cookies. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Display Right to Left direction for headers and panels text of tab. - * @Default {false} - */ - enableRTL?: boolean; - - /** Specify to enable scrolling for Tab header. - * @Default {false} - */ - enableTabScroll?: boolean; - - /** The event API to bind the action for active the tab items. - * @Default {click} - */ - events?: string; - - /** Specifies the position of Tab header as top, bottom, left or right. See below to get available Position - * @Default {top} - */ - headerPosition?: string | ej.Tab.Position; - - /** Set the height of the tab header element. Default this property value is null, so height take content height. - * @Default {null} - */ - headerSize?: string | number; - - /** Height set the outer panel element. Default this property value is null, so height take content height. - * @Default {null} - */ - height?: string | number; - - /** Adjust the content panel height for given option (content, auto and fill), by default panels height adjust based on the content.See below to get available HeightAdjustMode - * @Default {content} - */ - heightAdjustMode?: string | ej.Tab.HeightAdjustMode; - - /** Specifies to hide a pane of Tab control. - * @Default {[]} - */ - hiddenItemIndex?: any[]; - - /** Specifies the HTML Attributes of the Tab. - * @Default {{}} - */ - htmlAttributes?: any; - - /** The idPrefix property appends the given string on the added tab item id’s in runtime. - * @Default {ej-tab-} - */ - idPrefix?: string; - - /** Specifies the Tab header in active for given index value. - * @Default {0} - */ - selectedItemIndex?: number; - - /** Display the close button for each tab items. While clicking on the close icon, particular tab item will be removed. - * @Default {false} - */ - showCloseButton?: boolean; - - /** Display the Reload button for each tab items. - * @Default {false} - */ - showReloadIcon?: boolean; - - /** Tab panels and headers to be displayed in rounded corner style. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Set the width for outer panel element, if not it’s take parent width. - * @Default {null} - */ - width?: string | number; - - /** Triggered after a tab item activated. */ - itemActive?(e: ItemActiveEventArgs): void; - - /** Triggered before AJAX content has been loaded. */ - ajaxBeforeLoad?(e: AjaxBeforeLoadEventArgs): void; - - /** Triggered if error occurs in AJAX request. */ - ajaxError?(e: AjaxErrorEventArgs): void; - - /** Triggered after AJAX content load action. */ - ajaxLoad?(e: AjaxLoadEventArgs): void; - - /** Triggered after a tab item activated. */ - ajaxSuccess?(e: AjaxSuccessEventArgs): void; - - /** Triggered before a tab item activated. */ - beforeActive?(e: BeforeActiveEventArgs): void; - - /** Triggered before a tab item remove. */ - beforeItemRemove?(e: BeforeItemRemoveEventArgs): void; - - /** Triggered before a tab item Create. */ - create?(e: CreateEventArgs): void; - - /** Triggered before a tab item destroy. */ - destroy?(e: DestroyEventArgs): void; - - /** Triggered after new tab item add */ - itemAdd?(e: ItemAddEventArgs): void; + /** Name of the event + */ + type?: string; - /** Triggered after tab item removed. */ - itemRemove?(e: ItemRemoveEventArgs): void; - } + /** Current event object. + */ + event?: any; + } - export interface ItemActiveEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface ResizeStopEventArgs { - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** returns the name of the event. - */ - type?: string; + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; - /** returns previous active tab header. - */ - prevActiveHeader?: HTMLElement; + /** Name of the event + */ + type?: string; - /** returns previous active index. - */ - prevActiveIndex?: number; + /** Current event object. + */ + event?: any; + } - /** returns current active tab header . - */ - activeHeader?: HTMLElement; + export interface ExpandEventArgs { - /** returns current active index. - */ - activeIndex?: number; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; + + /** Name of the event. + */ + type?: string; + } + + export interface CollapseEventArgs { + + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; + + /** Name of the event. + */ + type?: string; + } + + export interface ActionButtonClickEventArgs { + + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Name of the event target attribute. + */ + buttonID?: string; + + /** Name of the event. + */ + type?: string; + + /** Instance of the dialog model object. + */ + model?: ej.Dialog.Model; + + /** Name of the event current target title. + */ + currentTarget?: string; + } + + export interface AjaxSettings { + + /** It specifies, whether to enable or disable asynchronous request. + */ + async?: boolean; + + /** It specifies the page will be cached in the web browser. + */ + cache?: boolean; + + /** It specifies the type of data is send in the query string. + */ + contentType?: string; + + /** It specifies the data as an object, will be passed in the query string. + */ + data?: any; + + /** It specifies the type of data that you're expecting back from the response. + */ + dataType?: string; + + /** It specifies the HTTP request type. + */ + type?: string; + } + } + + class DropDownList extends ej.Widget { + static fn: DropDownList; + constructor(element: JQuery | Element, options?: DropDownList.Model); + static Locale: any; + model: DropDownList.Model; + defaults: DropDownList.Model; + + /** Adding a single item or an array of items into the DropDownList allows you to specify all the field attributes such as value, template, image URL, and HTML attributes for those + * items.Grouping and sorting will not be supported when we add items through this method. + * @param {any|any[]} this parameter should have field attributes with respect to mapped field attributes and it's corresponding values to fields + * @returns {void} + */ + addItem(data: any|any[]): void; + + /** This method is used to select all the items in the DropDownList. + * @returns {void} + */ + checkAll(): void; + + /** Clears the text in the DropDownList textbox. + * @returns {void} + */ + clearText(): void; + + /** Destroys the DropDownList widget. + * @returns {void} + */ + destroy(): void; + + /** This property is used to disable the DropDownList widget. + * @returns {void} + */ + disable(): void; + + /** This property disables the set of items in the DropDownList. + * @param {string|number|any[]} disable the given index list items + * @returns {void} + */ + disableItemsByIndices(index: string|number|any[]): void; + + /** This property enables the DropDownList control. + * @returns {void} + */ + enable(): void; + + /** Enables an Item or set of Items that are disabled in the DropDownList + * @param {string|number|any[]} enable the given index list items if it's disabled + * @returns {void} + */ + enableItemsByIndices(index: string|number|any[]): void; + + /** This method retrieves the items using given value. + * @param {string|number|any} Return the whole object of data based on given value + * @returns {any[]} + */ + getItemDataByValue(value: string|number|any): any[]; + + /** This method is used to retrieve the items that are bound with the DropDownList. + * @returns {any} + */ + getListData(): any; + + /** This method is used to get the selected items in the DropDownList. + * @returns {any[]} + */ + getSelectedItem(): any[]; + + /** This method is used to retrieve the items value that are selected in the DropDownList. + * @returns {string} + */ + getSelectedValue(): string; + + /** This method hides the suggestion popup in the DropDownList. + * @returns {void} + */ + hidePopup(): void; + + /** This method is used to select the list of items in the DropDownList through the Index of the items. + * @param {string|number|any[]} select the given index list items + * @returns {void} + */ + selectItemsByIndices(index: string|number|any[]): void; + + /** This method is used to select an item in the DropDownList by using the given text value. + * @param {string|number|any[]} select the list items relates to given text + * @returns {void} + */ + selectItemByText(index: string|number|any[]): void; + + /** This method is used to select an item in the DropDownList by using the given value. + * @param {string|number|any[]} select the list items relates to given values + * @returns {void} + */ + selectItemByValue(index: string|number|any[]): void; + + /** This method shows the DropDownList control with the suggestion popup. + * @returns {void} + */ + showPopup(): void; + + /** This method is used to unselect all the items in the DropDownList. + * @returns {void} + */ + unCheckAll(): void; + + /** This method is used to unselect the list of items in the DropDownList through Index of the items. + * @param {string|number|any[]} unselect the given index list items + * @returns {void} + */ + unselectItemsByIndices(index: string|number|any[]): void; + + /** This method is used to unselect an item in the DropDownList by using the given text value. + * @param {string|number|any[]} unselect the list items relates to given text + * @returns {void} + */ + unselectItemByText(index: string|number|any[]): void; + + /** This method is used to unselect an item in the DropDownList by using the given value. + * @param {string|number|any[]} unselect the list items relates to given values + * @returns {void} + */ + unselectItemByValue(index: string|number|any[]): void; + } + export namespace DropDownList { + + export interface Model { + + /** The Virtual Scrolling(lazy loading) feature is used to display a large amount of data that you require without buffering the entire load of a huge database records in the + * DropDownList, that is, when scrolling, an AJAX request is sent to fetch some amount of data from the server dynamically. To achieve this scenario with DropDownList, set the + * allowVirtualScrolling to true. + * @Default {false} + */ + allowVirtualScrolling?: boolean; + + /** The cascading DropDownLists is a series of two or more DropDownLists in which each DropDownList is filtered according to the previous DropDownList’s value. + * @Default {null} + */ + cascadeTo?: string; + + /** Sets the case sensitivity of the search operation. It supports both enableFilterSearch and enableIncrementalSearch property. + * @Default {false} + */ + caseSensitiveSearch?: boolean; + + /** Dropdown widget's style and appearance can be controlled based on 13 different default built-in themes.You can customize the appearance of the dropdown by using the cssClass + * property. You need to specify a class name in the cssClass property and the same class name is used before the class definitions wherever the custom styles are applied. + */ + cssClass?: string; + + /** This property is used to serve data from the data services based on the query provided. To bind the data to the dropdown widget, the dataSource property is assigned with the + * instance of the ej.DataManager. + * @Default {null} + */ + dataSource?: any; + + /** Sets the separator when the multiSelectMode with delimiter option or checkbox is enabled with the dropdown. When you enter the delimiter value, the texts after the delimiter are + * considered as a separate word or query. The delimiter string is a single character and must be a symbol. Mostly, the delimiter symbol is used as comma (,) or semi-colon (;) or + * any other special character. + * @Default {','} + */ + delimiterChar?: string; + + /** The enabled Animation property uses the easeOutQuad animation to SlideDown and SlideUp the Popup list in 200 and 100 milliseconds, respectively. + * @Default {false} + */ + enableAnimation?: boolean; + + /** This property is used to indicate whether the DropDownList control responds to the user interaction or not. By default, the control is in the enabled mode and you can disable it + * by setting it to false. + * @Default {true} + */ + enabled?: boolean; + + /** Specifies to perform incremental search for the selection of items from the DropDownList with the help of this property. This helps in selecting the item by using the typed + * character. + * @Default {true} + */ + enableIncrementalSearch?: boolean; + + /** This property selects the item in the DropDownList when the item is entered in the Search textbox. + * @Default {false} + */ + enableFilterSearch?: boolean; + + /** Saves the current model value to the browser cookies for state maintenance. While refreshing the DropDownList control page, it retains the model value and it is applied from the + * browser cookies. + * @Default {false} + */ + enablePersistence?: boolean; + + /** This enables the resize handler to resize the popup to any size. + * @Default {false} + */ + enablePopupResize?: boolean; + + /** Sets the DropDownList textbox direction from right to left align. + * @Default {false} + */ + enableRTL?: boolean; + + /** This property is used to sort the Items in the DropDownList. By default, it sorts the items in an ascending order. + * @Default {false} + */ + enableSorting?: boolean; + + /** Specifies the mapping fields for the data items of the DropDownList. + * @Default {null} + */ + fields?: Fields; + + /** When the enableFilterSearch property value is set to true, the values in the DropDownList shows the items starting with or containing the key word/letter typed in the Search + * textbox. + * @Default {ej.FilterType.Contains} + */ + filterType?: ej.FilterType|string; + + /** Used to create visualized header for dropdown items + * @Default {null} + */ + headerTemplate?: string; + + /** Defines the height of the DropDownList textbox. + * @Default {null} + */ + height?: string|number; + + /** It sets the given HTML attributes for the DropDownList control such as ID, name, disabled, etc. + * @Default {null} + */ + htmlAttributes?: any; + + /** Data can be fetched in the DropDownList control by using the DataSource, specifying the number of items. + * @Default {5} + */ + itemsCount?: number; + + /** Allows the user to set the particular country or region language for the DropDownList. + * @Default {en-US} + */ + locale?: string; + + /** Defines the maximum height of the suggestion box. This property restricts the maximum height of the popup when resize is enabled. + * @Default {null} + */ + maxPopupHeight?: string|number; + + /** Defines the minimum height of the suggestion box. This property restricts the minimum height of the popup when resize is enabled. + * @Default {null} + */ + minPopupHeight?: string|number; + + /** Defines the maximum width of the suggestion box. This property restricts the maximum width of the popup when resize is enabled. + * @Default {null} + */ + maxPopupWidth?: string|number; + + /** Defines the minimum height of the suggestion box. This property restricts the minimum height of the popup when resize is enabled. + * @Default {0} + */ + minPopupWidth?: string|number; + + /** With the help of this property, you can make a single or multi selection with the DropDownList and display the text in two modes, delimiter and visual mode. In delimiter mode, you + * can separate the items by using the delimiter character such as comma (,) or semi-colon (;) or any other special character. In the visual mode, the items are showcased like boxes + * with close icon in the textbox. + * @Default {ej.MultiSelectMode.None} + */ + multiSelectMode?: ej.MultiSelectMode|string; + + /** Defines the height of the suggestion popup box in the DropDownList control. + * @Default {152px} + */ + popupHeight?: string|number; + + /** Defines the width of the suggestion popup box in the DropDownList control. + * @Default {auto} + */ + popupWidth?: string|number; + + /** Specifies the query to retrieve the data from the DataSource. + * @Default {null} + */ + query?: any; + + /** Specifies that the DropDownList textbox values should be read-only. + * @Default {false} + */ + readOnly?: boolean; + + /** Specifies an item to be selected in the DropDownList. + * @Default {null} + */ + selectedIndex?: number; + + /** Specifies the selectedItems for the DropDownList. + * @Default {[]} + */ + selectedIndices?: any[]; + + /** Selects multiple items in the DropDownList with the help of the checkbox control. To achieve this, enable the showCheckbox option to true. + * @Default {false} + */ + showCheckbox?: boolean; + + /** DropDownList control is displayed with the popup seen. + * @Default {false} + */ + showPopupOnLoad?: boolean; + + /** DropDownList textbox displayed with the rounded corner style. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** When the enableSorting property value is set to true, this property helps to sort the items either in ascending or descending order + * @Default {ej.SortOrder.Ascending} + */ + sortOrder?: ej.SortOrder|string; + + /** Specifies the targetID for the DropDownList’s items. + * @Default {null} + */ + targetID?: string; + + /** By default, you can add any text or image to the DropDownList item. To customize the item layout or to create your own visualized elements, you can use this template support. + * @Default {null} + */ + template?: string; + + /** Defines the text value that is displayed in the DropDownList textbox. + * @Default {null} + */ + text?: string; + + /** Sets the jQuery validation error message in the DropDownList + * @Default {null} + */ + validationMessage?: any; + + /** Sets the jQuery validation rules in the Dropdownlist. + * @Default {null} + */ + validationRules?: any; + + /** Specifies the value (text content) for the DropDownList control. + * @Default {null} + */ + value?: string|number; + + /** Specifies a short hint that describes the expected value of the DropDownList control. + * @Default {null} + */ + watermarkText?: string; + + /** Defines the width of the DropDownList textbox. + * @Default {null} + */ + width?: string|number; + + /** The Virtual Scrolling feature is used to display a large amount of records in the DropDownList, that is, when scrolling, an AJAX request is sent to fetch some amount of data from + * the server dynamically. To achieve this scenario with DropDownList, set the allowVirtualScrolling to true. You can set the itemsCount property that represents the number of items + * to be fetched from the server on every AJAX request. + * @Default {normal} + */ + virtualScrollMode?: ej.VirtualScrollMode|string; + + /** Fires the action before the XHR request. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Fires the action when the list of items is bound to the DropDownList by xhr post calling + */ + actionComplete?(e: ActionCompleteEventArgs): void; + + /** Fires the action when the xhr post calling failed on remote data binding with the DropDownList control. + */ + actionFailure?(e: ActionFailureEventArgs): void; + + /** Fires the action when the xhr post calling succeed on remote data binding with the DropDownList control + */ + actionSuccess?(e: ActionSuccessEventArgs): void; + + /** Fires the action before the popup is ready to hide. + */ + beforePopupHide?(e: BeforePopupHideEventArgs): void; + + /** Fires the action before the popup is ready to be displayed. + */ + beforePopupShown?(e: BeforePopupShownEventArgs): void; + + /** Fires when the cascading happens between two DropDownList exactly after the value changes in the first dropdown and before filtering in the second Dropdown. + */ + cascade?(e: CascadeEventArgs): void; + + /** Fires the action when the DropDownList control’s value is changed. + */ + change?(e: ChangeEventArgs): void; + + /** Fires the action when the list item checkbox value is changed. + */ + checkChange?(e: CheckChangeEventArgs): void; + + /** Fires the action once the DropDownList is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires the action when the list items is bound to the DropDownList. + */ + dataBound?(e: DataBoundEventArgs): void; + + /** Fires the action when the DropDownList is destroyed. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires the action when the DropDownList is focused. + */ + focusIn?(e: FocusInEventArgs): void; + + /** Fires the action when the DropDownList is about to lose focus. + */ + focusOut?(e: FocusOutEventArgs): void; + + /** Fires the action, once the popup is closed + */ + popupHide?(e: PopupHideEventArgs): void; + + /** Fires the action, when the popup is resized. + */ + popupResize?(e: PopupResizeEventArgs): void; + + /** Fires the action, once the popup is opened. + */ + popupShown?(e: PopupShownEventArgs): void; + + /** Fires the action, when resizing a popup starts. + */ + popupResizeStart?(e: PopupResizeStartEventArgs): void; + + /** Fires the action, when the popup resizing is stopped. + */ + popupResizeStop?(e: PopupResizeStopEventArgs): void; + + /** Fires the action before filtering the list items that starts in the DropDownList when the enableFilterSearch is enabled. + */ + search?(e: SearchEventArgs): void; + + /** Fires the action, when the list of item is selected. + */ + select?(e: SelectEventArgs): void; + } + + export interface ActionBeginEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface ActionCompleteEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns number of times trying to fetch the data + */ + count?: number; + + /** returns the DropDownList model + */ + model?: any; + + /** Returns the query for data retrieval + */ + query?: any; + + /** Returns the query for data retrieval from the Database + */ + request?: any; + + /** returns the name of the event + */ + type?: string; + + /** Returns the number of items fetched from remote data + */ + result?: any[]; + + /** Returns the requested data + */ + xhr?: any; + } + + export interface ActionFailureEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the error message + */ + error?: any; + + /** returns the DropDownList model + */ + model?: any; + + /** Returns the query for data retrieval + */ + query?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface ActionSuccessEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns number of times trying to fetch the data + */ + count?: number; + + /** returns the DropDownList model + */ + model?: any; + + /** Returns the query for data retrieval + */ + query?: any; + + /** Returns the query for data retrieval from the Database + */ + request?: any; + + /** returns the name of the event + */ + type?: string; + + /** Returns the number of items fetched from remote data + */ + result?: any[]; + + /** Returns the requested data + */ + xhr?: any; + } + + export interface BeforePopupHideEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the selected text + */ + text?: string; + + /** returns the selected value + */ + value?: string; + } + + export interface BeforePopupShownEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the selected text + */ + text?: string; + + /** returns the selected value + */ + value?: string; + } + + export interface CascadeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the cascading dropdown model. + */ + cascadeModel?: any; + + /** returns the current selected value in first dropdown. + */ + cascadeValue?: string; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the default filter action for second dropdown data should happen or not. + */ + requiresDefaultFilter?: boolean; + + /** returns the name of the event + */ + type?: string; + } + + export interface ChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the selected item with checkbox checked or not. + */ + isChecked?: boolean; + + /** Returns the selected item ID. + */ + itemId?: string; + + /** returns the DropDownList model + */ + model?: any; + + /** Returns the selected item text. + */ + selectedText?: string; + + /** returns the name of the event + */ + type?: string; + + /** Returns the selected text. + */ + text?: string; + + /** Returns the selected value. + */ + value?: string; + } + + export interface CheckChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the selected item with checkbox checked or not. + */ + isChecked?: boolean; + + /** Returns the selected item ID. + */ + itemId?: string; + + /** returns the DropDownList model + */ + model?: any; + + /** Returns the selected item text. + */ + selectedText?: string; + + /** returns the name of the event + */ + type?: string; + + /** Returns the selected text. + */ + text?: string; + + /** Returns the selected value. + */ + value?: string; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface DataBoundEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the data that is bound to DropDownList + */ + data?: any; + } + + export interface DestroyEventArgs { + + /** its value is set as true,if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface FocusInEventArgs { + + /** its value is set as true,if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface FocusOutEventArgs { + + /** its value is set as true,if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface PopupHideEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the selected text + */ + text?: string; + + /** returns the selected value + */ + value?: string; + } + + export interface PopupResizeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** Returns the data from the resizable plugin. + */ + event?: any; + } + + export interface PopupShownEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the selected text + */ + text?: string; + + /** returns the selected value + */ + value?: string; + } + + export interface PopupResizeStartEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** Returns the data from the resizable plugin. + */ + event?: any; + } + + export interface PopupResizeStopEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the DropDownList model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** Returns the data from the resizable plugin. + */ + event?: any; + } + + export interface SearchEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the data bound to the DropDownList. + */ + items?: any; + + /** returns the DropDownList model + */ + model?: any; + + /** Returns the selected item text. + */ + selectedText?: string; + + /** returns the name of the event + */ + type?: string; + + /** Returns the search string typed in search box. + */ + searchString?: string; + } + + export interface SelectEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the selected item with checkbox checked or not. + */ + isChecked?: boolean; + + /** Returns the selected item ID. + */ + itemId?: string; + + /** returns the DropDownList model + */ + model?: any; + + /** Returns the selected item text. + */ + selectedText?: string; + + /** returns the name of the event + */ + type?: string; + + /** Returns the selected text. + */ + text?: string; + + /** Returns the selected value. + */ + value?: string; + } + + export interface Fields { + + /** Used to group the items. + */ + groupBy?: string; + + /** Defines the HTML attributes such as ID, class, and styles for the item. + */ + htmlAttributes?: any; + + /** Defines the ID for the tag. + */ + id?: string; + + /** Defines the image attributes such as height, width, styles, and so on. + */ + imageAttributes?: string; + + /** Defines the imageURL for the image location. + */ + imageUrl?: string; + + /** Defines the tag value to be selected initially. + */ + selected?: boolean; + + /** Defines the sprite CSS for the image tag. + */ + spriteCssClass?: string; + + /** Defines the table name for tag value or display text while rendering remote data. + */ + tableName?: string; + + /** Defines the text content for the tag. + */ + text?: string; + + /** Defines the tag value. + */ + value?: string; + } + } + enum FilterType { + //filter the data wherever contains search key + Contains, + //filter the data based on search key present at start position + StartsWith, + } + enum MultiSelectMode { + //can select only single item in DropDownList + None, + //can select multiple items and it's separated by delimiterChar + Delimiter, + //can select multiple items and it's show's like visual box in textbox + VisualMode, + } + enum VirtualScrollMode { + //The data is loaded only to the corresponding page (display items). When scrolling some other position, it enables the load on demand with the DropDownList. + Normal, + //The data items are loaded from the remote when scroll handle reaches the end of the scrollbar like infinity scrolling. + Continuous, + } + + class Tooltip extends ej.Widget { + static fn: Tooltip; + constructor(element: JQuery | Element, options?: Tooltip.Model); + static Locale: any; + model: Tooltip.Model; + defaults: Tooltip.Model; + + /** Destroys the Tooltip control. + * @returns {void} + */ + destroy(): void; + + /** Disables the Tooltip control. + * @returns {void} + */ + disable(): void; + + /** Enables the Tooltip control. + * @returns {void} + */ + enable(): void; + + /** Hide the Tooltip popup. + * @param {string} optional Determines the type of effect that takes place when hiding the tooltip. + * @param {() => void} optional custom effect takes place when hiding the tooltip. + * @returns {void} + */ + hide(effect?: string, func?: () => void): void; + + /** Shows the Tooltip popup for the given target element with the specified effect. + * @param {string} optional Determines the type of effect that takes place when showing the tooltip. + * @param {() => void} optional custom effect takes place when showing the tooltip. + * @param {JQuery} optional Tooltip will be shown for the given element + * @returns {void} + */ + show(effect?: string, func?: () => void, target?: JQuery): void; + } + export namespace Tooltip { + + export interface Model { + + /** Tooltip control can be accessed through the keyboard shortcut keys. + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** Specifies the animation behavior in Tooltip. It contains the following sub properties. + */ + animation?: Animation; + + /** Sets the position related to target element, window, mouse or (x,y) co-ordinates. + * @Default {ej.Tooltip.Associate.Target} + */ + associate?: ej.Tooltip.Associate|string; + + /** Specified the delay to hide Tooltip when closeMode is auto. + * @Default {4000} + */ + autoCloseTimeout?: number; + + /** Specifies the closing behavior of Tooltip popup. + * @Default {ej.Tooltip.CloseMode.None} + */ + closeMode?: ej.Tooltip.CloseMode|string; + + /** Sets the Tooltip in alternate position when collision occurs. + * @Default {ej.Tooltip.Collision.FlipFit} + */ + collision?: ej.Tooltip.Collision|string; + + /** Specified the selector for the container element. + * @Default {body} + */ + containment?: string; + + /** Specifies the text for Tooltip. + * @Default {null} + */ + content?: string; + + /** Sets the root CSS class for Tooltip for the customization. + * @Default {null} + */ + cssClass?: string; + + /** Enables or disables the Tooltip. + * @Default {true} + */ + enabled?: boolean; + + /** Sets the Tooltip direction from right to left. + * @Default {false} + */ + enableRTL?: boolean; + + /** Defines the height of the Tooltip popup. + * @Default {auto} + */ + height?: string|number; + + /** Enables the arrow in Tooltip. + * @Default {true} + */ + isBalloon?: boolean; + + /** defines various attributes of the Tooltip position + */ + position?: Position; + + /** Enables or disables rounded corner. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Enables or disables shadow effect. + * @Default {false} + */ + showShadow?: boolean; + + /** Specified a selector for elements, within the container. + * @Default {null} + */ + target?: string; + + /** defines Tooltip size and gap between tooltip against the target element. + */ + tip?: Tip; + + /** The title text to be displayed in the Tooltip header. + * @Default {null} + */ + title?: string; + + /** Specified the event action to show case the Tooltip. + * @Default {ej.Tooltip.Trigger.Hover} + */ + trigger?: ej.Tooltip.Trigger|string; + + /** Defines the width of the Tooltip popup. + * @Default {auto} + */ + width?: string|number; + + /** This event is triggered before the Tooltip widget get closed. + */ + beforeClose?(e: BeforeCloseEventArgs): void; + + /** This event is triggered before the Tooltip widget gets open. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + + /** Fires on clicking to the target element. + */ + click?(e: ClickEventArgs): void; + + /** This event is triggered after the Tooltip widget is closed. + */ + close?(e: CloseEventArgs): void; + + /** This event is triggered after the Tooltip is created successfully. + */ + create?(e: CreateEventArgs): void; + + /** This event is triggered after the Tooltip widget is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** This event is triggered while hovering the target element, when tooltip positioning relates to target element. + */ + hover?(e: HoverEventArgs): void; + + /** This event is triggered after the Tooltip is opened. + */ + open?(e: OpenEventArgs): void; + + /** This event is triggered while hover the target element, when the tooltip positioning is relates to the mouse. + */ + tracking?(e: TrackingEventArgs): void; + } + + export interface BeforeCloseEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the tooltip model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the Tooltip's content + */ + content?: string; + } + + export interface BeforeOpenEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Tooltip model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the Tooltip's content + */ + content?: string; + } + + export interface ClickEventArgs { + + /** its value is set as true,if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Tooltip model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the event object + */ + event?: any; + } + + export interface CloseEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Tooltip model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the Tooltip's content + */ + content?: string; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Tooltip model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** its value is set as true,if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Tooltip model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface HoverEventArgs { + + /** its value is set as true,if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Tooltip model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the event object + */ + event?: any; + } + + export interface OpenEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Tooltip model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the Tooltip's content + */ + content?: string; + } + + export interface TrackingEventArgs { + + /** its value is set as true,if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Tooltip model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the event object + */ + event?: any; + } + + export interface Animation { + + /** Determines the type of effect. + * @Default {ej.Tooltip.Effect.None} + */ + effect?: ej.Tooltip.effect|string; + + /** Sets the animation speed in milliseconds. + * @Default {4000} + */ + speed?: number; + } + + export interface PositionTarget { + + /** Sets the Tooltip position against target based on horizontal(x) value. + * @Default {center} + */ + horizontal?: string|number; + + /** Sets the Tooltip position against target based on vertical(y) value. + * @Default {top} + */ + vertical?: string|number; + } + + export interface PositionStem { + + /** Sets the arrow position again popup based on horizontal(x) value + * @Default {center} + */ + horizontal?: string; + + /** Sets the arrow position again popup based on vertical(y) value + * @Default {bottom} + */ + vertical?: string; + } + + export interface Position { + + /** Sets the Tooltip position against target. + */ + target?: PositionTarget; + + /** Sets the arrow position again popup. + */ + stem?: PositionStem; + } + + export interface TipSize { + + /** Sets the Tooltip width. + * @Default {20} + */ + width?: number; + + /** Sets the Tooltip height. + * @Default {10} + */ + height?: number; + } + + export interface TipAdjust { + + /** Sets horizontal gap between Tooltip and target element. + * @Default {0} + */ + xValue?: number; + + /** Sets vertical gap between Tooltip and target element. + * @Default {0} + */ + yValue?: number; + } + + export interface Tip { + + /** Sets the Tooltip size. + */ + size?: TipSize; + + /** Sets gap between tooltip against the target element. + */ + adjust?: TipAdjust; + } + + enum effect { + + ///No animation takes place when showing/hiding the Tooltip + None, + + ///Sliding effect takes place when showing/hiding the Tooltip + Slide, + + ///Fade the Tooltip in and out of visibility. + Fade + } + + + enum Associate { + + ///Sets the position related to target element. + Target, + + ///Sets the position related to mouse. + MouseFollow, + + ///Sets the position related to mouse, first entry to the target element. + MouseEnter, + + ///Sets the position related to (x,y) co-ordinates. + Axis, + + ///Sets the position related to browser window. + Window + } + + + enum CloseMode { + + ///Enables close button in Tooltip. + Sticky, + + ///Sets the delay for Tooltip close + Auto, + + ///The Tooltip will be display normally. + None + } + + + enum Collision { + + ///Flips the Tooltip to the opposite side of the target, if collision is occurs. + Flip, + + ///Shift the Tooltip popup away from the edge of the window(collision side) that means adjacent position. + Fit, + + ///Ensure as much of the element is visible as possible to showcase. + FlipFit, + + ///No collision detection is take place + None + } + + + enum Trigger { + + ///The Tooltip to be shown when the target element is clicked. + Click, + + ///Enables the Tooltip when hover on the target element. + Hover, + + ///Enables the Tooltip when focus is set to target element. + Focus + } + + } + + class Editor extends ej.Widget { + static fn: Editor; + constructor(element: JQuery | Element, options?: Editor.Model); + static Locale: any; + model: Editor.Model; + defaults: Editor.Model; + + /** destroy the editor widgets all events are unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** To disable the corresponding Editors + * @returns {void} + */ + disable(): void; + + /** To enable the corresponding Editors + * @returns {void} + */ + enable(): void; + + /** To get value from corresponding Editors + * @returns {number} + */ + getValue(): number; + } + + class NumericTextbox extends Editor { + } + + class CurrencyTextbox extends Editor { + } + + class PercentageTextbox extends Editor { + } + export namespace Editor { + + export interface Model { + + /** Specifies the currency symbol of currency textbox, used when the user wants to overwrite the currency symbol commonly instead of the current culture symbol. + * @Default {Based on the culture} + */ + currencySymbol?: string; + + /** Sets the root CSS class for Editors which allow us to customize the appearance. + */ + cssClass?: string; + + /** Specifies the number of digits that should be allowed after the decimal point. + * @Default {0} + */ + decimalPlaces?: number; + + /** Specifies the editor control state. + * @Default {true} + */ + enabled?: boolean; + + /** Specify the enablePersistence to editor to save current editor control value to browser cookies for state maintenance. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Specifies the Right to Left Direction to editor. + * @Default {false} + */ + enableRTL?: boolean; + + /** When enableStrictMode true it allows the value outside of the range also but it highlights the textbox with error class,otherwise it internally changed to the correct value. + * @Default {false} + */ + enableStrictMode?: boolean; + + /** Specifies the number of digits in each group to the editor. + * @Default {Based on the culture.} + */ + groupSize?: string; + + /** It provides the options to get the customized character to separate the digits. If not set, the separator defined by the current culture. + * @Default {Based on the culture} + */ + groupSeparator?: string; + + /** Specifies the height of the editor. + * @Default {30} + */ + height?: string; + + /** It allows to define the characteristics of the Editors control. It will helps to extend the capability of an HTML element. + * @Default {{}} + */ + htmlAttributes?: any; + + /** The Editor value increment or decrement based an incrementStep value. + * @Default {1} + */ + incrementStep?: number; + + /** Defines the localization culture for editor. + * @Default {en-US} + */ + locale?: string; + + /** Specifies the maximum value of the editor. + * @Default {Number.MAX_VALUE} + */ + maxValue?: number; + + /** Specifies the minimum value of the editor. + * @Default {-(Number.MAX_VALUE) and 0 for Currency Textbox.} + */ + minValue?: number; + + /** Specifies the name of the editor. + * @Default {Sets id as name if it is null.} + */ + name?: string; + + /** Specifies the pattern for formatting positive values in editor.We have maintained some standard to define the negative pattern. you have to specify 'n' to place the digit in your + * pattern.ejTextbox allows you to define a currency or percent symbol where you want to place it. + * @Default {Based on the culture} + */ + negativePattern?: string; + + /** Specifies the pattern for formatting positive values in editor.We have maintained some standard to define the positive pattern. you have to specify 'n' to place the digit in your + * pattern.ejTextbox allows you to define a currency or percent symbol where you want to place it. + * @Default {Based on the culture} + */ + positivePattern?: string; + + /** Toggles the readonly state of the editor. When the Editor is readonly it doesn't allow user interactions. + * @Default {false} + */ + readOnly?: boolean; + + /** Specifies to Change the sharped edges into rounded corner for the Editor. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specifies whether the up and down spin buttons should be displayed in editor. + * @Default {true} + */ + showSpinButton?: boolean; + + /** Enables decimal separator position validation on type . + * @Default {false} + */ + validateOnType?: boolean; + + /** Set the jQuery validation error message in editor. + * @Default {null} + */ + validationMessage?: any; + + /** Set the jQuery validation rules to the editor. + * @Default {null} + */ + validationRules?: any; + + /** Specifies the value of the editor. + * @Default {null} + */ + value?: number|string; + + /** Specifies the watermark text to editor. + * @Default {Based on the culture.} + */ + watermarkText?: string; + + /** Specifies the width of the editor. + * @Default {143} + */ + width?: string; + + /** Fires after Editor control value is changed. + */ + change?(e: ChangeEventArgs): void; + + /** Fires after Editor control is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the Editor is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires after Editor control is focused. + */ + focusIn?(e: FocusInEventArgs): void; + + /** Fires after Editor control is loss the focus. + */ + focusOut?(e: FocusOutEventArgs): void; + } + + export interface ChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the corresponding editor model. + */ + model?: ej.Editor.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the corresponding editor control value. + */ + value?: number; + + /** returns true when the value changed by user interaction otherwise returns false + */ + isInteraction?: boolean; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the editor model + */ + model?: ej.Editor.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the editor model + */ + model?: ej.Editor.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface FocusInEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the corresponding editor model. + */ + model?: ej.Editor.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the corresponding editor control value. + */ + value?: number; + } + + export interface FocusOutEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the corresponding editor model. + */ + model?: ej.Editor.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the corresponding editor control value. + */ + value?: number; + } + } + + class ListView extends ej.Widget { + static fn: ListView; + constructor(element: JQuery | Element, options?: ListView.Model); + static Locale: any; + model: ListView.Model; + defaults: ListView.Model; + + /** To add item in the given index. If you have enabled grouping in ListView then you need to pass the corresponding group list title to add item in it. + * @param {any} Specifies the item to be added in ListView + * @param {number} Specifies the index where item to be added + * @param {string} optionalThis is an optional parameter. You must pass the group list title here if grouping is enabled in the ListView + * @returns {void} + */ + addItem(item: any, index: number, groupid: string): void; + + /** To check all the items. + * @returns {void} + */ + checkAllItem(): void; + + /** To check item in the given index. + * @param {number} Specifies the index of the item to be checked + * @returns {void} + */ + checkItem(index: number): void; + + /** To clear all the list item in the control before updating with new datasource. + * @returns {void} + */ + clear(): void; + + /** To make the item in the given index to be default state. + * @param {number} Specifies the index to make the item to be in default state. + * @returns {void} + */ + deActive(index: number): void; + + /** To disable item in the given index. + * @param {number} Specifies the index value to be disabled. + * @returns {void} + */ + disableItem(index: number): void; + + /** To enable item in the given index. + * @param {number} Specifies the index value to be enabled. + * @returns {void} + */ + enableItem(index: number): void; + + /** To get the active item. + * @returns {HTMLElement} + */ + getActiveItem(): HTMLElement; + + /** To get the text of the active item. + * @returns {string} + */ + getActiveItemText(): string; + + /** To get all the checked items. + * @returns {any[]} + */ + getCheckedItems(): any[]; + + /** To get the text of all the checked items. + * @returns {any[]} + */ + getCheckedItemsText(): any[]; + + /** To get the total item count. + * @returns {number} + */ + getItemsCount(): number; + + /** To get the text of the item in the given index. + * @param {string|number} Specifies the index value to get the text value. + * @returns {string} + */ + getItemText(index: string|number): string; + + /** To check whether the item in the given index has child item. + * @param {number} Specifies the index value to check the item has child or not. + * @returns {boolean} + */ + hasChild(index: number): boolean; + + /** To hide the list. + * @returns {void} + */ + hide(): void; + + /** To hide item in the given index. + * @param {number} Specifies the index value to hide the item. + * @returns {void} + */ + hideItem(index: number): void; + + /** To check whether item in the given index is checked. + * @returns {boolean} + */ + isChecked(): boolean; + + /** To load the AJAX content while selecting the item. + * @param {string} Specifies the item to load the AJAX content. + * @returns {void} + */ + loadAjaxContent(item: string): void; + + /** To remove the check mark either for specific item in the given index or for all items. + * @param {number} Specifies the index value to remove the checkbox. + * @returns {void} + */ + removeCheckMark(index: number): void; + + /** To remove item in the given index. + * @param {number} Specifies the index value to remove the item. + * @returns {void} + */ + removeItem(index: number): void; + + /** To select item in the given index. + * @param {number} Specifies the index value to select the item. + * @returns {void} + */ + selectItem(index: number): void; + + /** To make the item in the given index to be active state. + * @param {number} Specifies the index value to make the item in active state. + * @returns {void} + */ + setActive(index: number): void; + + /** To show the list. + * @returns {void} + */ + show(): void; + + /** To show item in the given index. + * @param {number} Specifies the index value to show the hided item. + * @returns {void} + */ + showItem(index: number): void; + + /** To uncheck all the items. + * @returns {void} + */ + unCheckAllItem(): void; + + /** To uncheck item in the given index. + * @param {number} Specifies the index value to uncheck the item. + * @returns {void} + */ + unCheckItem(index: number): void; + } + export namespace ListView { + + export interface Model { + + /** Specifies the ajaxSettings option to load the items to the ListView control. + * @Default {null} + */ + ajaxSettings?: AjaxSettings; + + /** Set the index values to be selected on initial loading. This works only when enableCheckMark is set true. + * @Default {[]} + */ + checkedIndices?: any[]; + + /** Sets the root class for ListView theme. This cssClass API helps to use custom skinning option for ListView control. By defining the root class using this API, we need to include + * this root class in CSS. + */ + cssClass?: string; + + /** Contains the list of data for generating the ListView items. + * @Default {[]} + */ + dataSource?: any[]; + + /** Specifies whether to load AJAX content while selecting item. + * @Default {false} + */ + enableAjax?: boolean; + + /** Specifies whether to enable caching the content. + * @Default {false} + */ + enableCache?: boolean; + + /** Specifies whether to enable check mark for the item. + * @Default {false} + */ + enableCheckMark?: boolean; + + /** Specifies whether to enable the filtering feature to filter the item. + * @Default {false} + */ + enableFiltering?: boolean; + + /** Specifies whether to group the list item. + * @Default {false} + */ + enableGroupList?: boolean; + + /** Specifies to maintain the current model value to browser cookies for state maintenance. While refresh the page, the model value will get apply to the control from browser cookies. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Specifies the field settings to map the datasource. + */ + fieldSettings?: any; + + /** Contains the array of items to be added in ListView. + * @Default {[]} + */ + items?: any[]; + + /** Specifies the text of the back button in the header. + * @Default {null} + */ + headerBackButtonText?: string; + + /** Specifies the title of the header. + * @Default {Title} + */ + headerTitle?: string; + + /** Specifies the height. + * @Default {null} + */ + height?: string|number; + + /** Set the localization culture for ListView Widget. + */ + locale?: string; + + /** Specifies whether to retain the selection of the item. + * @Default {false} + */ + persistSelection?: boolean; + + /** Specifies whether to prevent the selection of the item. + * @Default {false} + */ + preventSelection?: boolean; + + /** Specifies the query to execute with the datasource. + * @Default {null} + */ + query?: any; + + /** Specifies whether need to render the control with the template contents. + * @Default {false} + */ + renderTemplate?: boolean; + + /** Specifies the index of item which need to be in selected state initially while loading. + * @Default {0} + */ + selectedItemIndex?: number; + + /** Specifies whether to show the header. + * @Default {true} + */ + showHeader?: boolean; + + /** Specifies whether to show the back button header. + * @Default {false} + */ + showHeaderBackButton?: boolean; + + /** Specifies ID of the element contains template contents. + * @Default {null} + */ + templateId?: string; + + /** Specifies the width. + * @Default {null} + */ + width?: string|number; + + /** Specifies the number of items to be fetched on each scroll. Note: This property works only with Virtual scrolling. + * @Default {5} + */ + itemRequestCount?: number; + + /** Specifies the maximum number of items to be fetched. Note: This will work only with Virtual scrolling + * @Default {null} + */ + totalItemsCount?: number; + + /** Loads the list data on demand via scrolling behavior to improve the application’s performance. There are two ways to load data which can be defined using virtualScrollMode + * property. + * @Default {false} + */ + allowVirtualScrolling?: boolean; + + /** Specifies the virtual scroll mode to load the list data on demand via scrolling behavior. There are two types of mode. + * @Default {ej.VirtualScrollMode.Normal} + */ + virtualScrollMode?: ej.VirtualScrollMode|string; + + /** Event triggers before the AJAX request happens. + */ + ajaxBeforeLoad?(e: AjaxBeforeLoadEventArgs): void; + + /** Event triggers after the AJAX content loaded completely. + */ + ajaxComplete?(e: AjaxCompleteEventArgs): void; + + /** Event triggers when the AJAX request failed. + */ + ajaxError?(e: AjaxErrorEventArgs): void; + + /** Event triggers after the AJAX content loaded successfully. + */ + ajaxSuccess?(e: AjaxSuccessEventArgs): void; + + /** Event triggers before the items loaded. + */ + load?(e: LoadEventArgs): void; + + /** Event triggers after the items loaded. + */ + loadComplete?(e: LoadCompleteEventArgs): void; + + /** Event triggers when mouse down happens on the item. + */ + mouseDown?(e: MouseDownEventArgs): void; + + /** Event triggers when mouse up happens on the item. + */ + mouseUp?(e: MouseUpEventArgs): void; + } + + export interface AjaxBeforeLoadEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.ListView.Model; + + /** returns the AJAX settings. + */ + ajaxData?: any; + } + + export interface AjaxCompleteEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.ListView.Model; + } + + export interface AjaxErrorEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.ListView.Model; + + /** returns the error thrown in the AJAX post. + */ + errorThrown?: any; + + /** returns the status. + */ + textStatus?: any; + + /** returns the current list item. + */ + item?: any; + + /** returns the current item text. + */ + text?: string; + + /** returns the current item index. + */ + index?: number; + } + + export interface AjaxSuccessEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.ListView.Model; + + /** returns the AJAX current content. + */ + content?: string; + + /** returns the current list item. + */ + item?: any; + + /** returns the current item text. + */ + text?: string; + + /** returns the current item index. + */ + index?: number; + + /** returns the current URL of the AJAX post. + */ + URL?: string; + } + + export interface LoadEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.ListView.Model; + } + + export interface LoadCompleteEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.ListView.Model; + } + + export interface MouseDownEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.ListView.Model; + + /** If the child element exist return true; otherwise, false. + */ + hasChild?: boolean; + + /** returns the current list item. + */ + item?: string; + + /** returns the current text of item. + */ + text?: string; + + /** returns the current Index of the item. + */ + index?: number; + + /** If checked return true; otherwise, false. + */ + isChecked?: boolean; + + /** returns the list of checked items. + */ + checkedItems?: number; + + /** returns the current checked item text. + */ + checkedItemsText?: string; + } + + export interface MouseUpEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.ListView.Model; + + /** If the child element exist return true; otherwise, false. + */ + hasChild?: boolean; + + /** returns the current list item. + */ + item?: string; + + /** returns the current text of item. + */ + text?: string; + + /** returns the current Index of the item. + */ + index?: number; + + /** If checked return true; otherwise, false. + */ + isChecked?: boolean; + + /** returns the list of checked items. + */ + checkedItems?: number; + + /** returns the current checked item text. + */ + checkedItemsText?: string; + } + + export interface AjaxSettings { + + /** It specifies, whether to enable or disable asynchronous request. + */ + async?: boolean; + + /** It specifies the page will be cached in the web browser. + */ + cache?: boolean; + + /** It specifies the type of data is send in the query string. + */ + contentType?: string; + + /** It specifies the data as an object, will be passed in the query string. + */ + data?: any; + + /** It specifies the type of data that you're expecting back from the response. + */ + dataType?: string; + + /** It specifies the HTTP request type. + */ + type?: string; + } + } + + class MaskEdit extends ej.Widget { + static fn: MaskEdit; + constructor(element: JQuery | Element, options?: MaskEdit.Model); + static Locale: any; + model: MaskEdit.Model; + defaults: MaskEdit.Model; + + /** To clear the text in mask edit textbox control. + * @returns {void} + */ + clear(): void; + + /** To disable the mask edit textbox control. + * @returns {void} + */ + disable(): void; + + /** To enable the mask edit textbox control. + * @returns {void} + */ + enable(): void; + + /** To obtained the pure value of the text value, removes all the symbols in mask edit textbox control. + * @returns {string} + */ + get_StrippedValue(): string; + + /** To obtained the textbox value as such that, Just replace all '_' to ' '(space) in mask edit textbox control. + * @returns {string} + */ + get_UnstrippedValue(): string; + } + export namespace MaskEdit { + + export interface Model { + + /** Specify the cssClass to achieve custom theme. + * @Default {null} + */ + cssClass?: string; + + /** Specify the custom character allowed to entered in mask edit textbox control. + * @Default {null} + */ + customCharacter?: string; + + /** Specify the state of the mask edit textbox control. + * @Default {true} + */ + enabled?: boolean; + + /** Specify the enablePersistence to mask edit textbox to save current model value to browser cookies for state maintains. + */ + enablePersistence?: boolean; + + /** Specifies the height for the mask edit textbox control. + * @Default {28 px} + */ + height?: string; + + /** Specifies whether hide the prompt characters with spaces on blur. Prompt chars will be shown again on focus the textbox. + * @Default {false} + */ + hidePromptOnLeave?: boolean; + + /** Specifies the list of HTML attributes to be added to mask edit textbox. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specify the inputMode for mask edit textbox control. See InputMode + * @Default {ej.InputMode.Text} + */ + inputMode?: ej.InputMode|string; + + /** Specifies the input mask. + * @Default {null} + */ + maskFormat?: string; + + /** Specifies the name attribute value for the mask edit textbox. + * @Default {null} + */ + name?: string; + + /** Toggles the readonly state of the mask edit textbox. When the mask edit textbox is readonly, it doesn't allow your input. + * @Default {false} + */ + readOnly?: boolean; + + /** Specifies whether the error will show until correct value entered in the mask edit textbox control. + * @Default {false} + */ + showError?: boolean; + + /** when showPromptChar is true, the hide the prompt characters are shown in focus of the control and hides in focus out of the control. + * @Default {true} + */ + showPromptChar?: boolean; + + /** MaskEdit input is displayed in rounded corner style when this property is set to true. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specify the text alignment for mask edit textbox control.See TextAlign + * @Default {left} + */ + textAlign?: ej.TextAlign|string; + + /** Sets the jQuery validation error message in mask edit. This property works when the widget is present inside the form. Include jquery.validate.min.js plugin additionally. + * @Default {null} + */ + validationMessage?: any; + + /** Sets the jQuery validation rules to the MaskEdit. This property works when the widget is present inside the form. Include jquery.validate.min.js plugin additionally. + * @Default {null} + */ + validationRules?: any; + + /** Specifies the value for the mask edit textbox control. + * @Default {null} + */ + value?: string; + + /** Specifies the water mark text to be displayed in input text. + * @Default {null} + */ + watermarkText?: string; + + /** Specifies the width for the mask edit textbox control. + * @Default {143pixel} + */ + width?: string; + + /** Fires when value changed in mask edit textbox control. + */ + change?(e: ChangeEventArgs): void; + + /** Fires after MaskEdit control is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the MaskEdit is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when focused in mask edit textbox control. + */ + focusIn?(e: FocusInEventArgs): void; + + /** Fires when focused out in mask edit textbox control. + */ + focusOut?(e: FocusOutEventArgs): void; + + /** Fires when keydown in mask edit textbox control. + */ + keydown?(e: KeydownEventArgs): void; + + /** Fires when key press in mask edit textbox control. + */ + keyPress?(e: KeyPressEventArgs): void; + + /** Fires when keyup in mask edit textbox control. + */ + keyup?(e: KeyupEventArgs): void; + + /** Fires when mouse out in mask edit textbox control. + */ + mouseOut?(e: MouseOutEventArgs): void; + + /** Fires when mouse over in mask edit textbox control. + */ + mouseOver?(e: MouseOverEventArgs): void; + } + + export interface ChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the mask edit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mask edit value + */ + value?: number; + + /** returns unstripped value in mask edit textbox control. + */ + unmaskedValue?: string; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the MaskEdit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the MaskEdit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface FocusInEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the mask edit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mask edit value + */ + value?: number; + + /** returns unstripped value in mask edit textbox control. + */ + unmaskedValue?: string; + } + + export interface FocusOutEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the mask edit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mask edit value + */ + value?: number; + + /** returns unstripped value in mask edit textbox control. + */ + unmaskedValue?: string; + } + + export interface KeydownEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the mask edit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mask edit value + */ + value?: number; + + /** returns unstripped value in mask edit textbox control. + */ + unmaskedValue?: string; + } + + export interface KeyPressEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the mask edit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mask edit value + */ + value?: number; + + /** returns unstripped value in mask edit textbox control. + */ + unmaskedValue?: string; + } + + export interface KeyupEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the mask edit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mask edit value + */ + value?: number; + + /** returns unstripped value in mask edit textbox control. + */ + unmaskedValue?: string; + } + + export interface MouseOutEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the mask edit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mask edit value + */ + value?: number; + + /** returns unstripped value in mask edit textbox control. + */ + unmaskedValue?: string; + } + + export interface MouseOverEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the mask edit model + */ + model?: ej.MaskEdit.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mask edit value + */ + value?: number; + + /** returns unstripped value in mask edit textbox control. + */ + unmaskedValue?: string; + } + } + enum InputMode { + //string + Password, + //string + Text, + } + enum TextAlign { + //string + Center, + //string + Justify, + //string + Left, + //string + Right, + } + + class Menu extends ej.Widget { + static fn: Menu; + constructor(element: JQuery | Element, options?: Menu.Model); + static Locale: any; + model: Menu.Model; + defaults: Menu.Model; + + /** Disables the Menu control. + * @returns {void} + */ + disable(): void; + + /** Specifies the Menu Item to be disabled by using the Menu Item Text. + * @param {string} Specifies the Menu Item Text to be disabled. + * @returns {void} + */ + disableItem(itemtext: string): void; + + /** Specifies the Menu Item to be disabled by using the Menu Item Id. + * @param {string|number} Specifies the Menu Item id to be disabled + * @returns {void} + */ + disableItemByID(itemid: string|number): void; + + /** Enables the Menu control. + * @returns {void} + */ + enable(): void; + + /** Specifies the Menu Item to be enabled by using the Menu Item Text. + * @param {string} Specifies the Menu Item Text to be enabled. + * @returns {void} + */ + enableItem(itemtext: string): void; + + /** Specifies the Menu Item to be enabled by using the Menu Item Id. + * @param {string|number} Specifies the Menu Item id to be enabled. + * @returns {void} + */ + enableItemByID(itemid: string|number): void; + + /** Hides the Context Menu control. + * @returns {void} + */ + hide(): void; + + /** Hides the specific items in Menu control. + * @returns {void} + */ + hideItems(): void; + + /** Insert the menu item as child of target node. + * @param {any} Information about Menu item. + * @param {string|any} Selector of target node or Object of target node. + * @returns {void} + */ + insert(item: any, target: string|any): void; + + /** Insert the menu item after the target node. + * @param {any} Information about Menu item. + * @param {string|any} Selector of target node or Object of target node. + * @returns {void} + */ + insertAfter(item: any, target: string|any): void; + + /** Insert the menu item before the target node. + * @param {any} Information about Menu item. + * @param {string|any} Selector of target node or Object of target node. + * @returns {void} + */ + insertBefore(item: any, target: string|any): void; + + /** Remove Menu item. + * @param {any|any[]} Selector of target node or Object of target node. + * @returns {void} + */ + remove(target: any|any[]): void; + + /** To show the Menu control. + * @param {number} x co-ordinate position of context menu. + * @param {number} y co-ordinate position of context menu. + * @param {any} target element + * @param {any} name of the event + * @returns {void} + */ + show(locationX: number, locationY: number, targetElement: any, event: any): void; + + /** Show the specific items in Menu control. + * @returns {void} + */ + showItems(): void; + } + export namespace Menu { + + export interface Model { + + /** To enable or disable the Animation while hover or click an menu items.See AnimationType + * @Default {ej.AnimationType.Default} + */ + animationType?: ej.AnimationType|string; + + /** Specifies the target id of context menu. On right clicking the specified contextTarget element, context menu gets shown. + * @Default {null} + */ + contextMenuTarget?: string; + + /** Specifies the container element selectors for submenu’s collision. The submenu gets displayed based on spacing available with respect to container element. + * @Default {null} + */ + container?: string; + + /** Specify the CSS class to achieve custom theme. + */ + cssClass?: string; + + /** To enable or disable the Animation effect while hover or click an menu items. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Specifies the root menu items to be aligned center in horizontal menu. + * @Default {false} + */ + enableCenterAlign?: boolean; + + /** Enable / Disable the Menu control. + * @Default {true} + */ + enabled?: boolean; + + /** Specifies the menu items to be displayed in right to left direction. + * @Default {false} + */ + enableRTL?: boolean; + + /** When this property sets to false, the menu items is displayed without any separators. + * @Default {true} + */ + enableSeparator?: boolean; + + /** Specifies the target which needs to be excluded. i.e., The context menu will not be displayed in those specified targets. + * @Default {null} + */ + excludeTarget?: string; + + /** Fields used to bind the data source and it includes following field members to make data bind easier. + * @Default {null} + */ + fields?: Fields; + + /** Specifies the height of the root menu. + * @Default {auto} + */ + height?: string|number; + + /** Specifies the list of HTML attributes to be added to menu control. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Enables/disables responsive support for the Menu control during the window resizing time. + * @Default {true} + */ + isResponsive?: boolean; + + /** Specifies the type of the menu. Essential JavaScript Menu consists of two type of menu, they are Normal Menu and Context Menu mode.See MenuType + * @Default {ej.MenuType.NormalMenu} + */ + menuType?: string|ej.MenuType; + + /** Specifies the sub menu items to be show or open only on click. + * @Default {false} + */ + openOnClick?: boolean; + + /** Specifies the orientation of normal menu. Normal menu can rendered in horizontal or vertical direction by using this API. See Orientation + * @Default {ej.Orientation.Horizontal} + */ + orientation?: ej.Orientation|string; + + /** Specifies the main menu items arrows only to be shown if it contains child items. + * @Default {true} + */ + showRootLevelArrows?: boolean; + + /** Specifies the sub menu items arrows only to be shown if it contains child items. + * @Default {true} + */ + showSubLevelArrows?: boolean; + + /** Specifies position of pull down submenu that will appear on mouse over.See Direction + * @Default {ej.Direction.Right} + */ + subMenuDirection?: string|ej.Direction; + + /** Specifies the title to responsive menu. + * @Default {Menu} + */ + titleText?: string; + + /** Specifies the width of the main menu. + * @Default {auto} + */ + width?: string|number; + + /** Specifies the popup menu height. + * @Default {auto} + */ + overflowHeight?: string|number; + + /** Specifies the popup menu width. + * @Default {auto} + */ + overflowWidth?: string|number; + + /** Fires before context menu gets open. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + + /** Fires when mouse click on menu items. + */ + click?(e: ClickEventArgs): void; + + /** Fire when context menu on close. + */ + close?(e: CloseEventArgs): void; + + /** Fires when context menu on open. + */ + open?(e: OpenEventArgs): void; + + /** Fires to create menu items. + */ + create?(e: CreateEventArgs): void; + + /** Fires to destroy menu items. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when key down on menu items. + */ + keydown?(e: KeydownEventArgs): void; + + /** Fires when mouse out from menu items. + */ + mouseout?(e: MouseoutEventArgs): void; + + /** Fires when mouse over the Menu items. + */ + mouseover?(e: MouseoverEventArgs): void; + + /** Fires when overflow popup menu opens. + */ + overflowOpen?(e: OverflowOpenEventArgs): void; + + /** Fires when overflow popup menu closes. + */ + overflowClose?(e: OverflowCloseEventArgs): void; + } + + export interface BeforeOpenEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the target element + */ + target?: any; + } + + export interface ClickEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns clicked menu item text + */ + text?: string; + + /** returns clicked menu item element + */ + element?: any; + + /** returns the event + */ + event?: any; + + /** returns the selected item + */ + selectedItem?: number; + } + + export interface CloseEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the target element + */ + target?: any; + } + + export interface OpenEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the target element + */ + target?: any; + } + + export interface CreateEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface KeydownEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns clicked menu item text + */ + menuText?: string; + + /** returns clicked menu item element + */ + element?: any; + + /** returns the event + */ + event?: any; + } + + export interface MouseoutEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns clicked menu item text + */ + text?: string; + + /** returns clicked menu item element + */ + element?: any; + + /** returns the event + */ + event?: any; + } + + export interface MouseoverEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns clicked menu item text + */ + text?: string; + + /** returns clicked menu item element + */ + element?: any; + + /** returns the event + */ + event?: any; + } + + export interface OverflowOpenEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the event object + */ + e?: any; + + /** if the event should be cancelled ; otherwise ,false + */ + cancel?: boolean; + } + + export interface OverflowCloseEventArgs { + + /** returns the menu model + */ + model?: ej.Menu.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the event object + */ + e?: any; + + /** if the event should be cancelled ; otherwise ,false + */ + cancel?: boolean; + } + + export interface Fields { + + /** It receives the child data for the inner level. + */ + child?: any; + + /** It receives datasource as Essential DataManager object and JSON object. + */ + dataSource?: any; + + /** Specifies the HTML attributes to “LI” item list. + */ + htmlAttribute?: string; + + /** Specifies the id to menu items list + */ + id?: string; + + /** Specifies the image attribute to “img” tag inside items list. + */ + imageAttribute?: string; + + /** Specifies the image URL to “img” tag inside item list. + */ + imageUrl?: string; + + /** Adds custom attributes like "target" to the anchor tag of the menu items. + */ + linkAttribute?: string; + + /** Specifies the parent id of the table. + */ + parentId?: string; + + /** It receives query to retrieve data from the table (query is same as SQL). + */ + query?: any; + + /** Specifies the sprite CSS class to “LI” item list. + */ + spriteCssClass?: string; + + /** It receives table name to execute query on the corresponding table. + */ + tableName?: string; + + /** Specifies the text of menu items list. + */ + text?: string; + + /** Specifies the URL to the anchor tag in menu item list. + */ + url?: string; + } + } + enum AnimationType { + //string + Default, + //string + None, + } + enum MenuType { + //string + ContextMenu, + //string + NormalMenu, + } + enum Direction { + //string + Left, + //string + None, + //string + Right, + } + + class Pager extends ej.Widget { + static fn: Pager; + constructor(element: JQuery | Element, options?: Pager.Model); + static Locale: any; + model: Pager.Model; + defaults: Pager.Model; + + /** Send a paging request to specified page through the pager control. + * @param {number} Specifies the index to be navigated + * @returns {void} + */ + gotoPage(pageIndex: number): void; + + /** refreshPager() helps to refresh the model value of pager control. + * @returns {void} + */ + refreshPager(): void; + } + export namespace Pager { + + export interface Model { + + /** Gets or sets a value that indicates whether to display the custom text message in Pager. + */ + customText?: string; + + /** Gets or sets a value that indicates whether to define which page to display currently in pager. + * @Default {1} + */ + currentPage?: number; + + /** Gets or sets a value that indicates whether to display the external Message in Pager. + * @Default {false} + */ + enableExternalMessage?: boolean; + + /** Gets or sets a value that indicates whether to pass the current page information as a query string along with the URL while navigating to other page. + * @Default {false} + */ + enableQueryString?: boolean; + + /** Align content in the pager control from right to left by setting the property as true. + * @Default {false} + */ + enableRTL?: boolean; + + /** Gets or sets a value that indicates whether to display the external Message in Pager. + */ + externalMessage?: string; + + /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data i.e. in a language and culture specific to + * a particular country or region. + * @Default {en-US} + */ + locale?: string; + + /** Gets or sets a value that indicates whether to define the number of pages displayed in the pager for navigation. + * @Default {10} + */ + pageCount?: number; + + /** Gets or sets a value that indicates whether to define the number of records displayed per page. + * @Default {12} + */ + pageSize?: number; + + /** Get or sets a value of total number of pages in the pager. The totalPages value is calculated based on page size and total records. + * @Default {null} + */ + totalPages?: number; + + /** Get the value of total number of records which is bound to a data item. + * @Default {null} + */ + totalRecordsCount?: number; + + /** Shows or hides the current page information in pager footer. + * @Default {true} + */ + showPageInfo?: boolean; + + /** Triggered when pager numeric item is clicked in pager control. + */ + click?(e: ClickEventArgs): void; + } + + export interface ClickEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the current page index. + */ + currentPage?: number; + + /** Returns the pager model. + */ + model?: any; + + /** Returns the name of event + */ + type?: string; + + /** Returns current action event type and its target. + */ + event?: any; + } + } + + class Print extends ej.Widget { + static fn: Print; + constructor(element: JQuery | Element, options?: Print.Model); + static Locale: any; + model: Print.Model; + defaults: Print.Model; + + /** Print the specific page or an element. + * @returns {void} + */ + print(): void; + } + export namespace Print { + + export interface Model { + + /** Append the custom HTML after the selected content. + * @Default {null} + */ + append?: string; + + /** A selector that specifies a particular element to be excluded from printing. + * @Default {null} + */ + excludeSelector?: string; + + /** Specifies whether the URL of an external stylesheet can be included to customize and print that page. + * @Default {null} + */ + externalStyles?: string; + + /** Prepend a doctype to the document frame. + * @Default {<!doctype html>} + */ + docType?: string; + + /** Specifies whether the global styles can be applied to the element to be printed. + * @Default {true} + */ + globalStyles?: boolean; + + /** Sets the height of the print window. + * @Default {454} + */ + height?: number; + + /** Prepends the custom HTML before the selected content. + * @Default {null} + */ + prepend?: string; + + /** Allows printing the content in a new window. + * @Default {false} + */ + printInNewWindow?: boolean; + + /** Sets the period of time to wait before printing the content. + * @Default {1000} + */ + timeOutPeriod?: number; + + /** Sets the title of the print document. + * @Default {null} + */ + title?: string; + + /** Defines the width of the print window. + * @Default {1024} + */ + width?: number; + + /** Event triggers before the document page or an element in it gets printed. + */ + beforeStart?(e: BeforeStartEventArgs): void; + } + + export interface BeforeStartEventArgs { + + /** Set this option as true to cancel the event. + */ + cancel?: boolean; + + /** Returns the Print model + */ + model?: ej.Print.Model; + + /** Returns the name of an event + */ + type?: string; + + /** Returns the printed element + */ + content?: any; + } + } + + class ProgressBar extends ej.Widget { + static fn: ProgressBar; + constructor(element: JQuery | Element, options?: ProgressBar.Model); + static Locale: any; + model: ProgressBar.Model; + defaults: ProgressBar.Model; + + /** Destroy the progressbar widget + * @returns {void} + */ + destroy(): void; + + /** Disables the progressbar control + * @returns {void} + */ + disable(): void; + + /** Enables the progressbar control + * @returns {void} + */ + enable(): void; + + /** Returns the current progress value in percent. + * @returns {number} + */ + getPercentage(): number; + + /** Returns the current progress value + * @returns {number} + */ + getValue(): number; + } + export namespace ProgressBar { + + export interface Model { + + /** Sets the root CSS class for ProgressBar theme, which is used customize. + * @Default {null} + */ + cssClass?: string; + + /** When this property sets to false, it disables the ProgressBar control + * @Default {true} + */ + enabled?: boolean; + + /** Save current model value to browser cookies for state maintains. While refresh the progressBar control page retains the model value apply from browser cookies + * @Default {false} + */ + enablePersistence?: boolean; + + /** Sets the ProgressBar direction as right to left alignment. + * @Default {false} + */ + enableRTL?: boolean; + + /** Defines the height of the ProgressBar. + * @Default {null} + */ + height?: number|string; + + /** It allows to define the characteristics of the progressBar control. It will helps to extend the capability of an HTML element. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Sets the maximum value of the ProgressBar. + * @Default {100} + */ + maxValue?: number; + + /** Sets the minimum value of the ProgressBar. + * @Default {0} + */ + minValue?: number; + + /** Sets the ProgressBar value in percentage. The value should be in between 0 to 100. + * @Default {0} + */ + percentage?: number; + + /** Displays rounded corner borders on the progressBar control. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Sets the custom text for the ProgressBar. The text placed in the middle of the ProgressBar and it can be customizable using the class 'e-progress-text'. + * @Default {null} + */ + text?: string; + + /** Sets the ProgressBar value. The value should be in between min and max values. + * @Default {0} + */ + value?: number; + + /** Defines the width of the ProgressBar. + * @Default {null} + */ + width?: number|string; + + /** Event triggers when the progress value changed + */ + change?(e: ChangeEventArgs): void; + + /** Event triggers when the process completes (at 100%) + */ + complete?(e: CompleteEventArgs): void; + + /** Event triggers when the progressbar are created + */ + create?(e: CreateEventArgs): void; + + /** Event triggers when the progressbar are destroyed + */ + destroy?(e: DestroyEventArgs): void; + + /** Event triggers when the process starts (from 0%) + */ + start?(e: StartEventArgs): void; + } + + export interface ChangeEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the ProgressBar model + */ + model?: ej.ProgressBar.Model; + + /** returns the current progress percentage + */ + percentage?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the current progress value + */ + value?: string; + } + + export interface CompleteEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the ProgressBar model + */ + model?: ej.ProgressBar.Model; + + /** returns the current progress percentage + */ + percentage?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the current progress value + */ + value?: string; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the progressbar model + */ + model?: ej.ProgressBar.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the progressbar model + */ + model?: ej.ProgressBar.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface StartEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the ProgressBar model + */ + model?: ej.ProgressBar.Model; + + /** returns the current progress percentage + */ + percentage?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the current progress value + */ + value?: string; + } + } + + class RadioButton extends ej.Widget { + static fn: RadioButton; + constructor(element: JQuery | Element, options?: RadioButton.Model); + static Locale: any; + model: RadioButton.Model; + defaults: RadioButton.Model; + + /** To disable the RadioButton + * @returns {void} + */ + disable(): void; + + /** To enable the RadioButton + * @returns {void} + */ + enable(): void; + } + export namespace RadioButton { + + export interface Model { + + /** Specifies the check attribute of the Radio Button. + * @Default {false} + */ + checked?: boolean; + + /** Specify the CSS class to RadioButton to achieve custom theme. + */ + cssClass?: string; + + /** Specifies the RadioButton control state. + * @Default {true} + */ + enabled?: boolean; + + /** Specifies the enablePersistence property for RadioButton while initialization. The enablePersistence API save current model value to browser cookies for state maintains. While + * refreshing the radio button control page the model value apply from browser cookies. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Specify the Right to Left direction to RadioButton + * @Default {false} + */ + enableRTL?: boolean; + + /** Specifies the HTML Attributes of the Checkbox + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specifies the id attribute for the Radio Button while initialization. + * @Default {null} + */ + id?: string; + + /** Specify the idPrefix value to be added before the current id of the RadioButton. + * @Default {ej} + */ + idPrefix?: string; + + /** Specifies the name attribute for the Radio Button while initialization. + * @Default {Sets id as name if it is null} + */ + name?: string; + + /** Specifies the size of the RadioButton. + * @Default {small} + */ + size?: ej.RadioButtonSize|string; + + /** Specifies the text content for RadioButton. + */ + text?: string; + + /** Set the jQuery validation error message in radio button. + * @Default {null} + */ + validationMessage?: any; + + /** Set the jQuery validation rules in radio button. + * @Default {null} + */ + validationRules?: any; + + /** Specifies the value attribute of the Radio Button. + * @Default {null} + */ + value?: string; + + /** Fires before the RadioButton is going to changed its state successfully + */ + beforeChange?(e: BeforeChangeEventArgs): void; + + /** Fires when the RadioButton state is changed successfully + */ + change?(e: ChangeEventArgs): void; + + /** Fires when the RadioButton created successfully + */ + create?(e: CreateEventArgs): void; + + /** Fires when the RadioButton destroyed successfully + */ + destroy?(e: DestroyEventArgs): void; + } + + export interface BeforeChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the RadioButton model + */ + model?: ej.RadioButton.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns true if element is checked, otherwise returns false + */ + isChecked?: boolean; + + /** returns true if change event triggered by interaction, otherwise returns false + */ + isInteraction?: boolean; + } + + export interface ChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the RadioButton model + */ + model?: ej.RadioButton.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns true if element is checked, otherwise returns false + */ + isChecked?: boolean; + + /** returns true if change event triggered by interaction, otherwise returns false + */ + isInteraction?: boolean; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the RadioButton model + */ + model?: ej.RadioButton.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the RadioButton model + */ + model?: ej.RadioButton.Model; + + /** returns the name of the event + */ + type?: string; + } + } + enum RadioButtonSize { + //Shows small size radio button + Small, + //Shows medium size radio button + Medium, + } + + class Rating extends ej.Widget { + static fn: Rating; + constructor(element: JQuery | Element, options?: Rating.Model); + static Locale: any; + model: Rating.Model; + defaults: Rating.Model; + + /** Destroy the Rating widget all events bound will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** To get the current value of rating control. + * @returns {number} + */ + getValue(): number; + + /** To hide the rating control. + * @returns {void} + */ + hide(): void; + + /** User can refresh the rating control to identify changes. + * @returns {void} + */ + refresh(): void; + + /** To reset the rating value. + * @returns {void} + */ + reset(): void; + + /** To set the rating value. + * @param {string|number} Specifies the rating value. + * @returns {void} + */ + setValue(value: string|number): void; + + /** To show the rating control + * @returns {void} + */ + show(): void; + } + export namespace Rating { + + export interface Model { + + /** Enables the rating control with reset button.It can be used to reset the rating control value. + * @Default {true} + */ + allowReset?: boolean; + + /** Specify the CSS class to achieve custom theme. + */ + cssClass?: string; + + /** When this property is set to false, it disables the rating control. + * @Default {true} + */ + enabled?: boolean; + + /** Save current model value to browser cookies for state maintenance. While refresh the page Rating control values are retained. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Specifies the height of the Rating control wrapper. + * @Default {null} + */ + height?: string; + + /** Specifies the list of HTML attributes to be added to rating control. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specifies the value to be increased while navigating between shapes(stars) in Rating control. + * @Default {1} + */ + incrementStep?: number; + + /** Allow to render the maximum number of Rating shape(star). + * @Default {5} + */ + maxValue?: number; + + /** Allow to render the minimum number of Rating shape(star). + * @Default {0} + */ + minValue?: number; + + /** Specifies the orientation of Rating control. See Orientation + * @Default {ej.Rating.Orientation.Horizontal} + */ + orientation?: ej.Orientation|string; + + /** Helps to provide more precise ratings.Rating control supports three precision modes - full, half, and exact. See Precision + * @Default {full} + */ + precision?: ej.Rating.Precision|string; + + /** Interaction with Rating control can be prevented by enabling this API. + * @Default {false} + */ + readOnly?: boolean; + + /** To specify the height of each shape in Rating control. + * @Default {23} + */ + shapeHeight?: number; + + /** To specify the width of each shape in Rating control. + * @Default {23} + */ + shapeWidth?: number; + + /** Enables the tooltip option.Currently selected value will be displayed in tooltip. + * @Default {true} + */ + showTooltip?: boolean; + + /** To specify the number of stars to be selected while rendering. + * @Default {1} + */ + value?: number; + + /** Specifies the width of the Rating control wrapper. + * @Default {null} + */ + width?: string; + + /** Fires when Rating value changes. + */ + change?(e: ChangeEventArgs): void; + + /** Fires when Rating control is clicked successfully. + */ + click?(e: ClickEventArgs): void; + + /** Fires when Rating control is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires when Rating control is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when mouse hover is removed from Rating control. + */ + mouseout?(e: MouseoutEventArgs): void; + + /** Fires when mouse move is moving the Rating control. + */ + mousemove?(e: MousemoveEventArgs): void; + + /** Fires when mouse hovered over the Rating control. + */ + mouseover?(e: MouseoverEventArgs): void; + } + + export interface ChangeEventArgs { + + /** returns the current value. + */ + value?: number; + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rating model + */ + model?: ej.Rating.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mouse click event args values. + */ + event?: any; + } + + export interface ClickEventArgs { + + /** returns the current value. + */ + value?: number; + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rating model + */ + model?: ej.Rating.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mouse click event args values. + */ + event?: any; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rating model + */ + model?: ej.Rating.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rating model + */ + model?: ej.Rating.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface MouseoutEventArgs { + + /** returns the current value. + */ + value?: number; + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rating model + */ + model?: ej.Rating.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mouse click event args values. + */ + event?: any; + } + + export interface MousemoveEventArgs { + + /** returns the current value. + */ + value?: number; + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rating model + */ + model?: ej.Rating.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mouse click event args values. + */ + event?: any; + } + + export interface MouseoverEventArgs { + + /** returns the current value. + */ + value?: number; + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rating model + */ + model?: ej.Rating.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the mouse click event args values. + */ + event?: any; + + /** returns the current index value. + */ + index?: any; + } + + enum Precision { + + ///string + Exact, + + ///string + Full, + + ///string + Half + } + + } + + class Ribbon extends ej.Widget { + static fn: Ribbon; + constructor(element: JQuery | Element, options?: Ribbon.Model); + static Locale: any; + model: Ribbon.Model; + defaults: Ribbon.Model; + + /** Adds contextual tab or contextual tab set dynamically in the ribbon control with contextual tabs object and index position. When index is null, ribbon contextual tab or contextual + * tab set is added at the last index. + * @param {any} contextual tab or contextual tab set object. + * @param {number} index of the contextual tab or contextual tab set, this is optional. + * @returns {void} + */ + addContextualTabs(contextualTabSet: any, index?: number): void; + + /** Add new option to Backstage page. + * @param {any} select the object to add the backstage item + * @param {number} index to the backstage item this is optional. + * @returns {void} + */ + addBackStageItem(item: any, index?: number): void; + + /** Adds tab dynamically in the ribbon control with given name, tab group array and index position. When index is null, ribbon tab is added at the last index. + * @param {string} ribbon tab display text. + * @param {any[]} groups to be displayed in ribbon tab . + * @param {number} index of the ribbon tab,this is optional. + * @returns {void} + */ + addTab(tabText: string, ribbonGroups: any[], index?: number): void; + + /** Adds tab group dynamically in the ribbon control with given tab index, tab group object and group index position. When group index is null, ribbon group is added at the last index. + * @param {number} ribbon tab index. + * @param {any} group to be displayed in ribbon tab . + * @param {number} index of the ribbon group,this is optional. + * @returns {void} + */ + addTabGroup(tabIndex: number, tabGroup: any, groupIndex?: number): void; + + /** Adds group content dynamically in the ribbon control with given tab index, group index, content, content index and sub group index position. When content index is null, content is + * added at the last index. + * @param {number} ribbon tab index. + * @param {number} ribbon group index. + * @param {any} content to be displayed in the ribbon group. + * @param {number} ribbon content index. This is optional. If the value is not given, then by default contentIndex will be considered as 0. + * @param {number} sub group index in the ribbon group. This is optional. If the value is not given, then by default contentIndex will be considered as 0. + * @returns {void} + */ + addTabGroupContent(tabIndex: number, groupIndex: number, content: any, contentIndex?: number, subGroupIndex?: number): void; + + /** Hides the ribbon backstage page. + * @returns {void} + */ + hideBackstage(): void; + + /** Collapses the ribbon tab content. + * @returns {void} + */ + collapse(): void; + + /** Destroys the ribbon widget. All the events bound using this._on are unbound automatically and the ribbon control is moved to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** Expands the ribbon tab content. + * @returns {void} + */ + expand(): void; + + /** Gets text of the given index tab in the ribbon control. + * @param {number} index of the tab item. + * @returns {string} + */ + getTabText(index: number): string; + + /** Hides the given text tab in the ribbon control. + * @param {string} text of the tab item. + * @returns {void} + */ + hideTab(text: string): void; + + /** Checks whether the given text tab in the ribbon control is enabled or not. + * @param {string} text of the tab item. + * @returns {boolean} + */ + isEnable(text: string): boolean; + + /** Checks whether the given text tab in the ribbon control is visible or not. + * @param {string} text of the tab item. + * @returns {boolean} + */ + isVisible(text: string): boolean; + + /** Removes the given index tab item from the ribbon control. + * @param {number} index of tab item. + * @returns {void} + */ + removeTab(index: number): void; + + /** Sets new text to the given text tab in the ribbon control. + * @param {string} current text of the tab item. + * @param {string} new text of the tab item. + * @returns {void} + */ + setTabText(tabText: string, newText: string): void; + + /** Displays the ribbon backstage page. + * @returns {void} + */ + showBackstage(): void; + + /** Displays the given text tab in the ribbon control. + * @param {string} text of the tab item. + * @returns {void} + */ + showTab(text: string): void; + + /** To customize Group alone in the inside content. + * @param {number} ribbon tab index. + * @param {string} group id to be displayed in ribbon tab . + * @param {any} contentGroup is used in the object + * @returns {void} + */ + updateGroup(tabIndex: number, groupId: string, contentGroup?: any): void; + + /** Update option in existing Backstage. + * @param {number} index to the backstage item + * @param {any} select the object to add the backstage item + * @returns {void} + */ + updateBackStageItem(index: number, item?: any): void; + + /** To customize whole content from Tab Group. + * @param {number} ribbon tab index. + * @param {string} ribbon group text. + * @param {number} ribbon content index. This is optional. If the value is not given, all content groups will be removed. + * @param {number} sub group index in the ribbon group. This is optional. If the value is not given, all content groups will be removed. + * @returns {void} + */ + removeTabGroupContent(tabIndex: number, groupText: string, contentIndex?: number, subGroupIndex?: number): void; + + /** Remove option from Backstage. + * @param {number} index to the backstage item + * @returns {void} + */ + removeBackStageItem(index: number): void; + } + export namespace Ribbon { + + export interface Model { + + /** Enables the ribbon resize feature.allowResizing is a deprecated property of isResponsive. + * @Default {false} + */ + allowResizing?: boolean; + + /** When set to true, adapts the Ribbon layout to fit the screen size of devices on which it renders. + * @Default {false} + */ + isResponsive?: boolean; + + /** Specifies the height, width, enableRTL, showRoundedCorner,enabled,cssClass property to the controls in the ribbon commonly andit will work only when those properties are not + * defined in buttonSettings and content defaults. + * @Default {Object} + */ + buttonDefaults?: any; + + /** Property to enable the ribbon quick access toolbar. + * @Default {false} + */ + showQAT?: boolean; + + /** Sets the root CSS class for Ribbon which allow us to customize the appearance. + */ + cssClass?: string; + + /** Sets custom setting to the collapsible pin in the ribbon. + * @Default {Object} + */ + collapsePinSettings?: CollapsePinSettings; + + /** Set enableOnDemand as true to load ribbon tab and backstage contents while corresponding item clicked. + * @Default {false} + */ + enableOnDemand?: boolean; + + /** Set collapsible property as true to render ribbon in initially collapsed state. + * @Default {false} + */ + collapsible?: boolean; + + /** Align content in the ribbon control from right to left by setting the property as true. + * @Default {false} + */ + enableRTL?: boolean; + + /** Sets custom setting to the expandable pin in the ribbon. + * @Default {Object} + */ + expandPinSettings?: ExpandPinSettings; + + /** Specifies the application tab to contain application menu or backstage page in the ribbon control. + * @Default {Object} + */ + applicationTab?: ApplicationTab; + + /** Specifies the contextual tabs and tab set to the ribbon control with the background color and border color. Refer to the tabs section for adding tabs into the contextual tab and + * contextual tab set. + * @Default {Array} + */ + contextualTabs?: ContextualTab[]; + + /** Specifies the index or indexes to disable the given index tab or indexes tabs in the ribbon control. + * @Default {0} + */ + disabledItemIndex?: any[]; + + /** Specifies the index or indexes to enable the given index tab or indexes tabs in the ribbon control. + * @Default {null} + */ + enabledItemIndex?: any[]; + + /** Specifies the index of the ribbon tab to select the given index tab item in the ribbon control. + * @Default {1} + */ + selectedItemIndex?: number; + + /** Specifies the tabs and its groups. Also specifies the control details that has to be placed in the tab area in the ribbon control. + * @Default {Array} + */ + tabs?: Tab[]; + + /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data i.e. in a language and culture specific to + * a particular country or region and it will need to use the user's preference. + * @Default {en-US} + */ + locale?: string; + + /** Specifies the width to the ribbon control. You can set width in string or number format. + * @Default {null} + */ + width?: string|number; + + /** Triggered before the ribbon tab item is removed. + */ + beforeTabRemove?(e: BeforeTabRemoveEventArgs): void; + + /** Triggered before the ribbon control is created. + */ + create?(e: CreateEventArgs): void; + + /** Triggered before the ribbon control is destroyed. + */ + destroy?(e: DestroyEventArgs): void; + + /** Triggered when the control in the group is clicked successfully. + */ + groupClick?(e: GroupClickEventArgs): void; + + /** Triggered when the group expander in the group is clicked successfully. + */ + groupExpand?(e: GroupExpandEventArgs): void; + + /** Triggered when an item in the Gallery control is clicked successfully. + */ + galleryItemClick?(e: GalleryItemClickEventArgs): void; + + /** Triggered when a tab or button in the backstage page is clicked successfully. + */ + backstageItemClick?(e: BackstageItemClickEventArgs): void; + + /** Triggered when the ribbon control is collapsed. + */ + collapse?(e: CollapseEventArgs): void; + + /** Triggered when the ribbon control is expanded. + */ + expand?(e: ExpandEventArgs): void; + + /** Triggered before the ribbon control is load. + */ + load?(e: LoadEventArgs): void; + + /** Triggered after adding the new ribbon tab item. + */ + tabAdd?(e: TabAddEventArgs): void; + + /** Triggered when tab is clicked successfully in the ribbon control. + */ + tabClick?(e: TabClickEventArgs): void; + + /** Triggered before the ribbon tab is created. + */ + tabCreate?(e: TabCreateEventArgs): void; + + /** Triggered after the tab item is removed from the ribbon control. + */ + tabRemove?(e: TabRemoveEventArgs): void; + + /** Triggered after the ribbon tab item is selected in the ribbon control. + */ + tabSelect?(e: TabSelectEventArgs): void; + + /** Triggered when the expand/collapse button is clicked successfully . + */ + toggleButtonClick?(e: ToggleButtonClickEventArgs): void; + + /** Triggered when the QAT menu item is clicked successfully . + */ + qatMenuItemClick?(e: QatMenuItemClickEventArgs): void; + } + + export interface BeforeTabRemoveEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns current tab item index in the ribbon control. + */ + index?: number; + } + + export interface CreateEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns current ribbon tab item index + */ + deleteIndex?: number; + } + + export interface GroupClickEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns the control clicked in the group. + */ + target?: number; + } + + export interface GroupExpandEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns the clicked group expander. + */ + target?: number; + } + + export interface GalleryItemClickEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the gallery model. + */ + galleryModel?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns the item clicked in the gallery. + */ + target?: number; + } + + export interface BackstageItemClickEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns the item clicked in the gallery. + */ + target?: number; + + /** returns the id of the target item. + */ + id?: string; + + /** returns the text of the target item. + */ + text?: string; + } + + export interface CollapseEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface ExpandEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface LoadEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface TabAddEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns new added tab header. + */ + tabHeader?: any; + + /** returns new added tab content panel. + */ + tabContent?: any; + } + + export interface TabClickEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns previous active tab header. + */ + prevActiveHeader?: any; + + /** returns previous active index. + */ + prevActiveIndex?: number; + + /** returns current active tab header . + */ + activeHeader?: any; + + /** returns current active index. + */ + activeIndex?: number; + } + + export interface TabCreateEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns current ribbon tab item index + */ + deleteIndex?: number; + } + + export interface TabRemoveEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns the removed index. + */ + removedIndex?: number; + } + + export interface TabSelectEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns previous active tab header. + */ + prevActiveHeader?: any; + + /** returns previous active index. + */ + prevActiveIndex?: number; + + /** returns current active tab header . + */ + activeHeader?: any; + + /** returns current active index. + */ + activeIndex?: number; + } + + export interface ToggleButtonClickEventArgs { + + /** Set to true when the event has to be canceled, else false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns the expand/collapse button. + */ + target?: number; + } + + export interface QatMenuItemClickEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the ribbon model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** returns the clicked menu item text. + */ + text?: string; + } + + export interface CollapsePinSettings { + + /** Sets tooltip for the collapse pin . + * @Default {null} + */ + toolTip?: string; + + /** Specifies the custom tooltip for collapse pin.Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. + * @Default {Object} + */ + customToolTip?: any; + } + + export interface ExpandPinSettings { + + /** Sets tooltip for the expand pin. + * @Default {null} + */ + toolTip?: string; + + /** Specifies the custom tooltip for expand pin.Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. + * @Default {Object} + */ + customToolTip?: any; + } + + export interface ApplicationTabBackstageSettingsPage { + + /** Specifies the id for ribbon backstage page's tab and button elements. + * @Default {null} + */ + id?: string; + + /** Specifies the text for ribbon backstage page's tab header and button elements. + * @Default {null} + */ + text?: string; + + /** Specifies the type for ribbon backstage page's contents. Set "ej.Ribbon.BackStageItemType.Tab" to render the tab or "ej.Ribbon.BackStageItemType.Button" to + * render the button. + * @Default {ej.Ribbon.ItemType.Tab} + */ + itemType?: ej.Ribbon.ItemType|string; + + /** Specifies the id of HTML elements like div,ul, etc., as ribbon backstage page's tab content. + * @Default {null} + */ + contentID?: string; + + /** Specifies the separator between backstage page's tab and button elements. + * @Default {false} + */ + enableSeparator?: boolean; + } + + export interface ApplicationTabBackstageSettings { + + /** Specifies the display text of application tab. + * @Default {null} + */ + text?: string; + + /** Specifies the height of ribbon backstage page. + * @Default {null} + */ + height?: string|number; + + /** Specifies the width of ribbon backstage page. + * @Default {null} + */ + width?: string|number; + + /** Specifies the ribbon backstage page with its tab and button elements. + * @Default {Array} + */ + pages?: ApplicationTabBackstageSettingsPage[]; + + /** Specifies the width of backstage page header that contains tabs and buttons. + * @Default {null} + */ + headerWidth?: string|number; + } + + export interface ApplicationTab { + + /** Specifies the ribbon backstage page items. + * @Default {Object} + */ + backstageSettings?: ApplicationTabBackstageSettings; + + /** Specifies the ID of ul list to create application menu in the ribbon control. + * @Default {null} + */ + menuItemID?: string; + + /** Specifies the menu members, events by using the menu settings for the menu in the application tab. + * @Default {Object} + */ + menuSettings?: any; + + /** Specifies the application menu or backstage page. Specify the type of application tab as "ej.Ribbon.ApplicationTabType.Menu" to render the application menu or + * "ej.Ribbon.ApplicationTabType.Backstage" to render backstage page in the ribbon control. + * @Default {ej.Ribbon.ApplicationTabType.Menu} + */ + type?: ej.Ribbon.ApplicationTabType|string; + } + + export interface ContextualTab { + + /** Specifies the backgroundColor of the contextual tabs and tab set in the ribbon control. + * @Default {null} + */ + backgroundColor?: string; + + /** Specifies the borderColor of the contextual tabs and tab set in the ribbon control. + * @Default {null} + */ + borderColor?: string; + + /** Specifies the tabs to present in the contextual tabs and tab set. Refer to the tabs section for adding tabs into the contextual tabs and tab set. + * @Default {Array} + */ + tabs?: any[]; + } + + export interface TabsGroupsContentDefaults { + + /** Specifies the controls height such as Syncfusion button,split button,dropdown list,toggle button in the subgroup of the ribbon tab. + * @Default {null} + */ + height?: string|number; + + /** Specifies the controls width such as Syncfusion button,split button,dropdown list,toggle button in the subgroup of the ribbon tab. + * @Default {null} + */ + width?: string|number; + + /** Specifies the controls type such as Syncfusion button,split button,dropdown list,toggle button in the subgroup of the ribbon tab. + * @Default {ej.Ribbon.Type.Button} + */ + type?: string; + + /** Specifies the controls size such as Syncfusion button,split button,dropdown list,toggle button in the subgroup of the ribbon tab. + * @Default {false} + */ + isBig?: boolean; + } + + export interface TabsGroupsContentGroupsCustomGalleryItem { + + /** Specifies the Syncfusion button members, events by using buttonSettings. + * @Default {Object} + */ + buttonSettings?: any; + + /** Specifies the type as ej.Ribbon.CustomItemType.Menu or ej.Ribbon.CustomItemType.Button to render Syncfusion button and menu. + * @Default {ej.Ribbon.CustomItemType.Button} + */ + customItemType?: ej.Ribbon.CustomItemType|string; + + /** Specifies the custom tooltip for gallery extra item's button. Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. + * @Default {Object} + */ + customToolTip?: any; + + /** Specifies the UL list id to render menu as gallery extra item. + * @Default {null} + */ + menuId?: string; + + /** Specifies the Syncfusion menu members, events by using menuSettings. + * @Default {Object} + */ + menuSettings?: any; + + /** Specifies the text for gallery extra item's button. + * @Default {null} + */ + text?: string; + + /** Specifies the tooltip for gallery extra item's button. + * @Default {null} + */ + toolTip?: string; + } + + export interface TabsGroupsContentGroupsCustomToolTip { + + /** Sets content to the custom tooltip. Text and HTML support are provided for content. + * @Default {null} + */ + content?: string; + + /** Sets icon to the custom tooltip content. + * @Default {null} + */ + prefixIcon?: string; + + /** Sets title to the custom tooltip. Text and HTML support are provided for title and the title is in bold for text format. + * @Default {null} + */ + title?: string; + } + + export interface TabsGroupsContentGroupsGalleryItem { + + /** Specifies the Syncfusion button members, events by using buttonSettings. + * @Default {Object} + */ + buttonSettings?: any; + + /** Specifies the custom tooltip for gallery content. Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. + * @Default {Object} + */ + customToolTip?: any; + + /** Sets text for the gallery content. + * @Default {null} + */ + text?: string; + + /** Sets tooltip for the gallery content. + * @Default {null} + */ + toolTip?: string; + } + + export interface TabsGroupsContentGroup { + + /** When isMobileOnly is true,its shows in mobile toolbar.isResponsive should be true for using this property. + * @Default {false} + */ + isMobileOnly?: boolean; + + /** Specifies the Syncfusion button members, events by using this buttonSettings. + * @Default {Object} + */ + buttonSettings?: any; + + /** It is used to set the count of gallery contents in a row. + * @Default {null} + */ + columns?: number; + + /** Specifies the custom items such as div, table, controls as custom controls with the type "ej.Ribbon.Type.Custom" in the groups. + * @Default {null} + */ + contentID?: string; + + /** Specifies the CSS class property to apply styles to the button, split, dropdown controls in the groups. + * @Default {null} + */ + cssClass?: string; + + /** Specifies the Syncfusion button and menu as gallery extra items. + * @Default {Array} + */ + customGalleryItems?: TabsGroupsContentGroupsCustomGalleryItem[]; + + /** Provides custom tooltip for button, split button, dropdown list, toggle button, custom controls in the sub groups. Text and HTML support are also provided for title and content. + * @Default {Object} + */ + customToolTip?: TabsGroupsContentGroupsCustomToolTip; + + /** Specifies the Syncfusion dropdown list members, events by using this dropdownSettings. + * @Default {Object} + */ + dropdownSettings?: any; + + /** Specifies the separator to the control that is in row type group. The separator separates the control from the next control in the group. Set "true" to enable the + * separator. + * @Default {false} + */ + enableSeparator?: boolean; + + /** Sets the count of gallery contents in a row, when the gallery is in expanded state. + * @Default {null} + */ + expandedColumns?: number; + + /** Defines each gallery content. + * @Default {Array} + */ + galleryItems?: TabsGroupsContentGroupsGalleryItem[]; + + /** Specifies the Id for button, split button, dropdown list, toggle button, gallery, custom controls in the sub groups. + * @Default {null} + */ + id?: string; + + /** Specifies the size for button, split button controls. Set "true" for big size and "false" for small size. + * @Default {null} + */ + isBig?: boolean; + + /** Sets the height of each gallery content. + * @Default {null} + */ + itemHeight?: string|number; + + /** Sets the width of each gallery content. + * @Default {null} + */ + itemWidth?: string|number; + + /** Specifies the Syncfusion split button members, events by using this splitButtonSettings. + * @Default {Object} + */ + splitButtonSettings?: any; + + /** Specifies the text for button, split button, toggle button controls in the sub groups. + * @Default {null} + */ + text?: string; + + /** Specifies the Syncfusion toggle button members, events by using toggleButtonSettings. + * @Default {Object} + */ + toggleButtonSettings?: any; + + /** Specifies the tooltip for button, split button, dropdown list, toggle button, custom controls in the sub groups. + * @Default {null} + */ + toolTip?: string; + + /** To add,show and hide controls in Quick Access toolbar. + * @Default {ej.Ribbon.QuickAccessMode.None} + */ + quickAccessMode?: ej.Ribbon.QuickAccessMode|string; + + /** Specifies the type as "ej.Ribbon.Type.Button" or "ej.Ribbon.Type.SplitButton" or "ej.Ribbon.Type.DropDownList" or + * "ej.Ribbon.Type.ToggleButton" or "ej.Ribbon.Type.Custom" or "ej.Ribbon.Type.Gallery" to render button, split, dropdown, toggle button, gallery, + * custom controls. + * @Default {ej.Ribbon.Type.Button} + */ + type?: ej.Ribbon.Type|string; + } + + export interface TabsGroupsContent { + + /** Specifies the height, width, type, isBig property to the controls in the group commonly. + * @Default {Object} + */ + defaults?: TabsGroupsContentDefaults; + + /** Specifies the controls such as Syncfusion button, split button, dropdown list, toggle button, gallery, custom controls in the subgroup of the ribbon tab . + * @Default {Array} + */ + groups?: TabsGroupsContentGroup[]; + } + + export interface TabsGroupsGroupExpanderSettings { + + /** Sets tooltip for the group expander of the group. + * @Default {null} + */ + toolTip?: string; + + /** Specifies the custom tooltip for group expander.Refer to ejRibbon#tabs->groups->content->groups->customToolTip for its inner properties. + * @Default {Object} + */ + customToolTip?: any; + } + + export interface TabsGroup { + + /** Specifies the alignment of controls in the groups in 'row' type or 'column' type. Value for row type is "ej.Ribbon.AlignType.Rows" and for column type is + * "ej.Ribbon.alignType.columns". + * @Default {ej.Ribbon.AlignType.Rows} + */ + alignType?: ej.Ribbon.AlignType|string; + + /** Specifies the Syncfusion button, split button, dropdown list, toggle button, gallery, custom controls to the groups in the ribbon control. + * @Default {Array} + */ + content?: TabsGroupsContent[]; + + /** Specifies the ID of custom items to be placed in the groups. + * @Default {null} + */ + contentID?: string; + + /** Specifies the HTML contents to place into the groups. + * @Default {null} + */ + customContent?: string; + + /** Specifies the group expander for groups in the ribbon control. Set "true" to enable the group expander. + * @Default {false} + */ + enableGroupExpander?: boolean; + + /** Sets custom setting to the groups in the ribbon control. + * @Default {Object} + */ + groupExpanderSettings?: TabsGroupsGroupExpanderSettings; + + /** Specifies the text to the groups in the ribbon control. + * @Default {null} + */ + text?: string; + + /** Specifies the custom items such as div, table, controls by using the "custom" type. + * @Default {null} + */ + type?: string; + } + + export interface Tab { + + /** Specifies single group or multiple groups and its contents to each tab in the ribbon control. + * @Default {Array} + */ + groups?: TabsGroup[]; + + /** Specifies the ID for each tab's content panel. + * @Default {null} + */ + id?: string; + + /** Specifies the text of the tab in the ribbon control. + * @Default {null} + */ + text?: string; + } + + enum ItemType { + + ///To render the button for ribbon backstage page’s contents + Button, + + ///To render the tab for ribbon backstage page’s contents + Tab + } + + + enum ApplicationTabType { + + ///applicationTab display as menu + Menu, + + ///applicationTab display as backstage + Backstage + } + + + enum AlignType { + + ///To align the group content's in row + Rows, + + ///To align group content's in columns + Columns + } + + + enum CustomItemType { + + ///Specifies the button type in customGalleryItems + Button, + + ///Specifies the menu type in customGalleryItems + Menu + } + + + enum QuickAccessMode { + + ///Controls are hidden in Quick Access toolbar + None, + + ///Add controls in toolBar + ToolBar, + + ///Add controls in menu + Menu + } + + + enum Type { + + ///Specifies the button control + Button, + + ///Specifies the split button + SplitButton, + + ///Specifies the dropDown + DropDownList, + + ///To append external element's + Custom, + + ///Specifies the toggle button + ToggleButton, + + ///Specifies the ribbon gallery + Gallery + } + + } + + class Kanban extends ej.Widget { + static fn: Kanban; + constructor(element: JQuery | Element, options?: Kanban.Model); + static Locale: any; + model: Kanban.Model; + defaults: Kanban.Model; + + /** Add or remove columns in Kanban columns collections.Default action is add. + * @param {any[]|string} Pass array of columns or string of headerText to add/remove the column in Kanban + * @param {any[]|string} Pass array of columns or string of key value to add/remove the column in Kanban + * @param {string} optional Pass add/remove action to be performed. By default "add" action will perform + * @returns {void} + */ + columns(columndetails: any[]|string, keyvalue: any[]|string, action?: string): void; + + /** Destroy the Kanban widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** Refresh the Kanban with new data source. + * @param {any[]} Pass new data source to the Kanban + * @returns {void} + */ + dataSource(datasource: any[]): void; + + /** toggleColumn based on the headerText in Kanban. + * @param {any} Pass the header text of the column to get the corresponding column object + * @returns {void} + */ + toggleColumn(headerText: any): void; + + /** Expand or collapse the card based on the state of target "div" + * @param {string|number} Pass the id of card to be toggle + * @returns {void} + */ + toggleCard(key: string|number): void; + + /** Used for get the names of all the visible column name collections in Kanban. + * @returns {any[]} + */ + getVisibleColumnNames(): any[]; + + /** Get the scroller object of Kanban. + * @returns {ej.Scroller} + */ + getScrollObject(): ej.Scroller; + + /** Get the column details based on the given header text in Kanban. + * @param {string} Pass the header text of the column to get the corresponding column object + * @returns {string} + */ + getColumnByHeaderText(headerText: string): string; + + /** Get the table details based on the given header table in Kanban. + * @returns {string} + */ + getHeaderTable(): string; + + /** Hide columns from the Kanban based on the header text + * @param {any[]|string} you can pass either array of header text of various columns or a header text of a column to hide + * @returns {void} + */ + hideColumns(headerText: any[]|string): void; + + /** Print the Kanban Board + * @returns {void} + */ + print(): void; + + /** Refresh the template of the Kanban + * @returns {void} + */ + refreshTemplate(): void; + + /** Refresh the Kanban contents.The template refreshment is based on the argument passed along with this method + * @param {boolean} optional When templateRefresh is set true, template and Kanban contents both are refreshed in Kanban else only Kanban content is refreshed + * @returns {void} + */ + refresh(templateRefresh?: boolean): void; + + /** Show columns in the Kanban based on the header text. + * @param {any[]|string} You can pass either array of header text of various columns or a header text of a column to show + * @returns {void} + */ + showColumns(headerText: any[]|string): void; + + /** Update a card in Kanban control based on key and JSON data given. + * @param {string} Pass the key field Name of the column + * @param {any[]} Pass the edited JSON data of card need to be update. + * @returns {void} + */ + updateCard(key: string, data: any[]): void; + + KanbanSelection: Kanban.KanbanSelection; + + KanbanSwimlane: Kanban.KanbanSwimlane; + + KanbanFilter: Kanban.KanbanFilter; + + KanbanEdit: Kanban.KanbanEdit; + } + export namespace Kanban { + + export interface KanbanSelection { + + /** It is used to clear all the card selection. + * @returns {void} + */ + clear(): void; + } + + export interface KanbanSwimlane { + + /** Expand all the swimlane rows in Kanban. + * @returns {void} + */ + expandAll(): void; + + /** Collapse all the swimlane rows in Kanban. + * @returns {void} + */ + collapseAll(): void; + + /** Expand or collapse the swimlane row based on the state of target "div" + * @param {any} Pass the div object to toggleSwimlane row based on its row state + * @returns {void} + */ + toggle($div: any): void; + } + + export interface KanbanFilter { + + /** Method used for send a clear search request to Kanban. + * @returns {void} + */ + clearSearch(): void; + + /** Send a search request to Kanban with specified string passed in it. + * @param {string} Pass the string to search in Kanban card + * @returns {void} + */ + searchCards(searchString: string): void; + + /** Send a clear request to filter cards in the kanban. + * @returns {void} + */ + clearFilter(): void; + + /** Send a filtering request to cards in the kanban. + * @returns {void} + */ + filterCards(): void; + } + + export interface KanbanEdit { + + /** Add a new card in Kanban control when allowAdding is set as true. If parameters are not given default dialog will be open. + * @param {string} Pass the primary key field Name of the column + * @param {any[]} Pass the edited JSON data of card need to be add. + * @returns {void} + */ + addCard(primaryKey: string, card: any[]): void; + + /** Send a cancel request of add/edit card in Kanban when allowEditing/allowAdding is set as true. + * @returns {void} + */ + cancelEdit(): void; + + /** Delete a card in Kanban control when allowAdding/allowEditing is set as true. + * @param {string|number} Pass the key of card to be delete + * @returns {void} + */ + deleteCard(Key: string|number): void; + + /** Send a save request in Kanban when any card is in edit/new add card state and allowEditing/allowAdding is set as true. + * @returns {void} + */ + endEdit(): void; + + /** Send an edit card request in Kanban when allowEditing is set as true. Parameter will be HTML element or primary key + * @param {any} Pass the div selected row element to be edited in Kanban + * @returns {void} + */ + startEdit($div: any): void; + + /** Method used for set validation to a field during editing. + * @param {string} Specify the name of the column to set validation rules + * @param {any} Specify the validation rules for the field + * @returns {void} + */ + setValidationToField(name: string, rules: any): void; + } + + export interface Model { + + /** Gets or sets a value that indicates whether to enable allowDragAndDrop behavior on Kanban. + * @Default {true} + */ + allowDragAndDrop?: boolean; + + /** To enable or disable the title of the card. + * @Default {false} + */ + allowTitle?: boolean; + + /** Customize the settings for swim lane. + * @Default {Object} + */ + swimlaneSettings?: SwimlaneSettings; + + /** To enable or disable the column expand /collapse. + * @Default {false} + */ + allowToggleColumn?: boolean; + + /** To enable Searching operation in Kanban. + * @Default {false} + */ + allowSearching?: boolean; + + /** To enable filtering behavior on Kanban.User can specify query in filterSettings collection after enabling allowFiltering. + * @Default {false} + */ + allowFiltering?: boolean; + + /** Gets or sets a value that indicates whether to enable allowSelection behavior on Kanban.User can select card and the selected card will be highlighted on Kanban. + * @Default {true} + */ + allowSelection?: boolean; + + /** Gets or sets a value that indicates whether to allow card hover actions. + * @Default {true} + */ + allowHover?: boolean; + + /** To allow keyboard navigation actions. + * @Default {false} + */ + allowKeyboardNavigation?: boolean; + + /** Gets or sets a value that indicates whether to enable the scrollbar in the Kanban and view the card by scroll through the Kanban manually. + * @Default {false} + */ + allowScrolling?: boolean; + + /** Gets or sets a value that indicates whether to enable printing option. + * @Default {false} + */ + allowPrinting?: boolean; + + /** Gets or sets an object that indicates whether to customize the context menu behavior of the Kanban. + * @Default {Object} + */ + contextMenuSettings?: ContextMenuSettings; + + /** Gets or sets an object that indicates to render the Kanban with specified columns. + * @Default {Array} + */ + columns?: Column[]; + + /** Gets or sets an object that indicates whether to Customize the card settings. + * @Default {Object} + */ + cardSettings?: CardSettings; + + /** Gets or sets a value that indicates whether to add customToolbarItems within the toolbar to perform any action in the Kanban. + * @Default {[]} + */ + customToolbarItems?: CustomToolbarItem[]; + + /** Gets or sets a value that indicates to render the Kanban with custom theme. + */ + cssClass?: string; + + /** Gets or sets the data to render the Kanban with cards. + * @Default {null} + */ + dataSource?: any; + + /** To perform kanban functionalities with touch interaction. + * @Default {true} + */ + enableTouch?: boolean; + + /** Align content in the Kanban control align from right to left by setting the property as true. + * @Default {false} + */ + enableRTL?: boolean; + + /** To show total count of cards in each column. + * @Default {false} + */ + enableTotalCount?: boolean; + + /** Get or sets an object that indicates whether to customize the editing behavior of the Kanban. + * @Default {Object} + */ + editSettings?: EditSettings; + + /** To customize field mappings for card , editing title and control key parameters + * @Default {Object} + */ + fields?: Fields; + + /** To map datasource field for column values mapping + * @Default {null} + */ + keyField?: string; + + /** When set to true, adapts the Kanban layout to fit the screen size of devices on which it renders. + * @Default {false} + */ + isResponsive?: boolean; + + /** Gets or sets a value that indicates whether to set the minimum width of the responsive Kanban while isResponsive property is true. + * @Default {0} + */ + minWidth?: number; + + /** To customize the filtering behavior based on queries given. + * @Default {Array} + */ + filterSettings?: FilterSetting[]; + + /** ej Query to query database of Kanban. + * @Default {null} + */ + query?: any; + + /** To change the key in keyboard interaction to Kanban control. + * @Default {null} + */ + keySettings?: any; + + /** Gets or sets an object that indicates whether to customize the scrolling behavior of the Kanban. + * @Default {Object} + */ + scrollSettings?: ScrollSettings; + + /** To customize the searching behavior of the Kanban. + * @Default {Object} + */ + searchSettings?: SearchSettings; + + /** To allow customize selection type. Accepting types are "single" and "multiple". + * @Default {ej.Kanban.SelectionType.Single} + */ + selectionType?: ej.Kanban.SelectionType|string; + + /** Gets or sets an object that indicates to managing the collection of stacked header rows for the Kanban. + * @Default {Array} + */ + stackedHeaderRows?: StackedHeaderRow[]; + + /** The tooltip allows to display card details in a tooltip while hovering on it. + */ + tooltipSettings?: TooltipSettings; + + /** Gets or sets an object that indicates to render the Kanban with specified workflows. + * @Default {Array} + */ + workflows?: Workflow[]; + + /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data i.e. in a language and culture specific to + * a particular country or region. + * @Default {en-US} + */ + locale?: string; + + /** Triggered for every Kanban action before its starts. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Triggered for every Kanban action success event. + */ + actionComplete?(e: ActionCompleteEventArgs): void; + + /** Triggered for every Kanban action server failure event. + */ + actionFailure?(e: ActionFailureEventArgs): void; + + /** Triggered before the task is going to be edited. + */ + beginEdit?(e: BeginEditEventArgs): void; + + /** Triggered before the card is selected. + */ + beforeCardSelect?(e: BeforeCardSelectEventArgs): void; + + /** Trigger after the card is clicked. + */ + cardClick?(e: CardClickEventArgs): void; + + /** Triggered when the card is being dragged. + */ + cardDrag?(e: CardDragEventArgs): void; + + /** Triggered when card dragging start. + */ + cardDragStart?(e: CardDragStartEventArgs): void; + + /** Triggered when card dragging stops. + */ + cardDragStop?(e: CardDragStopEventArgs): void; + + /** Triggered when the card is Dropped. + */ + cardDrop?(e: CardDropEventArgs): void; + + /** Triggered after the card is selected. + */ + cardSelect?(e: CardSelectEventArgs): void; + + /** Triggered when card is double clicked. + */ + cardDoubleClick?(e: CardDoubleClickEventArgs): void; + + /** Triggered before the card is selected. + */ + cardSelecting?(e: CardSelectingEventArgs): void; + + /** Triggered when the Kanban is rendered completely + */ + create?(e: CreateEventArgs): void; + + /** Triggers after the cell is clicked. + */ + cellClick?(e: CellClickEventArgs): void; + + /** Triggered before the context menu is opened. + */ + contextOpen?(e: ContextOpenEventArgs): void; + + /** Triggered when context menu item is clicked in Kanban + */ + contextClick?(e: ContextClickEventArgs): void; + + /** Triggered the Kanban is bound with data during initial rendering. + */ + dataBound?(e: DataBoundEventArgs): void; + + /** Triggered when Kanban going to destroy. + */ + destroy?(e: DestroyEventArgs): void; + + /** Triggered after the card is deleted. + */ + endDelete?(e: EndDeleteEventArgs): void; + + /** Triggered after the card is edited. + */ + endEdit?(e: EndEditEventArgs): void; + + /** Triggers after the header is clicked. + */ + headerClick?(e: HeaderClickEventArgs): void; + + /** Triggered initial load. + */ + load?(e: LoadEventArgs): void; + + /** Triggers before swim lane expand or collapse icon is clicked. + */ + swimlaneClick?(e: SwimlaneClickEventArgs): void; + + /** Triggered every time a single card rendered request is made to access particular card information. + */ + queryCellInfo?(e: QueryCellInfoEventArgs): void; + + /** Triggered when toolbar item is clicked in Kanban. + */ + toolbarClick?(e: ToolbarClickEventArgs): void; + } + + export interface ActionBeginEventArgs { + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the current action event type. + */ + originalEventType?: string; + + /** Returns primary key value. + */ + primaryKeyValue?: string; + + /** Returns request type. + */ + requestType?: string; + + /** Returns the edited row index. + */ + rowIndex?: number; + + /** Returns the card object (JSON). + */ + data?: any; + + /** Returns current filtering object field name. + */ + currentFilteringobject?: any; + + /** Returns filter details. + */ + filterCollection?: any; + } + + export interface ActionCompleteEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns request type. + */ + requestType?: string; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns current action event type. + */ + originalEventType?: string; + + /** Returns primary key. + */ + primaryKey?: string; + + /** Returns primary key value. + */ + primaryKeyValue?: string; + + /** Returns Kanban element. + */ + target?: any; + + /** Returns the card object (JSON). + */ + data?: any; + + /** Returns the selectedRow index. + */ + selectedRow?: number; + + /** Returns current filtering column field name. + */ + currentFilteringColumn?: string; + + /** Returns filter details. + */ + filterCollection?: any; + } + + export interface ActionFailureEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns request type. + */ + requestType?: string; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the error return by server. + */ + error?: any; + + /** Returns current action event type. + */ + originalEventType?: string; + + /** Returns primary key value. + */ + primaryKeyValue?: string; + + /** Returns Kanban element. + */ + target?: any; + + /** Returns the card object (JSON). + */ + data?: any; + + /** Returns current filtering column field name. + */ + currentFilteringColumn?: string; + + /** Returns filter details. + */ + filterCollection?: any; + } + + export interface BeginEditEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns primary key value. + */ + primaryKeyValue?: string; + + /** Returns begin edit data. + */ + data?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface BeforeCardSelectEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the select cell index value. + */ + cellIndex?: number; + + /** Returns the select card index value. + */ + cardIndex?: number; + + /** Returns the select cell element + */ + currentCell?: any; + + /** Returns the previously select the card element + */ + previousCard?: any; + + /** Returns the previously select card indexes + */ + previousRowcellindex?: any[]; + + /** Returns the Target item. + */ + Target?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns select card data. + */ + data?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CardClickEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns current record object (JSON). + */ + data?: any; + + /** Returns the current card to the Kanban. + */ + currentCard?: string; + + /** Returns Kanban element. + */ + target?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns the Header text of the column corresponding to the selected card. + */ + columnName?: string; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CardDragEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns drag data. + */ + data?: any; + + /** Returns drag start element. + */ + dragtarget?: any; + + /** Returns dragged element. + */ + draggedElement?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CardDragStartEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns card drag start data. + */ + data?: any; + + /** Returns dragged element. + */ + draggedElement?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns drag start element. + */ + dragtarget?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CardDragStopEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns dragged element. + */ + draggedElement?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns drag stop element. + */ + droptarget?: any; + + /** Returns drag stop data. + */ + data?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CardDropEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns dragged element. + */ + draggedElement?: any; + + /** Returns previous parent of dragged element + */ + draggedParent?: any; + + /** Returns dragged data. + */ + data?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns drop element. + */ + target?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CardSelectEventArgs { + + /** Returns the select cell index value. + */ + cellIndex?: number; + + /** Returns the select card index value. + */ + cardIndex?: number; + + /** Returns the select cell element + */ + currentCell?: any; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the previously select the card element + */ + previousCard?: any; + + /** Returns the previously select card indexes + */ + previousRowcellindex?: any[]; + + /** Returns the current item. + */ + currentTarget?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns select card data. + */ + data?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CardDoubleClickEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns current card object (JSON). + */ + data?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CardSelectingEventArgs { + + /** Returns the selecting cell index value. + */ + cellIndex?: number; + + /** Returns the selecting card index value. + */ + cardIndex?: number; + + /** Returns the selecting cell element + */ + currentCell?: any; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the previously selecting the card element + */ + previousCard?: any; + + /** Returns the previously rowcell is selecting card indexes + */ + previousRowcellindex?: any[]; + + /** Returns the current item. + */ + currentTarget?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns added data. + */ + data?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CreateEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface CellClickEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the select cell index value. + */ + cellIndex?: number; + + /** Returns the edited row index. + */ + rowIndex?: number; + } + + export interface ContextOpenEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the current item. + */ + currentTarget?: any; + + /** Returns the status of contextmenu item which denotes its enabled state. + */ + status?: boolean; + + /** Returns the target item. + */ + target?: any; + } + + export interface ContextClickEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the current item. + */ + currentTarget?: any; + + /** Returns the status of contextmenu item which denotes its enabled state. + */ + status?: boolean; + + /** Returns the target item. + */ + target?: any; + } + + export interface DataBoundEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** Returns the kanban model. + */ + model?: any; + + /** Returns deleted data. + */ + data?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface EndDeleteEventArgs { + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns request type. + */ + requestType?: string; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns deleted data. + */ + data?: any; + + /** Returns the name of the event. + */ + type?: string; + + /** Current action name + */ + action?: string; + } + + export interface EndEditEventArgs { + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns request type. + */ + requestType?: string; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns modified data. + */ + data?: any; + + /** Returns the name of the event. + */ + type?: string; + + /** Current Action name + */ + action?: string; + } + + export interface HeaderClickEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the select cell index value. + */ + cellIndex?: number; + + /** Returns the column object. + */ + columnData?: any; + } + + export interface LoadEventArgs { + + /** Returns the kanban model. + */ + model?: any; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface SwimlaneClickEventArgs { + + /** Current Action name while swim lane clicked. Actions are "expand" or "collapse" + */ + action?: string; + + /** Returns the kanban model. + */ + model?: any; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the swim lane group data's. + */ + data?: any; + + /** Returns current swim lane row index. + */ + rowIndex?: number; + + /** Returns current target element. + */ + target?: any; + } + + export interface QueryCellInfoEventArgs { + + /** Returns Kanban card. + */ + card?: any; + + /** Returns Kanban card. + */ + cell?: any; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns current row record object (JSON). + */ + data?: any; + + /** Returns the column object. + */ + column?: any; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface ToolbarClickEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the current item. + */ + currentTarget?: any; + + /** Returns the item id of that current element. + */ + itemId?: string; + + /** Returns the item index of that current element. + */ + itemIndex?: number; + + /** Returns the item name of that current element. + */ + itemName?: string; + + /** Returns the item text of that current element. + */ + itemText?: string; + + /** Returns the Kanban model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the toolbar object of the Kanban. + */ + toolbarData?: any; + } + + export interface SwimlaneSettingsUnassignedGroup { + + /** To enable or disable unassigned category change with swim lane key values. + * @Default {true} + */ + enable?: boolean; + + /** To set the user defined values which are need to categorized as unassigned category swim lane groups. + * @Default {[null,undefined,]} + */ + keys?: any[]; + } + + export interface SwimlaneSettings { + + /** To enable or disable items count in swim lane. + * @Default {true} + */ + showCount?: boolean; + + /** To enable or disable DragAndDrop across swim lane. + * @Default {false} + */ + allowDragAndDrop?: boolean; + + /** Customize the settings for unassigned category of swim lane. + * @Default {Object} + */ + unassignedGroup?: SwimlaneSettingsUnassignedGroup; + } + + export interface ContextMenuSettingsCustomMenuItem { + + /** Its sets target element to custom context menu item. + * @Default {ej.Kanban.Target.All} + */ + target?: ej.Kanban.Target|string; + + /** Gets the display name to custom menu item. + * @Default {null} + */ + text?: string; + + /** Gets the template to render custom context menu item. + * @Default {null} + */ + template?: string; + } + + export interface ContextMenuSettings { + + /** To enable context menu.All default context menu will show. + * @Default {false} + */ + enable?: boolean; + + /** Gets or sets a value that indicates the list of items needs to be disable from default context menu items. + * @Default {Array} + */ + disableDefaultItems?: any[]; + + /** Its used to add specific default context menu items. + * @Default {Array} + */ + menuItems?: any[]; + + /** Gets or sets a value that indicates whether to add custom contextMenu items. + * @Default {Array} + */ + customMenuItems?: ContextMenuSettingsCustomMenuItem[]; + } + + export interface ColumnsTotalCount { + + /** To customize the totalCount text properties. + * @Default {null} + */ + text?: string; + } + + export interface ColumnsConstraints { + + /** It is used to specify the type of constraints as column or swimlane. + * @Default {null} + */ + type?: string; + + /** It is used to specify the minimum amount of card in particular column cell or swimlane cell can hold. + * @Default {null} + */ + min?: number; + + /** It is used to specify the maximum amount of card in particular column cell or swimlane cell can hold. + * @Default {null} + */ + max?: number; + } + + export interface Column { + + /** Gets or sets an object that indicates to render the Kanban with specified columns header text. + * @Default {null} + */ + headerText?: string; + + /** To customize the totalCount properties. + * @Default {Object} + */ + totalCount?: ColumnsTotalCount; + + /** Gets or sets an object that indicates to render the Kanban with specified columns key. + * @Default {null} + */ + key?: string|number; + + /** To enable/disable allowDrop for specific column wise. + * @Default {true} + */ + allowDrop?: boolean; + + /** To enable/disable allowDrag for specific column wise. + * @Default {true} + */ + allowDrag?: boolean; + + /** To set column collapse or expand state + * @Default {false} + */ + isCollapsed?: boolean; + + /** To customize the column level constraints with minimum ,maximum limit validation. + * @Default {Object} + */ + constraints?: ColumnsConstraints; + + /** Gets or sets a value that indicates to add the template within the header element. + * @Default {null} + */ + headerTemplate?: string; + + /** Gets or sets an object that indicates to render the Kanban with specified columns width. + * @Default {null} + */ + width?: string|number; + + /** Gets or sets an object that indicates to set specific column visibility. + * @Default {true} + */ + visible?: boolean; + + /** Gets or sets an object that indicates whether to show add new button. + * @Default {false} + */ + showAddButton?: boolean; + } + + export interface CardSettings { + + /** Gets or sets a value that indicates to add the template for card . + * @Default {null} + */ + template?: string; + + /** To customize the card border color based on assigned task. Colors and corresponding values defined here will be mapped with colorField mapped data source column. + * @Default {Object} + */ + colorMapping?: any; + } + + export interface CustomToolbarItem { + + /** Gets the template to render customToolbarItems. + * @Default {null} + */ + template?: string; + } + + export interface EditSettingsEditItem { + + /** It is used to map editing field from the data source. + * @Default {null} + */ + field?: string; + + /** It is used to set the particular editType in the card for editing. + * @Default {ej.Kanban.EditingType.String} + */ + editType?: ej.Kanban.EditingType|string; + + /** Gets or sets a value that indicates to define constraints for saving data to the database. + * @Default {Object} + */ + validationRules?: any; + + /** It is used to set the particular editparams in the card for editing. + * @Default {Object} + */ + editParams?: any; + + /** It is used to specify defaultValue for the fields while adding new card. + * @Default {null} + */ + defaultValue?: string|number; + } + + export interface EditSettings { + + /** Gets or sets a value that indicates whether to enable the editing action in cards of Kanban. + * @Default {false} + */ + allowEditing?: boolean; + + /** Gets or sets a value that indicates whether to enable the adding action in cards behavior on Kanban. + * @Default {false} + */ + allowAdding?: boolean; + + /** This specifies the id of the template which is require to be edited using the Dialog Box. + * @Default {null} + */ + dialogTemplate?: string; + + /** Get or sets an object that indicates whether to customize the editMode of the Kanban. + * @Default {ej.Kanban.EditMode.Dialog} + */ + editMode?: ej.Kanban.EditMode|string; + + /** Get or sets an object that indicates whether to customize the editing fields of Kanban card. + * @Default {Array} + */ + editItems?: EditSettingsEditItem[]; + + /** This specifies the id of the template which is require to be edited using the External edit form. + * @Default {null} + */ + externalFormTemplate?: string; + + /** This specifies to set the position of an External edit form either in the right or bottom of the Kanban. + * @Default {ej.Kanban.FormPosition.Bottom} + */ + formPosition?: ej.Kanban.FormPosition|string; + } + + export interface Fields { + + /** The primarykey field is mapped to data source field. And this will used for Drag and drop and editing mainly. + * @Default {null} + */ + primaryKey?: string; + + /** To enable swimlane grouping based on the given key field from datasource mapping. + * @Default {null} + */ + swimlaneKey?: string; + + /** Priority field has been mapped data source field to maintain cards priority. + * @Default {null} + */ + priority?: string; + + /** Content field has been Mapped into card text. + * @Default {null} + */ + content?: string; + + /** Tag field has been Mapped into card tag. + * @Default {null} + */ + tag?: string; + + /** Title field has been Mapped to field in datasource for title content. If title field specified , card expand/collapse will be enabled with header and content section. + * @Default {null} + */ + title?: string; + + /** To customize the card has been Mapped into card color field. + * @Default {null} + */ + color?: string; + + /** ImageUrl field has been Mapped into card image. + * @Default {null} + */ + imageUrl?: string; + } + + export interface FilterSetting { + + /** Gets or sets an object of display name to filter queries. + * @Default {null} + */ + text?: string; + + /** Gets or sets an object that Queries to perform filtering + * @Default {Object} + */ + query?: any; + + /** Gets or sets an object of tooltip to filter buttons. + * @Default {null} + */ + description?: string; + } + + export interface ScrollSettings { + + /** Gets or sets an object that indicates to render the Kanban with specified scroll height. + * @Default {0} + */ + height?: string|number; + + /** Gets or sets an object that indicates to render the Kanban with specified scroll width. + * @Default {auto} + */ + width?: string|number; + + /** To allow the Kanban to freeze particular swimlane at the time of scrolling , until scroll reaches next swimlane and it continues. + * @Default {false} + */ + allowFreezeSwimlane?: boolean; + } + + export interface SearchSettings { + + /** To customize the fields the searching operation can be perform. + * @Default {Array} + */ + fields?: any[]; + + /** To customize the searching string. + */ + key?: string; + + /** To customize the operator based on searching. + * @Default {contains} + */ + operator?: string; + + /** To customize the ignore case based on searching. + * @Default {true} + */ + ignoreCase?: boolean; + } + + export interface StackedHeaderRowsStackedHeaderColumn { + + /** Gets or sets a value that indicates the headerText for the particular stacked header column. + * @Default {null} + */ + headerText?: string; + + /** Gets or sets a value that indicates the column for the particular stacked header column. + * @Default {null} + */ + column?: string; + } + + export interface StackedHeaderRow { + + /** Gets or sets a value that indicates whether to add stacked header columns into the stacked header rows. + * @Default {Array} + */ + stackedHeaderColumns?: StackedHeaderRowsStackedHeaderColumn[]; + } + + export interface TooltipSettings { + + /** To enable or disable the tooltip display. + * @Default {false} + */ + enable?: boolean; + + /** To customize the tooltip display based on your requirements. + * @Default {null} + */ + template?: string; + } + + export interface Workflow { + + /** Gets or sets an object that indicates to render the Kanban with specified workflows key. + * @Default {null} + */ + key?: string|number; + + /** Gets or sets an object that indicates to render the Kanban with specified workflows allowed Transitions. + * @Default {null} + */ + allowedTransitions?: string; + } + + enum Target { + + ///Sets context menu to Kanban header + Header, + + ///Sets context menu to Kanban content + Content, + + ///Sets context menu to Kanban card + Card, + + ///Sets context menu to Kanban + All + } + + + enum EditMode { + + ///Creates Kanban with editMode as Dialog + Dialog, + + ///Creates Kanban with editMode as DialogTemplate + DialogTemplate, + + ///Creates Kanban with editMode as ExternalForm + ExternalForm, + + ///Creates Kanban with editMode as ExternalFormTemplate + ExternalFormTemplate + } + + + enum EditingType { + + ///Allows to set edit type as string edit type + String, + + ///Allows to set edit type as numeric edit type + Numeric, + + ///Allows to set edit type as drop down edit type + Dropdown, + + ///Allows to set edit type as date picker edit type + DatePicker, + + ///Allows to set edit type as date time picker edit type + DateTimePicker, + + ///Allows to set edit type as text area edit type + TextArea, + + ///Allows to set edit type as RTE edit type + RTE + } + + + enum FormPosition { + + ///Form position is bottom. + Bottom, + + ///Form position is right. + Right + } + + + enum SelectionType { + + ///Support for Single selection in Kanban + Single, + + ///Support for multiple selections in Kanban + Multiple + } + + } + + class Rotator extends ej.Widget { + static fn: Rotator; + constructor(element: JQuery | Element, options?: Rotator.Model); + static Locale: any; + model: Rotator.Model; + defaults: Rotator.Model; + + /** Disables the Rotator control. + * @returns {void} + */ + disable(): void; + + /** Enables the Rotator control. + * @returns {void} + */ + enable(): void; + + /** This method is used to get the current slide index. + * @returns {number} + */ + getIndex(): number; + + /** This method is used to move a slide to the specified index. + * @param {number} index of an slide + * @returns {void} + */ + gotoIndex(index: number): void; + + /** This method is used to pause autoplay. + * @returns {void} + */ + pause(): void; + + /** This method is used to move slides continuously (or start autoplay) in the specified autoplay direction. + * @returns {void} + */ + play(): void; + + /** This method is used to move to the next slide from the current slide. If the current slide is the last slide, then the first slide will be treated as the next slide. + * @returns {void} + */ + slideNext(): void; + + /** This method is used to move to the previous slide from the current slide. If the current slide is the first slide, then the last slide will be treated as the previous slide. + * @returns {void} + */ + slidePrevious(): void; + + /** This method is used to update/modify the slide content of template rotator by using id based on index value. + * @param {number} index of an slide + * @param {string} id of a new updated slide + * @returns {void} + */ + updateTemplateById(index: number, id: string): void; + } + export namespace Rotator { + + export interface Model { + + /** Turns on keyboard interaction with the Rotator items. You must set this property to true to access the following keyboard shortcuts: + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** Sets the animationSpeed of slide transition. + * @Default {600} + */ + animationSpeed?: string|number; + + /** Specifies the animationType type for the Rotator Item. animationType options include slide, fastSlide, slowSlide, and other custom easing animationTypes. + * @Default {slide} + */ + animationType?: string; + + /** Enables the circular mode item rotation. + * @Default {true} + */ + circularMode?: boolean; + + /** Specify the CSS class to Rotator to achieve custom theme. + */ + cssClass?: string; + + /** Specify the list of data which contains a set of data fields. Each data value is used to render an item for the Rotator. + * @Default {null} + */ + dataSource?: any; + + /** Sets the delay between the Rotator Items move after the slide transition. + * @Default {500} + */ + delay?: number; + + /** Specifies the number of Rotator Items to be displayed. + * @Default {1} + */ + displayItemsCount?: string|number; + + /** Rotates the Rotator Items continuously without user interference. + * @Default {false} + */ + enableAutoPlay?: boolean; + + /** Enables or disables the Rotator control. + * @Default {true} + */ + enabled?: boolean; + + /** Specifies right to left transition of slides. + * @Default {false} + */ + enableRTL?: boolean; + + /** Defines mapping fields for the data items of the Rotator. + * @Default {null} + */ + fields?: Fields; + + /** Sets the space between the Rotator Items. + */ + frameSpace?: string|number; + + /** Resizes the Rotator when the browser is resized. + * @Default {false} + */ + isResponsive?: boolean; + + /** Specifies the number of Rotator Items to navigate on a single click (next/previous/play buttons). The navigateSteps property value must be less than or equal to the + * displayItemsCount property value. + * @Default {1} + */ + navigateSteps?: string|number; + + /** Specifies the orientation for the Rotator control, that is, whether it must be rendered horizontally or vertically. See Orientation + * @Default {ej.Orientation.Horizontal} + */ + orientation?: ej.Orientation|string; + + /** Specifies the position of the showPager in the Rotator Item. See PagerPosition + * @Default {outside} + */ + pagerPosition?: string|ej.Rotator.PagerPosition; + + /** Retrieves data from remote data. This property is applicable only when a remote data source is used. + * @Default {null} + */ + query?: string; + + /** If the Rotator Item is an image, you can specify a caption for the Rotator Item. The caption text for each Rotator Item must be set by using the title attribute of the respective + * tag. The caption cannot be displayed if multiple Rotator Items are present. + * @Default {false} + */ + showCaption?: boolean; + + /** Turns on or off the slide buttons (next and previous) in the Rotator Items. Slide buttons are used to navigate the Rotator Items. + * @Default {true} + */ + showNavigateButton?: boolean; + + /** Turns on or off the pager support in the Rotator control. The Pager is used to navigate the Rotator Items. + * @Default {true} + */ + showPager?: boolean; + + /** Enable play / pause button on rotator. + * @Default {false} + */ + showPlayButton?: boolean; + + /** Turns on or off thumbnail support in the Rotator control. Thumbnail is used to navigate between slides. Thumbnail supports only single slide transition You must specify the source + * for thumbnail elements through the thumbnailSourceID property. + * @Default {false} + */ + showThumbnail?: boolean; + + /** Sets the height of a Rotator Item. + */ + slideHeight?: string|number; + + /** Sets the width of a Rotator Item. + */ + slideWidth?: string|number; + + /** Sets the index of the slide that must be displayed first. + * @Default {0} + */ + startIndex?: string|number; + + /** Pause the auto play while hover on the rotator content. + * @Default {false} + */ + stopOnHover?: boolean; + + /** The template to display the Rotator widget with customized appearance. + * @Default {null} + */ + template?: string; + + /** The templateId enables to bind multiple customized template items in Rotator. + * @Default {null} + */ + templateId?: any[]; + + /** Specifies the source for thumbnail elements. + * @Default {null} + */ + thumbnailSourceID?: any; + + /** This event is fired when the Rotator slides are changed. + */ + change?(e: ChangeEventArgs): void; + + /** This event is fired when the Rotator control is initialized. + */ + create?(e: CreateEventArgs): void; + + /** This event is fired when the Rotator control is destroyed. + */ + destroy?(e: DestroyEventArgs): void; + + /** This event is fired when a pager is clicked. + */ + pagerClick?(e: PagerClickEventArgs): void; + + /** This event is fired when enableAutoPlay is started. + */ + start?(e: StartEventArgs): void; + + /** This event is fired when autoplay is stopped or paused. + */ + stop?(e: StopEventArgs): void; + + /** This event is fired when a thumbnail pager is clicked. + */ + thumbItemClick?(e: ThumbItemClickEventArgs): void; + } + + export interface ChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rotator model + */ + model?: ej.Rotator.Model; + + /** returns the name of the event + */ + type?: string; + + /** the current rotator id. + */ + itemId?: string; + + /** returns the current slide index. + */ + activeItemIndex?: number; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rotator model + */ + model?: ej.Rotator.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rotator model + */ + model?: ej.Rotator.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface PagerClickEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rotator model + */ + model?: ej.Rotator.Model; + + /** returns the name of the event + */ + type?: string; + + /** the current rotator id. + */ + itemId?: string; + + /** returns the current slide index. + */ + activeItemIndex?: number; + } + + export interface StartEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rotator model + */ + model?: ej.Rotator.Model; + + /** returns the name of the event + */ + type?: string; + + /** the current rotator id. + */ + itemId?: string; + + /** returns the current slide index. + */ + activeItemIndex?: number; + } + + export interface StopEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rotator model + */ + model?: ej.Rotator.Model; + + /** returns the name of the event + */ + type?: string; + + /** the current rotator id. + */ + itemId?: string; + + /** returns the current slide index. + */ + activeItemIndex?: number; + } + + export interface ThumbItemClickEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the rotator model + */ + model?: ej.Rotator.Model; + + /** returns the name of the event + */ + type?: string; + + /** the current rotator id. + */ + itemId?: string; + + /** returns the current slide index. + */ + activeItemIndex?: number; + } + + export interface Fields { + + /** Specifies a link for the image. + */ + linkAttribute?: string; + + /** Specifies where to open a given link. + */ + targetAttribute?: string; + + /** Specifies a caption for the image. + */ + text?: string; + + /** Specifies a caption for the thumbnail image. + */ + thumbnailText?: string; + + /** Specifies the URL for an thumbnail image. + */ + thumbnailUrl?: string; + + /** Specifies the URL for an image. + */ + url?: string; + } + + enum PagerPosition { + + ///string + BottomLeft, + + ///string + BottomRight, + + ///string + Outside, + + ///string + TopCenter, + + ///string + TopLeft, + + ///string + TopRight + } + + } + + class RTE extends ej.Widget { + static fn: RTE; + constructor(element: JQuery | Element, options?: RTE.Model); + static Locale: any; + model: RTE.Model; + defaults: RTE.Model; + + /** Returns the range object. + * @returns {any} + */ + createRange(): any; + + /** Disables the RTE control. + * @returns {void} + */ + disable(): void; + + /** Disables the corresponding tool in the RTE ToolBar. + * @returns {void} + */ + disableToolbarItem(): void; + + /** Enables the RTE control. + * @returns {void} + */ + enable(): void; + + /** Enables the corresponding tool in the toolbar when the tool is disabled. + * @returns {void} + */ + enableToolbarItem(): void; + + /** Performs the action value based on the given command. + * @param {string} Command Name. + * @param {any} Content to be inserted as argument. + * @param {boolean} Boolean value to specify whether the argument is textnode or not, this is optional. + * @returns {void} + */ + executeCommand(cmdName: string, args: any, textnodeType?: boolean): void; + + /** Focuses the RTE control. + * @returns {void} + */ + focus(): void; + + /** Gets the command status of the selected text based on the given comment in the RTE control. + * @returns {boolean} + */ + getCommandStatus(): boolean; + + /** Gets the Document from the RTE control. + * @returns {Document} + */ + getDocument(): Document; + + /** Gets the HTML string from the RTE control. + * @returns {HTMLElement} + */ + getHtml(): HTMLElement; + + /** Gets the selected HTML string from the RTE control. + * @returns {HTMLElement} + */ + getSelectedHtml(): HTMLElement; + + /** Gets the content as string from the RTE control. + * @returns {string} + */ + getText(): string; + + /** Hides the RTE control. + * @returns {void} + */ + hide(): void; + + /** Inserts new item to the target contextmenu node. + * @returns {void} + */ + insertMenuOption(): void; + + /** Add a table column at the right or left of the specified cell + * @param {boolean} If it’s true, add a column at the left of the cell, otherwise add a column at the right of the cell + * @param {JQuery} Column will be added based on the given cell element + * @returns {HTMLElement} + */ + insertColumn(before?: boolean, cell?: JQuery): HTMLElement; + + /** To add a table row below or above the specified cell. + * @param {boolean} If it’s true, add a row before the cell, otherwise add a row after the cell + * @param {JQuery} Row will be added based on the given cell element + * @returns {HTMLElement} + */ + insertRow(before?: boolean, cell?: JQuery): HTMLElement; + + /** This method helps to insert/paste the content at the current cursor (caret) position or the selected content to be replaced with our text by passing the value as parameter to the + * pasteContent method in the Editor. + * @returns {void} + */ + pasteContent(): void; + + /** Refreshes the RTE control. + * @returns {void} + */ + refresh(): void; + + /** Removes the specified table column. + * @param {JQuery} Remove the given column element + * @returns {void} + */ + removeColumn(cell?: JQuery): void; + + /** Removes the specified table row. + * @param {JQuery} Remove the given row element + * @returns {void} + */ + removeRow(cell?: JQuery): void; + + /** Deletes the specified table. + * @param {JQuery} Remove the given table + * @returns {void} + */ + removeTable(table?: JQuery): void; + + /** Removes the target menu item from the RTE contextmenu. + * @returns {void} + */ + removeMenuOption(): void; + + /** Removes the given tool from the RTE Toolbar. + * @returns {void} + */ + removeToolbarItem(): void; + + /** Selects all the contents within the RTE. + * @returns {void} + */ + selectAll(): void; + + /** Selects the contents in the given range. + * @returns {void} + */ + selectRange(): void; + + /** Sets the color picker model type rendered initially in the RTE control. + * @returns {void} + */ + setColorPickerType(): void; + + /** Sets the HTML string from the RTE control. + * @returns {void} + */ + setHtml(): void; + + /** Displays the RTE control. + * @returns {void} + */ + show(): void; + } + export namespace RTE { + + export interface Model { + + /** Enables/disables the editing of the content. + * @Default {True} + */ + allowEditing?: boolean; + + /** RTE control can be accessed through the keyboard shortcut keys. + * @Default {True} + */ + allowKeyboardNavigation?: boolean; + + /** When the property is set to true, it focuses the RTE at the time of rendering. + * @Default {false} + */ + autoFocus?: boolean; + + /** Based on the content size, its height is adjusted instead of adding the scrollbar. + * @Default {false} + */ + autoHeight?: boolean; + + /** This API holds configuration setting for paste clenaup behavior. + * @Default {{ listConversion: false, cleanCSS: false, removeStyles: false, cleanElements: false }} + */ + pasteCleanupSettings?: PasteCleanupSettings; + + /** Sets the colorCode to display the color of the fontColor and backgroundColor in the font tools of the RTE. + * @Default {[000000, FFFFFF, C4C4C4, ADADAD, 595959, 262626, 4f81bd, dbe5f1, b8cce4, 95b3d7, 366092, 244061, c0504d, f2dcdb, e5b9b7, d99694, 953734,632423, 9bbb59, ebf1dd, d7e3bc, + * c3d69b, 76923c, 4f6128, 8064a2, e5e0ec, ccc1d9, b2a2c7, 5f497a, 3f3151, f79646, fdeada, fbd5b5, fac08f,e36c09, 974806]} + */ + colorCode?: any; + + /** The number of columns given are rendered in the color palate popup. + * @Default {6} + */ + colorPaletteColumns?: number; + + /** The number of rows given are rendered in the color palate popup. + * @Default {6} + */ + colorPaletteRows?: number; + + /** Sets the root class for the RTE theme. This cssClass API helps the usage of custom skinning option for the RTE control by including this root class in CSS. + */ + cssClass?: string; + + /** Enables/disables the RTE control’s accessibility or interaction. + * @Default {True} + */ + enabled?: boolean; + + /** When the property is set to true, it returns the encrypted text. + * @Default {false} + */ + enableHtmlEncode?: boolean; + + /** Maintain the values of the RTE after page reload. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Shows the resize icon and enables the resize option in the RTE. + * @Default {True} + */ + enableResize?: boolean; + + /** Shows the RTE in the RTL direction. + * @Default {false} + */ + enableRTL?: boolean; + + /** Formats the contents based on the XHTML rules. + * @Default {false} + */ + enableXHTML?: boolean; + + /** Enables the tab key action with the RichTextEditor content. + * @Default {True} + */ + enableTabKeyNavigation?: boolean; + + /** This API allows to enable url and fileName for pdf export. + * @Default {null} + */ + exportToPdfSettings?: ExportToPdfSettings; + + /** This API allows to enable url and fileName for word export. + * @Default {null} + */ + exportToWordSettings?: ExportToWordSettings; + + /** Load the external CSS file inside Iframe. + * @Default {null} + */ + externalCSS?: string; + + /** This API allows to enable the file browser support in the RTE control to browse, create, delete and upload the files in the specified current directory. + * @Default {null} + */ + fileBrowser?: FileBrowser; + + /** Sets the fontName in the RTE. + * @Default {{text: Segoe UI, value: Segoe UI },{text: Arial, value: Arial,Helvetica,sans-serif },{text: Courier New, value: Courier New,Courier,Monospace },{text: Georgia, value: + * Georgia,serif },{text: Impact, value: Impact,Charcoal,sans-serif },{text: Lucida Console, value: Lucida Console,Monaco,Monospace },{text: Tahoma, value: Tahoma,Geneva,sans-serif + * },{text: Times New Roman, value: Times New Roman },{text: Trebuchet MS, value: Trebuchet MS,Helvetica,sans-serif },{text: Verdana, value: Verdana,Geneva,sans-serif}} + */ + fontName?: any; + + /** Sets the fontSize in the RTE. + * @Default {{ text: 1, value: 1 },{ text: 2 (10pt), value: 2 },{ text: 3 (12pt), value: 3 },{ text: 4 (14pt), value: 4 },{ text: 5 (18pt), value: 5 },{ text: 6 (24pt), value: 6 },{ + * text: 7 (36pt), value: 7 }} + */ + fontSize?: any; + + /** Sets the format in the RTE. + * @Default {{ text: Paragraph, value: <p>, spriteCssClass: e-paragraph },{ text: Quotation, value: <blockquote>, spriteCssClass: e-quotation },{ text: Heading 1, value: + * <h1>, spriteCssClass: e-h1 },{ text: Heading 2, value: <h2>, spriteCssClass: e-h2 },{ text: Heading 3, value: <h3>, spriteCssClass: e-h3 },{ text: Heading 4, + * value: <h4>, spriteCssClass: e-h4 },{ text: Heading 5, value: <h5>, spriteCssClass: e-h5 },{ text: Heading 6, value: <h6>, spriteCssClass: e-h6}} + */ + format?: string; + + /** Defines the height of the RTE textbox. + * @Default {370} + */ + height?: string|number; + + /** Specifies the HTML Attributes of the ejRTE. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Sets the given attributes to the iframe body element. + * @Default {{}} + */ + iframeAttributes?: any; + + /** This API allows the image browser to support in the RTE control to browse, create, delete, and upload the image files to the specified current directory. + * @Default {null} + */ + imageBrowser?: ImageBrowser; + + /** This API allows to enable the url for connecting to RTE import. + * @Default {null} + */ + importSettings?: ImportSettings; + + /** Enables/disables responsive support for the RTE control toolbar items during the window resizing time. + * @Default {false} + */ + isResponsive?: boolean; + + /** Sets the culture in the RTE when you set the localization values are needs to be assigned to the corresponding text as follows. + * @Default {en-US} + */ + locale?: string; + + /** Sets the maximum height for the RTE outer wrapper element. + * @Default {null} + */ + maxHeight?: string|number; + + /** Sets the maximum length for the RTE outer wrapper element. + * @Default {7000} + */ + maxLength?: number; + + /** Sets the maximum width for the RTE outer wrapper element. + * @Default {null} + */ + maxWidth?: string|number; + + /** Sets the minimum height for the RTE outer wrapper element. + * @Default {280} + */ + minHeight?: string|number; + + /** Sets the minimum width for the RTE outer wrapper element. + * @Default {400} + */ + minWidth?: string|number; + + /** Sets the name in the RTE. When the name value is not initialized, the ID value is assigned to the name. + */ + name?: string; + + /** Shows ClearAll icon in the RTE footer. + * @Default {false} + */ + showClearAll?: boolean; + + /** Shows the clear format in the RTE footer. + * @Default {true} + */ + showClearFormat?: boolean; + + /** Shows the Custom Table in the RTE. + * @Default {True} + */ + showCustomTable?: boolean; + + /** The showContextMenu property helps to enable custom context menu within editor area. + * @Default {True} + */ + showContextMenu?: boolean; + + /** This API is used to set the default dimensions for the image and video. When this property is set to true, the image and video dialog displays the dimension option. + * @Default {false} + */ + showDimensions?: boolean; + + /** Shows the FontOption in the RTE. + * @Default {True} + */ + showFontOption?: boolean; + + /** Shows footer in the RTE. When the footer is enabled, it displays the HTML tag, word Count, character count, clear format, resize icon and clear all the content icons, by default. + * @Default {false} + */ + showFooter?: boolean; + + /** Shows the HtmlSource in the RTE footer. + * @Default {false} + */ + showHtmlSource?: boolean; + + /** When the cursor is placed or when the text is selected in the RTE, it displays the tag info in the footer. + * @Default {True} + */ + showHtmlTagInfo?: boolean; + + /** Shows the toolbar in the RTE. + * @Default {True} + */ + showToolbar?: boolean; + + /** Counts the total characters and displays it in the RTE footer. + * @Default {True} + */ + showCharCount?: boolean; + + /** Enables or disables rounded corner UI look for RTE. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Counts the total words and displays it in the RTE footer. + * @Default {True} + */ + showWordCount?: boolean; + + /** The given number of columns render the insert table pop. + * @Default {10} + */ + tableColumns?: number; + + /** The given number of rows render the insert table pop. + * @Default {8} + */ + tableRows?: number; + + /** Sets the tools in the RTE and gets the inner display order of the corresponding group element. Tools are dependent on the toolsList property. + * @Default {formatStyle: [format],style: [bold, italic, underline, strikethrough],alignment: [justifyLeft, justifyCenter, justifyRight, justifyFull],lists: [unorderedList, + * orderedList],indenting: [outdent, indent],doAction: [undo, redo],links: [createLink,removeLink],images: [image],media: [video],tables: [createTable, addRowAbove, addRowBelow, + * addColumnLeft, addColumnRight, deleteRow, deleteColumn, deleteTable]],view:[“fullScreen”,zoomIn,zoomOut],print:[print]} + */ + tools?: Tools; + + /** Specifies the list of groups and order of those groups displayed in the RTE toolbar. The toolsList property is used to get the root group order and tools property is used to get + * the inner order of the corresponding groups displayed. When the value is not specified, it gets its default display order and tools. + * @Default {[formatStyle, font, style, effects, alignment, lists, indenting, clipboard, doAction, clear, links, images, media, tables, casing,view, customTools,print,edit]} + */ + toolsList?: any[]; + + /** Specifies the overflow mode for RTE responsive toolbar + * @Default {Popup} + */ + toolbarOverflowMode?: ej.RTE.ToolbarOverflowMode|string; + + /** Display the hints for the tools in the Toolbar. + * @Default {{ associate: mouseenter, showShadow: true, position: { stem: { horizontal: left, vertical: top } }, tip: { size: { width: 5, height: 5 }, isBalloon: false }} + */ + tooltipSettings?: any; + + /** Gets the undo stack limit. + * @Default {50} + */ + undoStackLimit?: number; + + /** The given string value is displayed in the editable area. + * @Default {null} + */ + value?: string; + + /** Sets the jQuery validation rules to the Rich Text Editor. + * @Default {null} + */ + validationRules?: any; + + /** Sets the jQuery validation error message to the Rich Text Editor. + * @Default {null} + */ + validationMessage?: any; + + /** Defines the width of the RTE textbox. + * @Default {786} + */ + width?: string|number; + + /** Increases and decreases the contents zoom range in percentage + * @Default {0.05} + */ + zoomStep?: string|number; + + /** Fires when changed successfully. + */ + change?(e: ChangeEventArgs): void; + + /** Fires when the RTE is created successfully + */ + create?(e: CreateEventArgs): void; + + /** Fires when mouse click on menu items. + */ + contextMenuClick?(e: ContextMenuClickEventArgs): void; + + /** Fires before the RTE is destroyed. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when the commands are executed successfully. + */ + execute?(e: ExecuteEventArgs): void; + + /** Fires when the keydown action is successful. + */ + keydown?(e: KeydownEventArgs): void; + + /** Fires when the keyup action is successful. + */ + keyup?(e: KeyupEventArgs): void; + + /** Fires before the RTE Edit area is rendered and after the toolbar is rendered. + */ + preRender?(e: PreRenderEventArgs): void; + + /** Fires when the text is selected in the text area + */ + select?(e: SelectEventArgs): void; + } + + export interface ChangeEventArgs { + + /** When the event is canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the RTE model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface CreateEventArgs { + + /** When the event is canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the RTE model + */ + model?: any; + + /** Returns the name of the event + */ + type?: string; + } + + export interface ContextMenuClickEventArgs { + + /** returns clicked menu item text. + */ + text?: string; + + /** returns clicked menu item element. + */ + element?: any; + + /** returns the selected item. + */ + selectedItem?: number; + } + + export interface DestroyEventArgs { + + /** When the event is canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the RTE model + */ + model?: any; + + /** Returns the name of the event + */ + type?: string; + } + + export interface ExecuteEventArgs { + + /** When the event is canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the RTE model + */ + model?: any; + + /** Returns the name of the event + */ + type?: string; + } + + export interface KeydownEventArgs { + + /** When the event is canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the RTE model + */ + model?: any; + + /** Returns the name of the event + */ + type?: string; + } + + export interface KeyupEventArgs { + + /** When the event is canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the RTE model + */ + model?: any; + + /** Returns the name of the event + */ + type?: string; + } + + export interface PreRenderEventArgs { + + /** When the event is canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the RTE model + */ + model?: any; + + /** Returns the name of the event + */ + type?: string; + } + + export interface SelectEventArgs { + + /** When the event is canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the RTE model + */ + model?: any; + + /** Returns the name of the event + */ + type?: string; + + /** Returns the event object + */ + event?: any; + } + + export interface PasteCleanupSettings { + + /** This API is used to convert the list elements pasted from word document to editor. + * @Default {false} + */ + listConversion?: boolean; + + /** This API is used to clean the unwanted css in the elements pasted from word document to editor. + * @Default {false} + */ + cleanCSS?: boolean; + + /** This API is used to remove all styles in the elements pasted from word document to editor. + * @Default {false} + */ + removeStyles?: boolean; + + /** This API is used to clean the unwanted elements pasted from word document to editor. + * @Default {false} + */ + cleanElements?: boolean; + } + + export interface ExportToPdfSettings { + + /** This API is used to receive the server-side handler for export related operations. + */ + url?: string; + + /** Specifies the file name for the exported pdf file. + */ + fileName?: string; + } + + export interface ExportToWordSettings { + + /** This API is used to receive the server-side handler for export related operations. + */ + url?: string; + + /** Specifies the file name for the exported word file. + */ + fileName?: string; + } + + export interface FileBrowser { + + /** This API is used to receive the server-side handler for file related operations. + */ + ajaxAction?: string; + + /** Specifies the file type extension shown in the file browser window. + */ + extensionAllow?: string; + + /** Specifies the directory to perform operations like create, delete and rename folder and files, and upload the selected files to the current directory. + */ + filePath?: string; + } + + export interface ImageBrowser { + + /** This API is used to receive the server-side handler for the file related operations. + */ + ajaxAction?: string; + + /** Specifies the file type extension shown in the image browser window. + */ + extensionAllow?: string; + + /** Specifies the directory to perform operations like create, delete and rename folder and files, and upload the selected images to the current directory. + */ + filePath?: string; + } + + export interface ImportSettings { + + /** This API is used to receive the server-side handler for import operations. + */ + url?: string; + } + + export interface ToolsCustomOrderedList { + + /** Specifies the name for customOrderedList item. + */ + name?: string; + + /** Specifies the title for customOrderedList item. + */ + tooltip?: string; + + /** Specifies the styles for customOrderedList item. + */ + css?: string; + + /** Specifies the text for customOrderedList item. + */ + text?: string; + + /** Specifies the list style for customOrderedList item. + */ + listStyle?: string; + + /** Specifies the image for customOrderedList item. + */ + listImage?: string; + } + + export interface ToolsCustomUnorderedList { + + /** Specifies the name for customUnorderedList item. + */ + name?: string; + + /** Specifies the title for customUnorderedList item. + */ + tooltip?: string; + + /** Specifies the styles for customUnorderedList item. + */ + css?: string; + + /** Specifies the text for customUnorderedList item. + */ + text?: string; + + /** Specifies the list style for customUnorderedList item. + */ + listStyle?: string; + + /** Specifies the image for customUnorderedList item. + */ + listImage?: string; + } + + export interface Tools { + + /** Specifies the alignment tools and the display order of this tool in the RTE toolbar. + */ + alignment?: any; + + /** Specifies the casing tools and the display order of this tool in the RTE toolbar. + */ + casing?: any[]; + + /** Specifies the clear tools and the display order of this tool in the RTE toolbar. + */ + clear?: any[]; + + /** Specifies the clipboard tools and the display order of this tool in the RTE toolbar. + */ + clipboard?: any[]; + + /** Specifies the edit tools and the displays tool in the RTE toolbar. + */ + edit?: any[]; + + /** Specifies the doAction tools and the display order of this tool in the RTE toolbar. + */ + doAction?: any[]; + + /** Specifies the effect of tools and the display order of this tool in RTE toolbar. + */ + effects?: any[]; + + /** Specifies the font tools and the display order of this tool in the RTE toolbar. + */ + font?: any[]; + + /** Specifies the formatStyle tools and the display order of this tool in the RTE toolbar. + */ + formatStyle?: any[]; + + /** Specifies the image tools and the display order of this tool in the RTE toolbar. + */ + images?: any[]; + + /** Specifies the indent tools and the display order of this tool in the RTE toolbar. + */ + indenting?: any[]; + + /** Specifies the link tools and the display order of this tool in the RTE toolbar. + */ + links?: any[]; + + /** Specifies the list tools and the display order of this tool in the RTE toolbar. + */ + lists?: any[]; + + /** Specifies the media tools and the display order of this tool in the RTE toolbar. + */ + media?: any[]; + + /** Specifies the style tools and the display order of this tool in the RTE toolbar. + */ + style?: any[]; + + /** Specifies the table tools and the display order of this tool in the RTE toolbar. + */ + tables?: any[]; + + /** Specifies the view tools and the display order of this tool in the RTE toolbar. + */ + view?: any[]; + + /** Specifies the print tools and the display order of this tool in the RTE toolbar. + */ + print?: any[]; + + /** Specifies the importExport tools and the display order of this tool in the RTE toolbar. + */ + importExport?: any[]; + + /** Specifies the customOrderedList tools and the display order of this tool in the RTE toolbar. + */ + customOrderedList?: ToolsCustomOrderedList[]; + + /** Specifies the customUnOrderedList tools and the display order of this tool in the RTE toolbar. + */ + customUnorderedList?: ToolsCustomUnorderedList[]; + } + + enum ToolbarOverflowMode { + + ///To display the RTE toolbar overflow items as popup + Popup, + + ///To display the RTE toolbar overflow items as inline toolbar + Inline + } + + } + + class Slider extends ej.Widget { + static fn: Slider; + constructor(element: JQuery | Element, options?: Slider.Model); + static Locale: any; + model: Slider.Model; + defaults: Slider.Model; + + /** To disable the slider + * @returns {void} + */ + disable(): void; + + /** To enable the slider + * @returns {void} + */ + enable(): void; + + /** To get value from slider handle + * @returns {number} + */ + getValue(): number; + + /** To set value to slider handle.By default animation is false while set the value. If you want to enable the animation, pass the enableAnimation as true to this method. + * @returns {void} + */ + setValue(): void; + } + export namespace Slider { + + export interface Model { + + /** Specifies the allowMouseWheel of the slider. + * @Default {false} + */ + allowMouseWheel?: boolean; + + /** Specifies the animationSpeed of the slider. + * @Default {500} + */ + animationSpeed?: number; + + /** Specify the CSS class to slider to achieve custom theme. + */ + cssClass?: string; + + /** Specifies the animation behavior of the slider. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Specifies the state of the slider. + * @Default {true} + */ + enabled?: boolean; + + /** Specify the enablePersistence to slider to save current model value to browser cookies for state maintains + * @Default {false} + */ + enablePersistence?: boolean; + + /** Specifies the Right to Left Direction of the slider. + * @Default {false} + */ + enableRTL?: boolean; + + /** Specifies the height of the slider. + * @Default {14} + */ + height?: string; + + /** Specifies the HTML Attributes of the ejSlider. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specifies the incremental step value of the slider. + * @Default {1} + */ + incrementStep?: number; + + /** Specifies the distance between two major (large) ticks from the scale of the slider. + * @Default {10} + */ + largeStep?: number; + + /** Specifies the ending value of the slider. + * @Default {100} + */ + maxValue?: number; + + /** Specifies the starting value of the slider. + * @Default {0} + */ + minValue?: number; + + /** Specifies the orientation of the slider. + * @Default {ej.orientation.Horizontal} + */ + orientation?: ej.Orientation|string; + + /** Specifies the readOnly of the slider. + * @Default {false} + */ + readOnly?: boolean; + + /** Specifies the rounded corner behavior for slider. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Shows/Hide the major (large) and minor (small) ticks in the scale of the slider. + * @Default {false} + */ + showScale?: boolean; + + /** Specifies the small ticks from the scale of the slider. + * @Default {true} + */ + showSmallTicks?: boolean; + + /** Specifies the showTooltip to shows the current Slider value, while moving the Slider handle or clicking on the slider handle of the slider. + * @Default {true} + */ + showTooltip?: boolean; + + /** Specifies the sliderType of the slider. + * @Default {ej.SliderType.Default} + */ + sliderType?: ej.slider.sliderType|string; + + /** Specifies the distance between two minor (small) ticks from the scale of the slider. + * @Default {1} + */ + smallStep?: number; + + /** Specifies the value of the slider. But it's not applicable for range slider. To range slider we can use values property. + * @Default {0} + */ + value?: number; + + /** Specifies the values of the range slider. But it's not applicable for default and minRange sliders. we can use value property for default and minRange sliders. + * @Default {[minValue,maxValue]} + */ + values?: any[]; + + /** Specifies the width of the slider. + * @Default {100%} + */ + width?: string; + + /** Fires once Slider control value is changed successfully. + */ + change?(e: ChangeEventArgs): void; + + /** Fires once Slider control has been created successfully. + */ + create?(e: CreateEventArgs): void; + + /** Fires when Slider control has been destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires once Slider control is sliding successfully. + */ + slide?(e: SlideEventArgs): void; + + /** Fires once Slider control is started successfully. + */ + start?(e: StartEventArgs): void; + + /** Fires when Slider control is stopped successfully. + */ + stop?(e: StopEventArgs): void; + + /** Fires when display the custom tooltip. + */ + tooltipChange?(e: TooltipChangeEventArgs): void; + } + + export interface ChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns current handle number or index + */ + sliderIndex?: number; + + /** returns slider id. + */ + id?: string; + + /** returns the slider model. + */ + model?: ej.Slider.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns the slider value. + */ + value?: number; + + /** returns true if event triggered by interaction else returns false. + */ + isInteraction?: boolean; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the slider model + */ + model?: ej.Slider.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the slider model + */ + model?: ej.Slider.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface SlideEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns current handle number or index + */ + sliderIndex?: number; + + /** returns slider id + */ + id?: string; + + /** returns the slider model + */ + model?: ej.Slider.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the slider value + */ + value?: number; + } + + export interface StartEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns current handle number or index + */ + sliderIndex?: number; + + /** returns slider id + */ + id?: string; + + /** returns the slider model + */ + model?: ej.Slider.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the slider value + */ + value?: number; + } + + export interface StopEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns current handle number or index + */ + sliderIndex?: number; + + /** returns slider id + */ + id?: string; + + /** returns the slider model + */ + model?: ej.Slider.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the slider value + */ + value?: number; + } + + export interface TooltipChangeEventArgs { + + /** returns the cancel option value. + */ + cancel?: boolean; + + /** returns slider id. + */ + id?: string; + + /** returns true if event triggered by interaction else returns false. + */ + isInteraction?: boolean; + + /** returns the slider model. + */ + model?: ej.Slider.Model; + + /** returns current handle number or index + */ + sliderIndex?: number; + + /** returns the name of the event. + */ + type?: string; + + /** returns the slider value. + */ + value?: number; + } + } + namespace slider { + enum sliderType { + //Shows default slider + Default, + //Shows minRange slider + MinRange, + //Shows Range slider + Range, + } + } + + class SplitButton extends ej.Widget { + static fn: SplitButton; + constructor(element: JQuery | Element, options?: SplitButton.Model); + static Locale: any; + model: SplitButton.Model; + defaults: SplitButton.Model; + + /** Destroy the split button widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** To disable the split button + * @returns {void} + */ + disable(): void; + + /** To Enable the split button + * @returns {void} + */ + enable(): void; + + /** To hide the list content of the split button. + * @returns {void} + */ + hide(): void; + + /** To show the list content of the split button. + * @returns {void} + */ + show(): void; + } + export namespace SplitButton { + + export interface Model { + + /** Specifies the arrowPosition of the Split or Dropdown Button.See arrowPosition + * @Default {ej.ArrowPosition.Right} + */ + arrowPosition?: string|ej.ArrowPosition; + + /** Specifies the buttonMode like Split or Dropdown Button.See ButtonMode + * @Default {ej.ButtonMode.Split} + */ + buttonMode?: string|ej.ButtonMode; + + /** Specifies the contentType of the Split Button.See ContentType + * @Default {ej.ContentType.TextOnly} + */ + contentType?: string|ej.ContentType; + + /** Set the root class for Split Button control theme + */ + cssClass?: string; + + /** Specifies the disabling of Split Button if enabled is set to false. + * @Default {true} + */ + enabled?: boolean; + + /** Specifies the enableRTL property for Split Button while initialization. + * @Default {false} + */ + enableRTL?: boolean; + + /** Specifies the height of the Split Button. + * @Default {“”} + */ + height?: string|number; + + /** Specifies the HTML Attributes of the Split Button. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specifies the imagePosition of the Split Button.See imagePositions + * @Default {ej.ImagePosition.ImageRight} + */ + imagePosition?: string|ej.ImagePosition; + + /** Specifies the image content for Split Button while initialization. + */ + prefixIcon?: string; + + /** Specifies the showRoundedCorner property for Split Button while initialization. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specifies the size of the Button. See ButtonSize + * @Default {ej.ButtonSize.Normal} + */ + size?: string|ej.ButtonSize; + + /** Specifies the image content for Split Button while initialization. + */ + suffixIcon?: string; + + /** Specifies the list content for Split Button while initialization + */ + targetID?: string; + + /** Specifies the text content for Split Button while initialization. + */ + text?: string; + + /** Specifies the width of the Split Button. + * @Default {“”} + */ + width?: string|number; + + /** Fires before menu of the split button control is opened. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + + /** Fires when Button control is clicked successfully + */ + click?(e: ClickEventArgs): void; + + /** Fires before the list content of Button control is closed + */ + close?(e: CloseEventArgs): void; + + /** Fires after Split Button control is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the Split Button is destroyed successfully + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when a menu item is Hovered out successfully + */ + itemMouseOut?(e: ItemMouseOutEventArgs): void; + + /** Fires when a menu item is Hovered in successfully + */ + itemMouseOver?(e: ItemMouseOverEventArgs): void; + + /** Fires when a menu item is clicked successfully + */ + itemSelected?(e: ItemSelectedEventArgs): void; + + /** Fires before the list content of Button control is opened + */ + open?(e: OpenEventArgs): void; + } + + export interface BeforeOpenEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the split button model + */ + model?: ej.SplitButton.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface ClickEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the split button model + */ + model?: ej.SplitButton.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the target of the current object. + */ + target?: any; + + /** return the button state + */ + status?: boolean; + } + + export interface CloseEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the split button model + */ + model?: ej.SplitButton.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface CreateEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the split button model + */ + model?: ej.SplitButton.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the split button model + */ + model?: ej.SplitButton.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface ItemMouseOutEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the split button model + */ + model?: ej.SplitButton.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the clicked menu item element + */ + element?: any; + + /** return the menu item id + */ + ID?: string; + + /** return the clicked menu item text + */ + Text?: string; + } + + export interface ItemMouseOverEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the split button model + */ + model?: ej.SplitButton.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the clicked menu item element + */ + element?: any; + + /** return the menu item id + */ + ID?: string; + + /** return the clicked menu item text + */ + Text?: string; + } + + export interface ItemSelectedEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the split button model + */ + model?: ej.SplitButton.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the clicked menu item element + */ + element?: any; + + /** returns the selected item + */ + selectedItem?: any; + + /** return the menu id + */ + menuId?: string; + + /** return the clicked menu item text + */ + menuText?: string; + } + + export interface OpenEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the split button model + */ + model?: ej.SplitButton.Model; + + /** returns the name of the event + */ + type?: string; + } + } + enum ArrowPosition { + //To set Left arrowPosition of the split button + Left, + //To set Right arrowPosition of the split button + Right, + //To set Top arrowPosition of the split button + Top, + //To set Bottom arrowPosition of the split button + Bottom, + } + + class Splitter extends ej.Widget { + static fn: Splitter; + constructor(element: JQuery | Element, options?: Splitter.Model); + static Locale: any; + model: Splitter.Model; + defaults: Splitter.Model; + + /** To add a new pane to splitter control. + * @param {string} content of pane. + * @param {any} pane properties. + * @param {number} index of pane. + * @returns {HTMLElement} + */ + addItem(content: string, property: any, index: number): HTMLElement; + + /** To collapse the splitter control pane. + * @param {number} index number of pane. + * @returns {void} + */ + collapse(paneIndex: number): void; + + /** To expand the splitter control pane. + * @param {number} index number of pane. + * @returns {void} + */ + expand(paneIndex: number): void; + + /** To refresh the splitter control pane resizing. + * @returns {void} + */ + refresh(): void; + + /** To remove a specified pane from the splitter control. + * @param {number} index of pane. + * @returns {void} + */ + removeItem(index: number): void; + } + export namespace Splitter { + + export interface Model { + + /** Turns on keyboard interaction with the Splitter panes. You must set this property to true to access the keyboard shortcuts of ejSplitter. + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** Specify animation speed for the Splitter pane movement, while collapsing and expanding. + * @Default {300} + */ + animationSpeed?: number; + + /** Specify the CSS class to splitter control to achieve custom theme. + * @Default {“”} + */ + cssClass?: string; + + /** Specifies the animation behavior of the splitter. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Specifies the splitter control to be displayed in right to left direction. + * @Default {false} + */ + enableRTL?: boolean; + + /** Specify height for splitter control. + * @Default {null} + */ + height?: string; + + /** Specifies the HTML Attributes of the Splitter. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specify window resizing behavior for splitter control. + * @Default {false} + */ + isResponsive?: boolean; + + /** Specify the orientation for splitter control. See orientation + * @Default {ej.orientation.Horizontal or “horizontal”} + */ + orientation?: ej.Orientation|string; + + /** Specify properties for each pane like paneSize, minSize, maxSize, collapsible, expandable, resizable. + * @Default {[]} + */ + properties?: any[]; + + /** Specify width for splitter control. + * @Default {null} + */ + width?: string; + + /** Fires before expanding / collapsing the split pane of splitter control. + */ + beforeExpandCollapse?(e: BeforeExpandCollapseEventArgs): void; + + /** Fires when splitter control pane has been created. + */ + create?(e: CreateEventArgs): void; + + /** Fires when splitter control pane has been destroyed. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when expand / collapse operation in splitter control pane has been performed successfully. + */ + expandCollapse?(e: ExpandCollapseEventArgs): void; + + /** Fires when resize in splitter control pane. + */ + resize?(e: ResizeEventArgs): void; + } + + export interface BeforeExpandCollapseEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns collapsed pane details. + */ + collapsed?: any; + + /** returns expanded pane details. + */ + expanded?: any; + + /** returns the splitter model. + */ + model?: ej.Splitter.Model; + + /** returns the current split bar index. + */ + splitbarIndex?: number; + + /** returns the name of the event. + */ + type?: string; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the splitter model. + */ + model?: ej.Splitter.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the splitter model. + */ + model?: ej.Splitter.Model; + + /** returns the name of the event. + */ + type?: string; + } + + export interface ExpandCollapseEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns collapsed pane details. + */ + collapsed?: any; + + /** returns expanded pane details. + */ + expanded?: any; + + /** returns the splitter model. + */ + model?: ej.Splitter.Model; + + /** returns the current split bar index. + */ + splitbarIndex?: number; + + /** returns the name of the event. + */ + type?: string; + } + + export interface ResizeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns previous pane details. + */ + prevPane?: any; + + /** returns next pane details. + */ + nextPane?: any; + + /** returns the splitter model. + */ + model?: ej.Splitter.Model; + + /** returns the current split bar index. + */ + splitbarIndex?: number; + + /** returns the name of the event. + */ + type?: string; + } + } + + class Tab extends ej.Widget { + static fn: Tab; + constructor(element: JQuery | Element, options?: Tab.Model); + static Locale: any; + model: Tab.Model; + defaults: Tab.Model; + + /** Add new tab items with given name, URL and given index position, if index null it’s add last item. + * @param {string} URL name / tab id. + * @param {string} Tab Display name. + * @param {number} Index position to placed , this is optional. + * @param {string} specifies cssClass, this is optional. + * @param {string} specifies id of tab, this is optional. + * @returns {void} + */ + addItem(URL: string, displayLabel: string, index: number, cssClass: string, id: string): void; + + /** To disable the tab control. + * @returns {void} + */ + disable(): void; + + /** To enable the tab control. + * @returns {void} + */ + enable(): void; + + /** This function get the number of tab rendered + * @returns {number} + */ + getItemsCount(): number; + + /** This function hides the tab control. + * @returns {void} + */ + hide(): void; + + /** This function hides the specified item tab in tab control. + * @param {number} index of tab item. + * @returns {void} + */ + hideItem(index: number): void; + + /** Remove the given index tab item. + * @param {number} index of tab item. + * @returns {void} + */ + removeItem(index: number): void; + + /** This function is to show the tab control. + * @returns {void} + */ + show(): void; + + /** This function helps to show the specified hidden tab item in tab control. + * @param {number} index of tab item. + * @returns {void} + */ + showItem(index: number): void; + } + export namespace Tab { + + export interface Model { + + /** Specifies the ajaxSettings option to load the content to the Tab control. + */ + ajaxSettings?: AjaxSettings; + + /** Tab items interaction with keyboard keys, like headers active navigation. + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** Allow to collapsing the active item, while click on the active header. + * @Default {false} + */ + collapsible?: boolean; + + /** Set the root class for Tab theme. This cssClass API helps to use custom skinning option for Tab control. + */ + cssClass?: string; + + /** Disables the given tab headers and content panels. + * @Default {[]} + */ + disabledItemIndex?: number[]; + + /** Specifies the animation behavior of the tab. + * @Default {true} + */ + enableAnimation?: boolean; + + /** When this property is set to false, it disables the tab control. + * @Default {true} + */ + enabled?: boolean; + + /** Enables the given tab headers and content panels. + * @Default {[]} + */ + enabledItemIndex?: number[]; + + /** Save current model value to browser cookies for state maintains. While refresh the Tab control page the model value apply from browser cookies. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Display Right to Left direction for headers and panels text of tab. + * @Default {false} + */ + enableRTL?: boolean; + + /** Specify to enable scrolling for Tab header. + * @Default {false} + */ + enableTabScroll?: boolean; + + /** The event API to bind the action for active the tab items. + * @Default {click} + */ + events?: string; + + /** Specifies the position of Tab header as top, bottom, left or right. See below to get available Position + * @Default {top} + */ + headerPosition?: string|ej.Tab.Position; + + /** Set the height of the tab header element. Default this property value is null, so height take content height. + * @Default {null} + */ + headerSize?: string|number; + + /** Height set the outer panel element. Default this property value is null, so height take content height. + * @Default {null} + */ + height?: string|number; + + /** Adjust the content panel height for given option (content, auto and fill), by default panels height adjust based on the content.See below to get available HeightAdjustMode + * @Default {content} + */ + heightAdjustMode?: string|ej.Tab.HeightAdjustMode; + + /** Specifies to hide a pane of Tab control. + * @Default {[]} + */ + hiddenItemIndex?: any[]; + + /** Specifies the HTML Attributes of the Tab. + * @Default {{}} + */ + htmlAttributes?: any; + + /** The idPrefix property appends the given string on the added tab item id’s in runtime. + * @Default {ej-tab-} + */ + idPrefix?: string; + + /** Specifies the Tab header in active for given index value. + * @Default {0} + */ + selectedItemIndex?: number; + + /** Display the close button for each tab items. While clicking on the close icon, particular tab item will be removed. + * @Default {false} + */ + showCloseButton?: boolean; + + /** Display the Reload button for each tab items. + * @Default {false} + */ + showReloadIcon?: boolean; + + /** Tab panels and headers to be displayed in rounded corner style. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Set the width for outer panel element, if not it’s take parent width. + * @Default {null} + */ + width?: string|number; + + /** Triggered after a tab item activated. + */ + itemActive?(e: ItemActiveEventArgs): void; + + /** Triggered before AJAX content has been loaded. + */ + ajaxBeforeLoad?(e: AjaxBeforeLoadEventArgs): void; + + /** Triggered if error occurs in AJAX request. + */ + ajaxError?(e: AjaxErrorEventArgs): void; + + /** Triggered after AJAX content load action. + */ + ajaxLoad?(e: AjaxLoadEventArgs): void; + + /** Triggered after a tab item activated. + */ + ajaxSuccess?(e: AjaxSuccessEventArgs): void; + + /** Triggered before a tab item activated. + */ + beforeActive?(e: BeforeActiveEventArgs): void; + + /** Triggered before a tab item remove. + */ + beforeItemRemove?(e: BeforeItemRemoveEventArgs): void; + + /** Triggered before a tab item Create. + */ + create?(e: CreateEventArgs): void; + + /** Triggered before a tab item destroy. + */ + destroy?(e: DestroyEventArgs): void; + + /** Triggered after new tab item add + */ + itemAdd?(e: ItemAddEventArgs): void; + + /** Triggered after tab item removed. + */ + itemRemove?(e: ItemRemoveEventArgs): void; + } + + export interface ItemActiveEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the tab model. + */ + model?: ej.Tab.Model; + + /** returns the name of the event. + */ + type?: string; + + /** returns previous active tab header. + */ + prevActiveHeader?: HTMLElement; + + /** returns previous active index. + */ + prevActiveIndex?: number; + + /** returns current active tab header . + */ + activeHeader?: HTMLElement; + + /** returns current active index. + */ + activeIndex?: number; /** returns, is it triggered by interaction or not. */ - isInteraction?: boolean; - } + isInteraction?: boolean; + } - export interface AjaxBeforeLoadEventArgs { + export interface AjaxBeforeLoadEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event. + */ + type?: string; - /** returns previous active tab header. - */ - prevActiveHeader?: HTMLElement; + /** returns previous active tab header. + */ + prevActiveHeader?: HTMLElement; - /** returns previous active index. - */ - prevActiveIndex?: number; + /** returns previous active index. + */ + prevActiveIndex?: number; - /** returns current active tab header . - */ - activeHeader?: HTMLElement; + /** returns current active tab header . + */ + activeHeader?: HTMLElement; - /** returns current active index. - */ - activeIndex?: number; + /** returns current active index. + */ + activeIndex?: number; - /** returns the URL of AJAX request - */ - URL?: string; + /** returns the URL of AJAX request + */ + URL?: string; - /** returns, is it triggered by interaction or not. - */ - isInteraction?: boolean; - } + /** returns, is it triggered by interaction or not. + */ + isInteraction?: boolean; + } - export interface AjaxErrorEventArgs { + export interface AjaxErrorEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event. + */ + type?: string; - /** returns AJAX data details. - */ - data?: any; + /** returns AJAX data details. + */ + data?: any; - /** returns the URL of AJAX request. - */ - URL?: string; - } + /** returns the URL of AJAX request. + */ + URL?: string; + } - export interface AjaxLoadEventArgs { + export interface AjaxLoadEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event. + */ + type?: string; - /** returns previous active tab header. - */ - prevActiveHeader?: HTMLElement; + /** returns previous active tab header. + */ + prevActiveHeader?: HTMLElement; - /** returns previous active index. - */ - prevActiveIndex?: number; + /** returns previous active index. + */ + prevActiveIndex?: number; - /** returns current active tab header . - */ - activeHeader?: HTMLElement; + /** returns current active tab header . + */ + activeHeader?: HTMLElement; - /** returns current active index. - */ - activeIndex?: number; + /** returns current active index. + */ + activeIndex?: number; - /** returns the URL of AJAX request - */ - URL?: string; + /** returns the URL of AJAX request + */ + URL?: string; - /** returns, is it triggered by interaction or not. - */ - isInteraction?: boolean; - } + /** returns, is it triggered by interaction or not. + */ + isInteraction?: boolean; + } - export interface AjaxSuccessEventArgs { + export interface AjaxSuccessEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event. + */ + type?: string; - /** return AJAX data. - */ - data?: any; + /** return AJAX data. + */ + data?: any; - /** returns AJAX URL - */ - URL?: string; + /** returns AJAX URL + */ + URL?: string; - /** returns content of AJAX request. - */ - content?: any; - } + /** returns content of AJAX request. + */ + content?: any; + } - export interface BeforeActiveEventArgs { + export interface BeforeActiveEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event. + */ + type?: string; - /** returns previous active tab header. - */ - prevActiveHeader?: HTMLElement; + /** returns previous active tab header. + */ + prevActiveHeader?: HTMLElement; - /** returns previous active index. - */ - prevActiveIndex?: number; + /** returns previous active index. + */ + prevActiveIndex?: number; - /** returns current active tab header . - */ - activeHeader?: HTMLElement; + /** returns current active tab header . + */ + activeHeader?: HTMLElement; - /** returns current active index. - */ - activeIndex?: number; + /** returns current active index. + */ + activeIndex?: number; - /** returns, is it triggered by interaction or not. - */ - isInteraction?: boolean; - } + /** returns, is it triggered by interaction or not. + */ + isInteraction?: boolean; + } - export interface BeforeItemRemoveEventArgs { + export interface BeforeItemRemoveEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event. + */ + type?: string; - /** returns current tab item index - */ - index?: number; - } + /** returns current tab item index + */ + index?: number; + } - export interface CreateEventArgs { + export interface CreateEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; - } + /** returns the name of the event. + */ + type?: string; + } - export interface DestroyEventArgs { + export interface DestroyEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; - } + /** returns the name of the event. + */ + type?: string; + } - export interface ItemAddEventArgs { + export interface ItemAddEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event. + */ + type?: string; - /** returns new added tab header. - */ - tabHeader?: HTMLElement; + /** returns new added tab header. + */ + tabHeader?: HTMLElement; - /** returns new added tab content panel. - */ - tabContent?: any; - } + /** returns new added tab content panel. + */ + tabContent?: any; + } - export interface ItemRemoveEventArgs { + export interface ItemRemoveEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the tab model. - */ - model?: ej.Tab.Model; + /** returns the tab model. + */ + model?: ej.Tab.Model; - /** returns the name of the event. - */ - type?: string; + /** returns the name of the event. + */ + type?: string; - /** returns removed tab header. - */ - removedTab?: HTMLElement; - } + /** returns removed tab header. + */ + removedTab?: HTMLElement; + } - export interface AjaxSettings { + export interface AjaxSettings { - /** It specifies, whether to enable or disable asynchronous request. - * @Default {true} - */ - async?: boolean; + /** It specifies, whether to enable or disable asynchronous request. + * @Default {true} + */ + async?: boolean; - /** It specifies the page will be cached in the web browser. - * @Default {false} - */ - cache?: boolean; + /** It specifies the page will be cached in the web browser. + * @Default {false} + */ + cache?: boolean; - /** It specifies the type of data is send in the query string. - * @Default {html} - */ - contentType?: string; + /** It specifies the type of data is send in the query string. + * @Default {html} + */ + contentType?: string; - /** It specifies the data as an object, will be passed in the query string. - * @Default {{}} - */ - data?: any; + /** It specifies the data as an object, will be passed in the query string. + * @Default {{}} + */ + data?: any; - /** It specifies the type of data that you're expecting back from the response. - * @Default {html} - */ - dataType?: string; + /** It specifies the type of data that you're expecting back from the response. + * @Default {html} + */ + dataType?: string; - /** It specifies the HTTP request type. - * @Default {get} - */ - type?: string; - } - - enum Position { - - ///Tab headers display to top position - Top, - - ///Tab headers display to bottom position - Bottom, - - ///Tab headers display to left position. - Left, - - ///Tab headers display to right position. - Right - } - - - enum HeightAdjustMode { - - ///string - None, - - ///string - Content, - - ///string - Auto, - - ///string - Fill - } - - } - - class TagCloud extends ej.Widget { - static fn: TagCloud; - constructor(element: JQuery | Element, options?: TagCloud.Model); - static Locale: any; - model: TagCloud.Model; - defaults: TagCloud.Model; - - /** Inserts a new item into the TagCloud - * @param {string} Insert new item into the TagCloud - * @returns {void} - */ - insert(name: string): void; - - /** Inserts a new item into the TagCloud at a particular position. - * @param {string} Inserts a new item into the TagCloud - * @param {number} Inserts a new item into the TagCloud with the specified position - * @returns {void} - */ - insertAt(name: string, position: number): void; - - /** Removes the item from the TagCloud based on the name. It removes all the tags which have the corresponding name - * @param {string} name of the tag. - * @returns {void} - */ - remove(name: string): void; - - /** Removes the item from the TagCloud based on the position. It removes the tags from the the corresponding position only. - * @param {number} position of tag item. - * @returns {void} - */ - removeAt(position: number): void; - } - export namespace TagCloud { - - export interface Model { - - /** Specify the CSS class to button to achieve custom theme. - */ - cssClass?: string; - - /** The dataSource contains the list of data to display in a cloud format. Each data contains a link URL, frequency to categorize the font size and a display text. - * @Default {null} - */ - dataSource?: any; - - /** Sets the TagCloud and tag items direction as right to left alignment. - * @Default {false} - */ - enableRTL?: boolean; - - /** Defines the mapping fields for the data items of the TagCloud. - * @Default {null} - */ - fields?: Fields; + /** It specifies the HTTP request type. + * @Default {get} + */ + type?: string; + } + + enum Position { + + ///Tab headers display to top position + Top, + + ///Tab headers display to bottom position + Bottom, + + ///Tab headers display to left position. + Left, + + ///Tab headers display to right position. + Right + } + + + enum HeightAdjustMode { + + ///string + None, + + ///string + Content, + + ///string + Auto, + + ///string + Fill + } + + } + + class TagCloud extends ej.Widget { + static fn: TagCloud; + constructor(element: JQuery | Element, options?: TagCloud.Model); + static Locale: any; + model: TagCloud.Model; + defaults: TagCloud.Model; + + /** Inserts a new item into the TagCloud + * @param {string} Insert new item into the TagCloud + * @returns {void} + */ + insert(name: string): void; + + /** Inserts a new item into the TagCloud at a particular position. + * @param {string} Inserts a new item into the TagCloud + * @param {number} Inserts a new item into the TagCloud with the specified position + * @returns {void} + */ + insertAt(name: string, position: number): void; + + /** Removes the item from the TagCloud based on the name. It removes all the tags which have the corresponding name + * @param {string} name of the tag. + * @returns {void} + */ + remove(name: string): void; + + /** Removes the item from the TagCloud based on the position. It removes the tags from the the corresponding position only. + * @param {number} position of tag item. + * @returns {void} + */ + removeAt(position: number): void; + } + export namespace TagCloud { + + export interface Model { + + /** Specify the CSS class to button to achieve custom theme. + */ + cssClass?: string; + + /** The dataSource contains the list of data to display in a cloud format. Each data contains a link URL, frequency to categorize the font size and a display text. + * @Default {null} + */ + dataSource?: any; + + /** Sets the TagCloud and tag items direction as right to left alignment. + * @Default {false} + */ + enableRTL?: boolean; + + /** Defines the mapping fields for the data items of the TagCloud. + * @Default {null} + */ + fields?: Fields; + + /** Specifies the list of HTML attributes to be added to TagCloud control. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Defines the format for the TagCloud to display the tag items.See Format + * @Default {ej.Format.Cloud} + */ + format?: string|ej.Format; + + /** Sets the maximum font size value for the tag items. The font size for the tag items will be generated in between the minimum and maximum font size values. + * @Default {40px} + */ + maxFontSize?: string|number; + + /** Sets the minimum font size value for the tag items. The font size for the tag items will be generated in between the minimum and maximum font size values. + * @Default {10px} + */ + minFontSize?: string|number; + + /** Define the query to retrieve the data from online server. The query is used only when the online dataSource is used. + * @Default {null} + */ + query?: any; + + /** Shows or hides the TagCloud title. When this set to false, it hides the TagCloud header. + * @Default {true} + */ + showTitle?: boolean; + + /** Sets the title image for the TagCloud. To show the title image, the showTitle property should be enabled. + * @Default {null} + */ + titleImage?: string; + + /** Sets the title text for the TagCloud. To show the title text, the showTitle property should be enabled. + * @Default {Title} + */ + titleText?: string; + + /** Event triggers when the TagCloud items are clicked + */ + click?(e: ClickEventArgs): void; + + /** Event triggers when the TagCloud are created + */ + create?(e: CreateEventArgs): void; + + /** Event triggers when the TagCloud are destroyed + */ + destroy?(e: DestroyEventArgs): void; + + /** Event triggers when the cursor leaves out from a tag item + */ + mouseout?(e: MouseoutEventArgs): void; + + /** Event triggers when the cursor hovers on a tag item + */ + mouseover?(e: MouseoverEventArgs): void; + } + + export interface ClickEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TagCloud model + */ + model?: ej.TagCloud.Model; + + /** returns the name of the event + */ + type?: string; + + /** return current tag name + */ + text?: string; + + /** return current URL link + */ + URL?: string; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TagCloud model + */ + model?: ej.TagCloud.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TagCloud model + */ + model?: ej.TagCloud.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface MouseoutEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TagCloud model + */ + model?: ej.TagCloud.Model; + + /** returns the name of the event + */ + type?: string; + + /** return current tag name + */ + text?: string; + + /** return current URL link + */ + URL?: string; + } + + export interface MouseoverEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TagCloud model + */ + model?: ej.TagCloud.Model; + + /** returns the name of the event + */ + type?: string; + + /** return current tag name + */ + text?: string; + + /** return current URL link + */ + URL?: string; + } + + export interface Fields { + + /** Defines the frequency column number to categorize the font size. + */ + frequency?: string; + + /** Defines the HTML attributes column for the anchor elements inside the each tag items. + */ + htmlAttributes?: string; + + /** Defines the tag value or display text. + */ + text?: string; + + /** Defines the URL link to navigate while click the tag. + */ + url?: string; + } + } + enum Format { + //To render the TagCloud items in cloud format + Cloud, + //To render the TagCloud items in list format + List, + } + + class TimePicker extends ej.Widget { + static fn: TimePicker; + constructor(element: JQuery | Element, options?: TimePicker.Model); + static Locale: any; + model: TimePicker.Model; + defaults: TimePicker.Model; + + /** Allows you to disable the TimePicker. + * @returns {void} + */ + disable(): void; + + /** Allows you to enable the TimePicker. + * @returns {void} + */ + enable(): void; + + /** It returns the current time value. + * @returns {string} + */ + getValue(): string; + + /** This method will hide the TimePicker control popup. + * @returns {void} + */ + hide(): void; + + /** Updates the current system time in TimePicker. + * @returns {void} + */ + setCurrentTime(): void; + + /** This method will show the TimePicker control popup. + * @returns {void} + */ + show(): void; + } + export namespace TimePicker { + + export interface Model { + + /** Sets the root CSS class for the TimePicker theme, which is used to customize. + */ + cssClass?: string; + + /** Specifies the list of time range to be disabled. + * @Default {{}} + */ + disableTimeRanges?: any; + + /** Specifies the animation behavior in TimePicker. + * @Default {true} + */ + enableAnimation?: boolean; + + /** When this property is set to false, it disables the TimePicker control. + * @Default {true} + */ + enabled?: boolean; + + /** Save current model value to browser cookies for maintaining states. When refreshing the TimePicker control page, the model value is applied from browser cookies or HTML 5local + * storage. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Displays the TimePicker as right to left alignment. + * @Default {false} + */ + enableRTL?: boolean; + + /** When the enableStrictMode is set as true it allows the value outside of the range and also indicate with red color border, otherwise it internally changed to the min or max range + * value based an input value. + * @Default {false} + */ + enableStrictMode?: boolean; + + /** Defines the height of the TimePicker textbox. + */ + height?: string|number; + + /** Sets the step value for increment an hour value through arrow keys or mouse scroll. + * @Default {1} + */ + hourInterval?: number; + + /** It allows to define the characteristics of the TimePicker control. It will helps to extend the capability of an HTML element. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Sets the time interval between the two adjacent time values in the popup. + * @Default {30} + */ + interval?: number; + + /** Defines the localization info used by the TimePicker. + * @Default {en-US} + */ + locale?: string; + + /** Sets the maximum time value to the TimePicker. + * @Default {11:59:59 PM} + */ + maxTime?: string; + + /** Sets the minimum time value to the TimePicker. + * @Default {12:00:00 AM} + */ + minTime?: string; + + /** Sets the step value for increment the minute value through arrow keys or mouse scroll. + * @Default {1} + */ + minutesInterval?: number; + + /** Defines the height of the TimePicker popup. + * @Default {191px} + */ + popupHeight?: string|number; + + /** Defines the width of the TimePicker popup. + * @Default {auto} + */ + popupWidth?: string|number; + + /** Toggles the readonly state of the TimePicker. When the widget is readOnly, it doesn’t allow your input. + * @Default {false} + */ + readOnly?: boolean; + + /** Sets the step value for increment the seconds value through arrow keys or mouse scroll. + * @Default {1} + */ + secondsInterval?: number; + + /** shows or hides the drop down button in TimePicker. + * @Default {true} + */ + showPopupButton?: boolean; + + /** TimePicker is displayed with rounded corner when this property is set to true. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Defines the time format displayed in the TimePicker. + * @Default {h:mm tt} + */ + timeFormat?: string; + + /** Sets a specified time value on the TimePicker. + * @Default {null} + */ + value?: string|Date; + + /** Defines the width of the TimePicker textbox. + */ + width?: string|number; + + /** Fires when the time value changed in the TimePicker. + */ + beforeChange?(e: BeforeChangeEventArgs): void; + + /** Fires when the TimePicker popup before opened. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + + /** Fires when the time value changed in the TimePicker. + */ + change?(e: ChangeEventArgs): void; + + /** Fires when the TimePicker popup closed. + */ + close?(e: CloseEventArgs): void; + + /** Fires when create TimePicker successfully. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the TimePicker is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when the TimePicker control gets focus. + */ + focusIn?(e: FocusInEventArgs): void; + + /** Fires when the TimePicker control get lost focus. + */ + focusOut?(e: FocusOutEventArgs): void; + + /** Fires when the TimePicker popup opened. + */ + open?(e: OpenEventArgs): void; + + /** Fires when the value is selected from the TimePicker dropdown list. + */ + select?(e: SelectEventArgs): void; + } + + export interface BeforeChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; + + /** returns the name of the event + */ + type?: string; - /** Specifies the list of HTML attributes to be added to TagCloud control. - * @Default {{}} - */ - htmlAttributes?: any; + /** returns the previously selected time value + */ + prevTime?: string; - /** Defines the format for the TagCloud to display the tag items.See Format - * @Default {ej.Format.Cloud} - */ - format?: string | ej.Format; + /** returns the modified time value + */ + value?: string; + } - /** Sets the maximum font size value for the tag items. The font size for the tag items will be generated in between the minimum and maximum font size values. - * @Default {40px} - */ - maxFontSize?: string | number; + export interface BeforeOpenEventArgs { - /** Sets the minimum font size value for the tag items. The font size for the tag items will be generated in between the minimum and maximum font size values. - * @Default {10px} - */ - minFontSize?: string | number; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Define the query to retrieve the data from online server. The query is used only when the online dataSource is used. - * @Default {null} - */ - query?: any; - - /** Shows or hides the TagCloud title. When this set to false, it hides the TagCloud header. - * @Default {true} - */ - showTitle?: boolean; - - /** Sets the title image for the TagCloud. To show the title image, the showTitle property should be enabled. - * @Default {null} - */ - titleImage?: string; - - /** Sets the title text for the TagCloud. To show the title text, the showTitle property should be enabled. - * @Default {Title} - */ - titleText?: string; - - /** Event triggers when the TagCloud items are clicked */ - click?(e: ClickEventArgs): void; - - /** Event triggers when the TagCloud are created */ - create?(e: CreateEventArgs): void; - - /** Event triggers when the TagCloud are destroyed */ - destroy?(e: DestroyEventArgs): void; - - /** Event triggers when the cursor leaves out from a tag item */ - mouseout?(e: MouseoutEventArgs): void; - - /** Event triggers when the cursor hovers on a tag item */ - mouseover?(e: MouseoverEventArgs): void; - } - - export interface ClickEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TagCloud model - */ - model?: ej.TagCloud.Model; - - /** returns the name of the event - */ - type?: string; + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; - /** return current tag name - */ - text?: string; - - /** return current URL link - */ - URL?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TagCloud model - */ - model?: ej.TagCloud.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TagCloud model - */ - model?: ej.TagCloud.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface MouseoutEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TagCloud model - */ - model?: ej.TagCloud.Model; - - /** returns the name of the event - */ - type?: string; - - /** return current tag name - */ - text?: string; - - /** return current URL link - */ - URL?: string; - } - - export interface MouseoverEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TagCloud model - */ - model?: ej.TagCloud.Model; - - /** returns the name of the event - */ - type?: string; - - /** return current tag name - */ - text?: string; - - /** return current URL link - */ - URL?: string; - } - - export interface Fields { - - /** Defines the frequency column number to categorize the font size. - */ - frequency?: string; - - /** Defines the HTML attributes column for the anchor elements inside the each tag items. - */ - htmlAttributes?: string; - - /** Defines the tag value or display text. - */ - text?: string; - - /** Defines the URL link to navigate while click the tag. - */ - url?: string; - } - } - enum Format { - //To render the TagCloud items in cloud format - Cloud, - //To render the TagCloud items in list format - List, - } - - class TimePicker extends ej.Widget { - static fn: TimePicker; - constructor(element: JQuery | Element, options?: TimePicker.Model); - static Locale: any; - model: TimePicker.Model; - defaults: TimePicker.Model; - - /** Allows you to disable the TimePicker. - * @returns {void} - */ - disable(): void; - - /** Allows you to enable the TimePicker. - * @returns {void} - */ - enable(): void; - - /** It returns the current time value. - * @returns {string} - */ - getValue(): string; - - /** This method will hide the TimePicker control popup. - * @returns {void} - */ - hide(): void; - - /** Updates the current system time in TimePicker. - * @returns {void} - */ - setCurrentTime(): void; - - /** This method will show the TimePicker control popup. - * @returns {void} - */ - show(): void; - } - export namespace TimePicker { - - export interface Model { - - /** Sets the root CSS class for the TimePicker theme, which is used to customize. - */ - cssClass?: string; - - /** Specifies the list of time range to be disabled. - * @Default {{}} - */ - disableTimeRanges?: any; - - /** Specifies the animation behavior in TimePicker. - * @Default {true} - */ - enableAnimation?: boolean; - - /** When this property is set to false, it disables the TimePicker control. - * @Default {true} - */ - enabled?: boolean; - - /** Save current model value to browser cookies for maintaining states. When refreshing the TimePicker control page, the model value is applied from browser cookies or HTML 5local storage. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Displays the TimePicker as right to left alignment. - * @Default {false} - */ - enableRTL?: boolean; - - /** When the enableStrictMode is set as true it allows the value outside of the range and also indicate with red color border, - * otherwise it internally changed to the min or max range value based an input value. - * @Default {false} - */ - enableStrictMode?: boolean; - - /** Defines the height of the TimePicker textbox. - */ - height?: string | number; - - /** Sets the step value for increment an hour value through arrow keys or mouse scroll. - * @Default {1} - */ - hourInterval?: number; - - /** It allows to define the characteristics of the TimePicker control. It will helps to extend the capability of an HTML element. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Sets the time interval between the two adjacent time values in the popup. - * @Default {30} - */ - interval?: number; - - /** Defines the localization info used by the TimePicker. - * @Default {en-US} - */ - locale?: string; - - /** Sets the maximum time value to the TimePicker. - * @Default {11:59:59 PM} - */ - maxTime?: string; - - /** Sets the minimum time value to the TimePicker. - * @Default {12:00:00 AM} - */ - minTime?: string; - - /** Sets the step value for increment the minute value through arrow keys or mouse scroll. - * @Default {1} - */ - minutesInterval?: number; - - /** Defines the height of the TimePicker popup. - * @Default {191px} - */ - popupHeight?: string | number; - - /** Defines the width of the TimePicker popup. - * @Default {auto} - */ - popupWidth?: string | number; - - /** Toggles the readonly state of the TimePicker - * @Default {false} - */ - readOnly?: boolean; - - /** Sets the step value for increment the seconds value through arrow keys or mouse scroll. - * @Default {1} - */ - secondsInterval?: number; - - /** shows or hides the drop down button in TimePicker. - * @Default {true} - */ - showPopupButton?: boolean; - - /** TimePicker is displayed with rounded corner when this property is set to true. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Defines the time format displayed in the TimePicker. - * @Default {h:mm tt} - */ - timeFormat?: string; - - /** Sets a specified time value on the TimePicker. - * @Default {null} - */ - value?: string | Date; - - /** Defines the width of the TimePicker textbox. - */ - width?: string | number; - - /** Fires when the time value changed in the TimePicker. */ - beforeChange?(e: BeforeChangeEventArgs): void; - - /** Fires when the TimePicker popup before opened. */ - beforeOpen?(e: BeforeOpenEventArgs): void; + /** returns the name of the event + */ + type?: string; - /** Fires when the time value changed in the TimePicker. */ - change?(e: ChangeEventArgs): void; - - /** Fires when the TimePicker popup closed. */ - close?(e: CloseEventArgs): void; - - /** Fires when create TimePicker successfully. */ - create?(e: CreateEventArgs): void; + /** returns the previously selected time value + */ + prevTime?: string; - /** Fires when the TimePicker is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; + /** returns the time value + */ + value?: string; + } - /** Fires when the TimePicker control gets focus. */ - focusIn?(e: FocusInEventArgs): void; + export interface ChangeEventArgs { - /** Fires when the TimePicker control get lost focus. */ - focusOut?(e: FocusOutEventArgs): void; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Fires when the TimePicker popup opened. */ - open?(e: OpenEventArgs): void; + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; - /** Fires when the value is selected from the TimePicker dropdown list. */ - select?(e: SelectEventArgs): void; - } + /** returns the name of the event + */ + type?: string; - export interface BeforeChangeEventArgs { + /** returns true when the value changed by user interaction otherwise returns false + */ + isInteraction?: boolean; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the previously selected time value + */ + prevTime?: string; - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; + /** returns the modified time value + */ + value?: string; + } - /** returns the name of the event - */ - type?: string; + export interface CloseEventArgs { - /** returns the previously selected time value - */ - prevTime?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the modified time value - */ - value?: string; - } + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; - export interface BeforeOpenEventArgs { + /** returns the name of the event + */ + type?: string; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the previously selected time value + */ + prevTime?: string; - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; + /** returns the time value + */ + value?: string; + } - /** returns the name of the event - */ - type?: string; + export interface CreateEventArgs { - /** returns the previously selected time value - */ - prevTime?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the time value - */ - value?: string; - } + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; - export interface ChangeEventArgs { + /** returns the name of the event + */ + type?: string; + } - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface DestroyEventArgs { - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; - /** returns true when the value changed by user interaction otherwise returns false - */ - isInteraction?: boolean; + /** returns the name of the event + */ + type?: string; + } - /** returns the previously selected time value - */ - prevTime?: string; + export interface FocusInEventArgs { - /** returns the modified time value - */ - value?: string; - } + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface CloseEventArgs { + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: string; - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; + /** returns the previously selected time value + */ + prevTime?: string; - /** returns the name of the event - */ - type?: string; + /** returns the current time value + */ + value?: string; + } - /** returns the previously selected time value - */ - prevTime?: string; + export interface FocusOutEventArgs { - /** returns the time value - */ - value?: string; - } + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface CreateEventArgs { + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: string; - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; + /** returns the previously selected time value + */ + prevTime?: string; - /** returns the name of the event - */ - type?: string; - } + /** returns the current time value + */ + value?: string; + } - export interface DestroyEventArgs { + export interface OpenEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the time value + */ + value?: string; + } + + export interface SelectEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TimePicker model + */ + model?: ej.TimePicker.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the previously selected time value + */ + prevTime?: string; + + /** returns the selected time value + */ + value?: string; + } + } + + class ToggleButton extends ej.Widget { + static fn: ToggleButton; + constructor(element: JQuery | Element, options?: ToggleButton.Model); + static Locale: any; + model: ToggleButton.Model; + defaults: ToggleButton.Model; + + /** Allows you to destroy the ToggleButton widget. + * @returns {void} + */ + destroy(): void; + + /** To disable the ToggleButton to prevent all user interactions. + * @returns {void} + */ + disable(): void; + + /** To enable the ToggleButton. + * @returns {void} + */ + enable(): void; + } + export namespace ToggleButton { + + export interface Model { + + /** Specify the icon in active state to the toggle button and it will be aligned from left margin of the button. + */ + activePrefixIcon?: string; + + /** Specify the icon in active state to the toggle button and it will be aligned from right margin of the button. + */ + activeSuffixIcon?: string; + + /** Sets the text when ToggleButton is in active state i.e.,checked state. + * @Default {null} + */ + activeText?: string; + + /** Specifies the contentType of the ToggleButton. See ContentType as below + * @Default {ej.ContentType.TextOnly} + */ + contentType?: ej.ContentType|string; + + /** Specify the CSS class to the ToggleButton to achieve custom theme. + */ + cssClass?: string; + + /** Specify the icon in default state to the toggle button and it will be aligned from left margin of the button. + */ + defaultPrefixIcon?: string; + + /** Specify the icon in default state to the toggle button and it will be aligned from right margin of the button. + */ + defaultSuffixIcon?: string; + + /** Specifies the text of the ToggleButton, when the control is a default state. i.e., unChecked state. + * @Default {null} + */ + defaultText?: string; + + /** Specifies the state of the ToggleButton. + * @Default {true} + */ + enabled?: boolean; + + /** Save current model value to browser cookies for maintaining states. When refreshing the ToggleButton control page, the model value is applied from browser cookies or HTML 5local + * storage. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Specify the Right to Left direction of the ToggleButton. + * @Default {false} + */ + enableRTL?: boolean; + + /** Specifies the height of the ToggleButton. + * @Default {28pixel} + */ + height?: number|string; + + /** It allows to define the characteristics of the ToggleButton control. It will helps to extend the capability of an HTML element. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specifies the image position of the ToggleButton. + * @Default {ej.ImagePosition.ImageLeft} + */ + imagePosition?: ej.ImagePosition|string; + + /** Allows to prevents the control switched to checked (active) state. + * @Default {false} + */ + preventToggle?: boolean; + + /** Displays the ToggleButton with rounded corners. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specifies the size of the ToggleButton. See ButtonSize as below + * @Default {ej.ButtonSize.Normal} + */ + size?: ej.ButtonSize|string; + + /** It allows to define the ToggleButton state to checked(Active) or unchecked(Default) at initial time. + * @Default {false} + */ + toggleState?: boolean; + + /** Specifies the type of the ToggleButton. See ButtonType as below + * @Default {ej.ButtonType.Button} + */ + type?: ej.ButtonType|string; + + /** Specifies the width of the ToggleButton. + * @Default {100pixel} + */ + width?: number|string; + + /** Fires when ToggleButton control state is changed successfully. + */ + change?(e: ChangeEventArgs): void; + + /** Fires when ToggleButton control is clicked successfully. + */ + click?(e: ClickEventArgs): void; + + /** Fires when ToggleButton control is created successfully. + */ + create?(e: CreateEventArgs): void; + + /** Fires when ToggleButton control is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + } + + export interface ChangeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** return the toggle button checked state + */ + isChecked?: boolean; + + /** returns the toggle button model + */ + model?: ej.ToggleButton.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface ClickEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** return the toggle button checked state + */ + isChecked?: boolean; + + /** returns the toggle button model + */ + model?: ej.ToggleButton.Model; + + /** return the toggle button state + */ + status?: boolean; + + /** returns the name of the event + */ + type?: string; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the toggle button model + */ + model?: ej.ToggleButton.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the toggle button model + */ + model?: ej.ToggleButton.Model; + + /** returns the name of the event + */ + type?: string; + } + } + + class Toolbar extends ej.Widget { + static fn: Toolbar; + constructor(element: JQuery | Element, options?: Toolbar.Model); + static Locale: any; + model: Toolbar.Model; + defaults: Toolbar.Model; + + /** Deselect the specified Toolbar item. + * @param {any} The element need to be deselected + * @returns {void} + */ + deselectItem(element: any): void; + + /** Deselect the Toolbar item based on specified id. + * @param {string} The ID of the element need to be deselected + * @returns {void} + */ + deselectItemByID(ID: string): void; + + /** Allows you to destroy the Toolbar widget. + * @returns {void} + */ + destroy(): void; + + /** To disable all items in the Toolbar control. + * @returns {void} + */ + disable(): void; + + /** Disable the specified Toolbar item. + * @param {any} The element need to be disabled + * @returns {void} + */ + disableItem(element: any): void; + + /** Disable the Toolbar item based on specified item id in the Toolbar. + * @param {string} The ID of the element need to be disabled + * @returns {void} + */ + disableItemByID(ID: string): void; + + /** Enable the Toolbar if it is in disabled state. + * @returns {void} + */ + enable(): void; + + /** Enable the Toolbar item based on specified item. + * @param {any} The element need to be enabled + * @returns {void} + */ + enableItem(element: any): void; + + /** Enable the Toolbar item based on specified item id in the Toolbar. + * @param {string} The ID of the element need to be enabled + * @returns {void} + */ + enableItemByID(ID: string): void; + + /** To hide the Toolbar + * @returns {void} + */ + hide(): void; + + /** Remove the item from toolbar, based on specified item. + * @param {any} The element need to be removed + * @returns {void} + */ + removeItem(element: any): void; + + /** Remove the item from toolbar, based on specified item id in the Toolbar. + * @param {string} The ID of the element need to be removed + * @returns {void} + */ + removeItemByID(ID: string): void; + + /** Selects the item from toolbar, based on specified item. + * @param {any} The element need to be selected + * @returns {void} + */ + selectItem(element: any): void; + + /** Selects the item from toolbar, based on specified item id in the Toolbar. + * @param {string} The ID of the element need to be selected + * @returns {void} + */ + selectItemByID(ID: string): void; + + /** To show the Toolbar. + * @returns {void} + */ + show(): void; + } + export namespace Toolbar { + + export interface Model { + + /** Sets the root CSS class for Toolbar control to achieve the custom theme. + */ + cssClass?: string; + + /** Specifies dataSource value for the Toolbar control during initialization. + * @Default {null} + */ + dataSource?: any; + + /** Disables an Item or set of Items that are enabled in the Toolbar + * @Default {[]} + */ + disabledItemIndices?: any[]; + + /** Specifies the Toolbar control state. + * @Default {true} + */ + enabled?: boolean; + + /** Enables an Item or set of Items that are disabled in the Toolbar + * @Default {[]} + */ + enabledItemIndices?: any[]; + + /** Specifies enableRTL property to align the Toolbar control from right to left direction. + * @Default {false} + */ + enableRTL?: boolean; + + /** Allows to separate the each UL items in the Toolbar control. + * @Default {false} + */ + enableSeparator?: boolean; + + /** Specifies the mapping fields for the data items of the Toolbar + * @Default {null} + */ + fields?: string; + + /** Specifies the height of the Toolbar. + * @Default {28} + */ + height?: number|string; + + /** Specifies the list of HTML attributes to be added to toolbar control. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specifies whether the Toolbar control is need to be show or hide. + * @Default {false} + */ + hide?: boolean; + + /** Enables/Disables the responsive support for Toolbar items during the window resizing time. + * @Default {false} + */ + isResponsive?: boolean; + + /** Specifies the items of Toolbar + * @Default {null} + */ + Items?: Items; + + /** Specifies the Toolbar orientation. See orientation + * @Default {Horizontal} + */ + orientation?: ej.Orientation|string; + + /** Specifies the query to retrieve the data from the online server. The query is used only when the online dataSource is used. + * @Default {null} + */ + query?: any; + + /** Specifies the Toolbar responsive type. + * @Default {Popup} + */ + responsiveType?: ej.Toolbar.ResponsiveType|string; + + /** Displays the Toolbar with rounded corners. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specifies the width of the Toolbar. + */ + width?: number|string; + + /** Fires after Toolbar control is clicked. + */ + click?(e: ClickEventArgs): void; + + /** Fires after Toolbar control is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires after Toolbar control is focused. + */ + focusOut?(e: FocusOutEventArgs): void; + + /** Fires when the Toolbar is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires after Toolbar control item is hovered. + */ + itemHover?(e: ItemHoverEventArgs): void; + + /** Fires after mouse leave from Toolbar control item. + */ + itemLeave?(e: ItemLeaveEventArgs): void; + + /** Fires when the overflow popup of toolbar is opened. + */ + overflowOpen?(e: OverflowOpenEventArgs): void; + + /** Fires when the overflow popup of toolbar is closed. + */ + overflowClose?(e: OverflowCloseEventArgs): void; + } + + export interface ClickEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Toolbar model + */ + model?: ej.Toolbar.Model; + + /** returns the name of the event + */ + type?: string; + + /** returns the target of the current object. + */ + target?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the target of the current object. + */ + currentTarget?: any; - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; + /** return the Toolbar state + */ + status?: boolean; + } - /** returns the name of the event - */ - type?: string; - } + export interface CreateEventArgs { - export interface FocusInEventArgs { + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the Toolbar model + */ + model?: ej.Toolbar.Model; - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; + /** returns the name of the event + */ + type?: string; + } - /** returns the name of the event - */ - type?: string; + export interface FocusOutEventArgs { - /** returns the previously selected time value - */ - prevTime?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the current time value - */ - value?: string; - } + /** returns the Toolbar model + */ + model?: ej.Toolbar.Model; - export interface FocusOutEventArgs { + /** returns the name of the event + */ + type?: string; + } - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface DestroyEventArgs { - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; + /** returns the Toolbar model + */ + model?: ej.Toolbar.Model; - /** returns the previously selected time value - */ - prevTime?: string; + /** returns the name of the event + */ + type?: string; + } - /** returns the current time value - */ - value?: string; - } + export interface ItemHoverEventArgs { - export interface OpenEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the time value - */ - value?: string; - } - - export interface SelectEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TimePicker model - */ - model?: ej.TimePicker.Model; - - /** returns the name of the event - */ - type?: string; - - /** returns the previously selected time value - */ - prevTime?: string; - - /** returns the selected time value - */ - value?: string; - } - } - - class ToggleButton extends ej.Widget { - static fn: ToggleButton; - constructor(element: JQuery | Element, options?: ToggleButton.Model); - static Locale: any; - model: ToggleButton.Model; - defaults: ToggleButton.Model; - - /** Allows you to destroy the ToggleButton widget. - * @returns {void} - */ - destroy(): void; - - /** To disable the ToggleButton to prevent all user interactions. - * @returns {void} - */ - disable(): void; - - /** To enable the ToggleButton. - * @returns {void} - */ - enable(): void; - } - export namespace ToggleButton { - - export interface Model { - - /** Specify the icon in active state to the toggle button and it will be aligned from left margin of the button. - */ - activePrefixIcon?: string; - - /** Specify the icon in active state to the toggle button and it will be aligned from right margin of the button. - */ - activeSuffixIcon?: string; - - /** Sets the text when ToggleButton is in active state i.e.,checked state. - * @Default {null} - */ - activeText?: string; - - /** Specifies the contentType of the ToggleButton. See ContentType as below - * @Default {ej.ContentType.TextOnly} - */ - contentType?: ej.ContentType | string; - - /** Specify the CSS class to the ToggleButton to achieve custom theme. - */ - cssClass?: string; - - /** Specify the icon in default state to the toggle button and it will be aligned from left margin of the button. - */ - defaultPrefixIcon?: string; - - /** Specify the icon in default state to the toggle button and it will be aligned from right margin of the button. - */ - defaultSuffixIcon?: string; - - /** Specifies the text of the ToggleButton, when the control is a default state. i.e., unChecked state. - * @Default {null} - */ - defaultText?: string; - - /** Specifies the state of the ToggleButton. - * @Default {true} - */ - enabled?: boolean; - - /** Save current model value to browser cookies for maintaining states. When refreshing the ToggleButton control page, the model value is applied from browser cookies or HTML 5local storage. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Specify the Right to Left direction of the ToggleButton. - * @Default {false} - */ - enableRTL?: boolean; - - /** Specifies the height of the ToggleButton. - * @Default {28pixel} - */ - height?: number | string; - - /** It allows to define the characteristics of the ToggleButton control. It will helps to extend the capability of an HTML element. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specifies the image position of the ToggleButton. - * @Default {ej.ImagePosition.ImageLeft} - */ - imagePosition?: ej.ImagePosition | string; - - /** Allows to prevents the control switched to checked (active) state. - * @Default {false} - */ - preventToggle?: boolean; - - /** Displays the ToggleButton with rounded corners. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specifies the size of the ToggleButton. See ButtonSize as below - * @Default {ej.ButtonSize.Normal} - */ - size?: ej.ButtonSize | string; - - /** It allows to define the ToggleButton state to checked(Active) or unchecked(Default) at initial time. - * @Default {false} - */ - toggleState?: boolean; - - /** Specifies the type of the ToggleButton. See ButtonType as below - * @Default {ej.ButtonType.Button} - */ - type?: ej.ButtonType | string; - - /** Specifies the width of the ToggleButton. - * @Default {100pixel} - */ - width?: number | string; - - /** Fires when ToggleButton control state is changed successfully. */ - change?(e: ChangeEventArgs): void; - - /** Fires when ToggleButton control is clicked successfully. */ - click?(e: ClickEventArgs): void; - - /** Fires when ToggleButton control is created successfully. */ - create?(e: CreateEventArgs): void; - - /** Fires when ToggleButton control is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - } - - export interface ChangeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** return the toggle button checked state - */ - isChecked?: boolean; - - /** returns the toggle button model - */ - model?: ej.ToggleButton.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface ClickEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** return the toggle button checked state - */ - isChecked?: boolean; - - /** returns the toggle button model - */ - model?: ej.ToggleButton.Model; - - /** return the toggle button state - */ - status?: boolean; - - /** returns the name of the event - */ - type?: string; - } - - export interface CreateEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the toggle button model - */ - model?: ej.ToggleButton.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the toggle button model - */ - model?: ej.ToggleButton.Model; - - /** returns the name of the event - */ - type?: string; - } - } - - class Toolbar extends ej.Widget { - static fn: Toolbar; - constructor(element: JQuery | Element, options?: Toolbar.Model); - static Locale: any; - model: Toolbar.Model; - defaults: Toolbar.Model; - - /** Deselect the specified Toolbar item. - * @param {any} The element need to be deselected - * @returns {void} - */ - deselectItem(element: any): void; - - /** Deselect the Toolbar item based on specified id. - * @param {string} The ID of the element need to be deselected - * @returns {void} - */ - deselectItemByID(ID: string): void; - - /** Allows you to destroy the Toolbar widget. - * @returns {void} - */ - destroy(): void; - - /** To disable all items in the Toolbar control. - * @returns {void} - */ - disable(): void; - - /** Disable the specified Toolbar item. - * @param {any} The element need to be disabled - * @returns {void} - */ - disableItem(element: any): void; - - /** Disable the Toolbar item based on specified item id in the Toolbar. - * @param {string} The ID of the element need to be disabled - * @returns {void} - */ - disableItemByID(ID: string): void; - - /** Enable the Toolbar if it is in disabled state. - * @returns {void} - */ - enable(): void; - - /** Enable the Toolbar item based on specified item. - * @param {any} The element need to be enabled - * @returns {void} - */ - enableItem(element: any): void; - - /** Enable the Toolbar item based on specified item id in the Toolbar. - * @param {string} The ID of the element need to be enabled - * @returns {void} - */ - enableItemByID(ID: string): void; - - /** To hide the Toolbar - * @returns {void} - */ - hide(): void; - - /** Remove the item from toolbar, based on specified item. - * @param {any} The element need to be removed - * @returns {void} - */ - removeItem(element: any): void; - - /** Remove the item from toolbar, based on specified item id in the Toolbar. - * @param {string} The ID of the element need to be removed - * @returns {void} - */ - removeItemByID(ID: string): void; - - /** Selects the item from toolbar, based on specified item. - * @param {any} The element need to be selected - * @returns {void} - */ - selectItem(element: any): void; - - /** Selects the item from toolbar, based on specified item id in the Toolbar. - * @param {string} The ID of the element need to be selected - * @returns {void} - */ - selectItemByID(ID: string): void; - - /** To show the Toolbar. - * @returns {void} - */ - show(): void; - } - export namespace Toolbar { - - export interface Model { - - /** Sets the root CSS class for Toolbar control to achieve the custom theme. - */ - cssClass?: string; - - /** Specifies dataSource value for the Toolbar control during initialization. - * @Default {null} - */ - dataSource?: any; - - /** Disables an Item or set of Items that are enabled in the Toolbar - * @Default {[]} - */ - disabledItemIndices?: any[]; - - /** Specifies the Toolbar control state. - * @Default {true} - */ - enabled?: boolean; - - /** Enables an Item or set of Items that are disabled in the Toolbar - * @Default {[]} - */ - enabledItemIndices?: any[]; - - /** Specifies enableRTL property to align the Toolbar control from right to left direction. - * @Default {false} - */ - enableRTL?: boolean; - - /** Allows to separate the each UL items in the Toolbar control. - * @Default {false} - */ - enableSeparator?: boolean; - - /** Specifies the mapping fields for the data items of the Toolbar - * @Default {null} - */ - fields?: string; - - /** Specifies the height of the Toolbar. - * @Default {28} - */ - height?: number | string; - - /** Specifies the list of HTML attributes to be added to toolbar control. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specifies whether the Toolbar control is need to be show or hide. - * @Default {false} - */ - hide?: boolean; - - /** Enables/Disables the responsive support for Toolbar items during the window resizing time. - * @Default {false} - */ - isResponsive?: boolean; - - /** Specifies the items of Toolbar - * @Default {null} - */ - Items?: Items; - - /** Specifies the Toolbar orientation. See orientation - * @Default {Horizontal} - */ - orientation?: ej.Orientation | string; - - /** Specifies the query to retrieve the data from the online server. The query is used only when the online dataSource is used. - * @Default {null} - */ - query?: any; - - /** Specifies the Toolbar responsive type. - * @Default {Popup} - */ - responsiveType?: ej.Toolbar.ResponsiveType | string; - - /** Displays the Toolbar with rounded corners. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specifies the width of the Toolbar. - */ - width?: number | string; - - /** Fires after Toolbar control is clicked. */ - click?(e: ClickEventArgs): void; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Fires after Toolbar control is created. */ - create?(e: CreateEventArgs): void; - - /** Fires after Toolbar control is focused. */ - focusOut?(e: FocusOutEventArgs): void; + /** returns the Toolbar model + */ + model?: ej.Toolbar.Model; - /** Fires when the Toolbar is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; + /** returns the name of the event + */ + type?: string; - /** Fires after Toolbar control item is hovered. */ - itemHover?(e: ItemHoverEventArgs): void; + /** returns the target of the current object. + */ + target?: any; - /** Fires after mouse leave from Toolbar control item. */ - itemLeave?(e: ItemLeaveEventArgs): void; - - /** Fires when the overflow popup of toolbar is opened. */ - overflowOpen?(e: OverflowOpenEventArgs): void; + /** returns the target of the current object. + */ + currentTarget?: any; - /** Fires when the overflow popup of toolbar is closed. */ - overflowClose?(e: OverflowCloseEventArgs): void; - } + /** return the Toolbar state + */ + status?: boolean; + } - export interface ClickEventArgs { + export interface ItemLeaveEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the Toolbar model - */ - model?: ej.Toolbar.Model; + /** returns the Toolbar model + */ + model?: ej.Toolbar.Model; - /** returns the name of the event - */ - type?: string; + /** returns the name of the event + */ + type?: string; - /** returns the target of the current object. - */ - target?: any; + /** returns the target of the current object. + */ + target?: any; - /** returns the target of the current object. - */ - currentTarget?: any; + /** returns the target of the current object. + */ + currentTarget?: any; - /** return the Toolbar state - */ - status?: boolean; - } + /** return the Toolbar state + */ + status?: boolean; + } - export interface CreateEventArgs { + export interface OverflowOpenEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the Toolbar model - */ - model?: ej.Toolbar.Model; + /** returns the Toolbar model + */ + model?: ej.Toolbar.Model; - /** returns the name of the event - */ - type?: string; - } + /** returns the name of the event + */ + type?: string; - export interface FocusOutEventArgs { + /** Returns the current X position of the target . + */ + clientX?: number; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Returns the current Y position of the target . + */ + clientY?: number; - /** returns the Toolbar model - */ - model?: ej.Toolbar.Model; + /** returns the target of the current object. + */ + currentTarget?: any; + } - /** returns the name of the event - */ - type?: string; - } + export interface OverflowCloseEventArgs { - export interface DestroyEventArgs { + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the Toolbar model + */ + model?: ej.Toolbar.Model; - /** returns the Toolbar model - */ - model?: ej.Toolbar.Model; + /** returns the name of the event + */ + type?: string; - /** returns the name of the event - */ - type?: string; - } + /** Returns the current X position of the target . + */ + clientX?: number; - export interface ItemHoverEventArgs { + /** Returns the current Y position of the target . + */ + clientY?: number; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the target of the current object. + */ + currentTarget?: any; + } - /** returns the Toolbar model - */ - model?: ej.Toolbar.Model; + export interface Fields { - /** returns the name of the event - */ - type?: string; + /** Defines the group name for the item. + */ + group?: string; - /** returns the target of the current object. - */ - target?: any; + /** Defines the HTML attributes such as id, class, styles for the item to extend the capability. + */ + htmlAttributes?: any; - /** returns the target of the current object. - */ - currentTarget?: any; + /** Defines id for the tag. + */ + id?: string; - /** return the Toolbar state - */ - status?: boolean; - } + /** Defines the image attributes such as height, width, styles and so on. + */ + imageAttributes?: string; - export interface ItemLeaveEventArgs { + /** Defines the imageURL for the image location. + */ + imageUrl?: string; + + /** Defines the sprite CSS for the image tag. + */ + spriteCssClass?: string; + + /** Defines the text content for the tag. + */ + text?: string; + + /** Defines the tooltip text for the tag. + */ + tooltipText?: string; + + /** Allows you to add template as toolbar item + */ + template?: string; + } + + export interface Items { + + /** Defines the group name for the item. + */ + group?: string; + + /** Defines the HTML attributes such as id, class, styles for the item . + */ + htmlAttributes?: any; + + /** Defines id for the tag. + */ + id?: string; + + /** Defines the image attributes such as height, width, styles and so on. + */ + imageAttributes?: string; + + /** Defines the imageURL for the image location. + */ + imageUrl?: string; + + /** Defines the sprite CSS for the image tag. + */ + spriteCssClass?: string; + + /** Defines the text content for the tag. + */ + text?: string; + + /** Defines the tooltip text for the tag. + */ + tooltipText?: string; + + /** Allows to add template as toolbar item. + */ + template?: string; + } + + enum ResponsiveType { + + ///To display the toolbar overflow items as popup + Popup, + + ///To display the toolbar overflow items as inline toolbar + Inline + } + + } + + class TreeView extends ej.Widget { + static fn: TreeView; + constructor(element: JQuery | Element, options?: TreeView.Model); + static Locale: any; + model: TreeView.Model; + defaults: TreeView.Model; + + /** To add a Node or collection of nodes in TreeView. If target tree node is specified, then the given nodes are added as child of target tree node, otherwise nodes are added in + * TreeView. + * @param {string|any} New node text or JSON object + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {void} + */ + addNode(newNodeText: string|any, target: string|any): void; + + /** To add a collection of nodes in TreeView. If target tree node is specified, then the given nodes are added as child of target tree node, otherwise nodes are added in TreeView. + * @param {any|any[]} New node details in JSON object + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {void} + */ + addNodes(collection: any|any[], target: string|any): void; + + /** To check all the nodes in TreeView. + * @returns {void} + */ + checkAll(): void; + + /** To check a node in TreeView. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes + * @returns {void} + */ + checkNode(element: string|any|any[]): void; + + /** This method is used to collapse all nodes in TreeView control. If you want to collapse all nodes up to the specific level in TreeView control then we need to pass levelUntil as + * argument to this method. + * @param {number} TreeView nodes will collapse until the given level + * @param {boolean} Weather exclude the hidden nodes of TreeView while collapse all nodes + * @returns {void} + */ + collapseAll(levelUntil?: number, excludeHiddenNodes?: boolean): void; + + /** To collapse a particular node in TreeView. + * @param {string|any|any[]} ID of TreeView node|object of TreeView node/collection of ID/object of TreeView nodes + * @returns {void} + */ + collapseNode(element: string|any|any[]): void; + + /** To disable the node in the TreeView. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes + * @returns {void} + */ + disableNode(element: string|any|any[]): void; + + /** To enable the node in the TreeView. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes + * @returns {void} + */ + enableNode(element: string|any|any[]): void; + + /** To ensure that the TreeView node is visible in the TreeView. This method is useful if we need select a TreeView node dynamically. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {boolean} + */ + ensureVisible(element: string|any): boolean; + + /** This method is used to expand all nodes in TreeView control. If you want to expand all nodes up to the specific level in TreeView control then we need to pass levelUntil as + * argument to this method. + * @param {number} TreeView nodes will expand until the given level + * @param {boolean} Weather exclude the hidden nodes of TreeView while expand all nodes + * @returns {void} + */ + expandAll(levelUntil?: number, excludeHiddenNodes?: boolean): void; + + /** To expandNode particular node in TreeView. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes + * @returns {void} + */ + expandNode(element: string|any|any[]): void; + + /** To get currently checked nodes in TreeView. + * @returns {any} + */ + getCheckedNodes(): any; + + /** To get currently checked nodes indexes in TreeView. + * @returns {any[]} + */ + getCheckedNodesIndex(): any[]; + + /** This method is used to get immediate child nodes of a node in TreeView control. If you want to get the all child nodes include nested child nodes then we need to pass + * includeNestedChild as true along with element arguments to this method. + * @param {string|any} ID of TreeView node/object of TreeView node + * @param {boolean} Weather include nested child nodes of TreeView node + * @returns {any[]} + */ + getChildren(element: string|any, includeNestedChild?: boolean): any[]; + + /** To get number of nodes in TreeView. + * @returns {number} + */ + getNodeCount(): number; + + /** To get currently expanded nodes in TreeView. + * @returns {any} + */ + getExpandedNodes(): any; + + /** To get currently expanded nodes indexes in TreeView. + * @returns {any[]} + */ + getExpandedNodesIndex(): any[]; + + /** To get TreeView node by using index position in TreeView. + * @param {number} Index position of TreeView node + * @returns {any} + */ + getNodeByIndex(index: number): any; + + /** To get TreeView node data such as id, text, parentId, selected, checked, expanded, level, childes and index. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {any} + */ + getNode(element: string|any): any; + + /** To get current index position of TreeView node. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {number} + */ + getNodeIndex(element: string|any): number; + + /** To get immediate parent TreeView node of particular TreeView node. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {any} + */ + getParent(element: string|any): any; + + /** To get the currently selected node in TreeView. + * @returns {any} + */ + getSelectedNode(): any; + + /** To get the currently selected nodes in TreeView. + * @returns {any[]} + */ + getSelectedNodes(): any[]; + + /** To get the index position of currently selected node in TreeView. + * @returns {number} + */ + getSelectedNodeIndex(): number; + + /** To get the index positions of currently selected nodes in TreeView. + * @returns {any[]} + */ + getSelectedNodesIndex(): any[]; + + /** To get the text of a node in TreeView. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {string} + */ + getText(element: string|any): string; + + /** To get the updated datasource of TreeView after performing some operation like drag and drop, node editing, adding and removing node. + * @param {string|number} ID of TreeView node + * @returns {any[]} + */ + getTreeData(id?: string|number): any[]; + + /** To get currently visible nodes in TreeView. + * @returns {any} + */ + getVisibleNodes(): any; + + /** To check a node having child or not. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {boolean} + */ + hasChildNode(element: string|any): boolean; + + /** To show nodes in TreeView. + * @returns {void} + */ + hide(): void; + + /** To hide particular node in TreeView. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes + * @returns {void} + */ + hideNode(element: string|any|any[]): void; + + /** To add a Node or collection of nodes after the particular TreeView node. + * @param {string|any} New node text or JSON object + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {void} + */ + insertAfter(newNodeText: string|any, target: string|any): void; + + /** To add a Node or collection of nodes before the particular TreeView node. + * @param {string|any} New node text or JSON object + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {void} + */ + insertBefore(newNodeText: string|any, target: string|any): void; + + /** To check the given TreeView node is checked or unchecked. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {boolean} + */ + isNodeChecked(element: string|any): boolean; + + /** To check whether the child nodes are loaded of the given TreeView node. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {boolean} + */ + isChildLoaded(element: string|any): boolean; + + /** To check the given TreeView node is disabled or enabled. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {boolean} + */ + isDisabled(element: string|any): boolean; + + /** To check the given node is exist in TreeView. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {boolean} + */ + isExist(element: string|any): boolean; + + /** To get the expand status of the given TreeView node. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {boolean} + */ + isExpanded(element: string|any): boolean; + + /** To get the select status of the given TreeView node. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {boolean} + */ + isSelected(element: string|any): boolean; + + /** To get the visibility status of the given TreeView node. + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {boolean} + */ + isVisible(element: string|any): boolean; + + /** To load the TreeView nodes from the particular URL. If target tree node is specified, then the given nodes are added as child of target tree node, otherwise nodes are added in + * TreeView. + * @param {string} URL location, the data returned from the URL will be loaded in TreeView + * @param {string|any} ID of TreeView node/object of TreeView node + * @returns {void} + */ + loadData(URL: string, target: string|any): void; + + /** To move the TreeView node with in same TreeView. The new position of given TreeView node will be based on destination node and index position. + * @param {string|any} ID of TreeView node/object of TreeView node + * @param {string|any} ID of TreeView node/object of TreeView node + * @param {number} New index position of given source node + * @returns {void} + */ + moveNode(sourceNode: string|any, destinationNode: string|any, index: number): void; + + /** To refresh the TreeView + * @returns {void} + */ + refresh(): void; + + /** To remove all the nodes in TreeView. + * @returns {void} + */ + removeAll(): void; + + /** To remove a node in TreeView. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes + * @returns {void} + */ + removeNode(element: string|any|any[]): void; + + /** To select all the TreeView nodes when enable allowMultiSelection property. + * @returns {void} + */ + selectAll(): void; + + /** This method is used to select a node in TreeView control. If you want to select the collection of nodes in TreeView control then we need to enable allowMultiSelection property. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/ collection of ID/object of TreeView nodes + * @returns {void} + */ + selectNode(element: string|any|any[]): void; + + /** To show nodes in TreeView. + * @returns {void} + */ + show(): void; + + /** To show a node in TreeView. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes + * @returns {void} + */ + showNode(element: string|any|any[]): void; + + /** To uncheck all the nodes in TreeView. + * @returns {void} + */ + unCheckAll(): void; + + /** To uncheck a node in TreeView. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes + * @returns {void} + */ + uncheckNode(element: string|any|any[]): void; + + /** To unselect all the TreeView nodes when enable allowMultiSelection property. + * @returns {void} + */ + unselectAll(): void; + + /** This method is used to unselect a node in TreeView control. If you want to unselect the collection of nodes in TreeView control then we need to enable allowMultiSelection property. + * @param {string|any|any[]} ID of TreeView node/object of TreeView node/ collection of ID/object of TreeView nodes + * @returns {void} + */ + unselectNode(element: string|any|any[]): void; + + /** To edit or update the text of the TreeView node. + * @param {string|any} ID of TreeView node/object of TreeView node + * @param {string} New text + * @returns {void} + */ + updateText(target: string|any, newText: string): void; + } + export namespace TreeView { + + export interface Model { + + /** Gets or sets a value that indicates whether to enable drag and drop a node within the same tree. + * @Default {false} + */ + allowDragAndDrop?: boolean; + + /** Gets or sets a value that indicates whether to enable drag and drop a node in inter ej.TreeView. + * @Default {true} + */ + allowDragAndDropAcrossControl?: boolean; + + /** Gets or sets a value that indicates whether to drop a node to a sibling of particular node. + * @Default {true} + */ + allowDropSibling?: boolean; + + /** Gets or sets a value that indicates whether to drop a node to a child of particular node. + * @Default {true} + */ + allowDropChild?: boolean; + + /** Gets or sets a value that indicates whether to enable node editing support for TreeView. + * @Default {false} + */ + allowEditing?: boolean; + + /** Gets or sets a value that indicates whether to enable keyboard support for TreeView actions like nodeSelection, nodeEditing, nodeExpand, nodeCollapse, nodeCut and Paste. + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** Gets or sets a value that indicates whether to enable multi selection support for TreeView. + * @Default {false} + */ + allowMultiSelection?: boolean; + + /** Allow us to specify the parent and child nodes to get auto check while we check or uncheck a node. + * @Default {true} + */ + autoCheck?: boolean; + + /** Allow us to specify the parent node to be retain in checked or unchecked state instead of going for indeterminate state. + * @Default {false} + */ + autoCheckParentNode?: boolean; + + /** Gets or sets a value that indicates the checkedNodes index collection as an array. The given array index position denotes the nodes, that are checked while rendering TreeView. + * @Default {[]} + */ + checkedNodes?: any[]; + + /** Sets the root CSS class for TreeView which allow us to customize the appearance. + */ + cssClass?: string; + + /** Gets or sets a value that indicates whether to enable or disable the animation effect while expanding or collapsing a node. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Gets or sets a value that indicates whether a TreeView can be enabled or disabled. No actions can be performed while this property is set as false + * @Default {true} + */ + enabled?: boolean; + + /** Allow us to prevent multiple nodes to be in expanded state. If it set to false, previously expanded node will be collapsed automatically, while we expand a node. + * @Default {true} + */ + enableMultipleExpand?: boolean; + + /** Sets a value that indicates whether to persist the TreeView model state in page using applicable medium i.e., HTML5 localStorage or cookies + * @Default {false} + */ + enablePersistence?: boolean; + + /** Gets or sets a value that indicates to align content in the TreeView control from right to left by setting the property as true. + * @Default {false} + */ + enableRTL?: boolean; + + /** Gets or sets a array of value that indicates the expandedNodes index collection as an array. The given array index position denotes the nodes, that are expanded while rendering + * TreeView. + * @Default {[]} + */ + expandedNodes?: any[]; + + /** Gets or sets a value that indicates the TreeView node can be expand or collapse by using the specified action. + * @Default {dblclick} + */ + expandOn?: string; + + /** Gets or sets a fields object that allow us to map the data members with field properties in order to make the data binding easier. + * @Default {null} + */ + fields?: Fields; + + /** Gets or sets a value that indicates whether to enable full row selection support for TreeView. + * @Default {false} + */ + fullRowSelect?: boolean; + + /** Defines the height of the TreeView. + * @Default {Null} + */ + height?: string|number; + + /** Specifies the HTML Attributes for the TreeView. Using this API we can add custom attributes in TreeView control. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specifies the child nodes to be loaded on demand + * @Default {false} + */ + loadOnDemand?: boolean; + + /** Gets or Sets a value that indicates the index position of a tree node. The particular index tree node will be selected while rendering the TreeView. + * @Default {-1} + */ + selectedNode?: number; + + /** Gets or sets a value that indicates the selectedNodes index collection as an array. The given array index position denotes the nodes, that are selected while rendering TreeView. + * @Default {[]} + */ + selectedNodes?: any[]; + + /** Gets or sets a value that indicates whether to display or hide checkbox for all TreeView nodes. + * @Default {false} + */ + showCheckbox?: boolean; + + /** By using sortSettings property, you can customize the sorting option in TreeView control. + */ + sortSettings?: SortSettings; + + /** Allow us to use custom template in order to create TreeView. + * @Default {null} + */ + template?: string; + + /** Defines the width of the TreeView. + * @Default {Null} + */ + width?: string|number; + + /** Fires before adding node to TreeView. + */ + beforeAdd?(e: BeforeAddEventArgs): void; + + /** Fires before collapse a node. + */ + beforeCollapse?(e: BeforeCollapseEventArgs): void; + + /** Fires before cut node in TreeView. + */ + beforeCut?(e: BeforeCutEventArgs): void; + + /** Fires before deleting node in TreeView. + */ + beforeDelete?(e: BeforeDeleteEventArgs): void; + + /** Fires before editing the node in TreeView. + */ + beforeEdit?(e: BeforeEditEventArgs): void; + + /** Fires before expanding the node. + */ + beforeExpand?(e: BeforeExpandEventArgs): void; + + /** Fires before loading nodes to TreeView. + */ + beforeLoad?(e: BeforeLoadEventArgs): void; + + /** Fires before paste node in TreeView. + */ + beforePaste?(e: BeforePasteEventArgs): void; + + /** Fires before selecting node in TreeView. + */ + beforeSelect?(e: BeforeSelectEventArgs): void; + + /** Fires when TreeView created successfully. + */ + create?(e: CreateEventArgs): void; + + /** Fires when TreeView destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires before nodeEdit Successful. + */ + inlineEditValidation?(e: InlineEditValidationEventArgs): void; + + /** Fires when key pressed successfully. + */ + keyPress?(e: KeyPressEventArgs): void; + + /** Fires when data load fails. + */ + loadError?(e: LoadErrorEventArgs): void; + + /** Fires when data loaded successfully. + */ + loadSuccess?(e: LoadSuccessEventArgs): void; + + /** Fires once node added successfully. + */ + nodeAdd?(e: NodeAddEventArgs): void; + + /** Fires once node checked successfully. + */ + nodeCheck?(e: NodeCheckEventArgs): void; + + /** Fires when node clicked successfully. + */ + nodeClick?(e: NodeClickEventArgs): void; + + /** Fires when node collapsed successfully. + */ + nodeCollapse?(e: NodeCollapseEventArgs): void; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Fires when node cut successfully. + */ + nodeCut?(e: NodeCutEventArgs): void; - /** returns the Toolbar model - */ - model?: ej.Toolbar.Model; + /** Fires when node deleted successfully. + */ + nodeDelete?(e: NodeDeleteEventArgs): void; - /** returns the name of the event - */ - type?: string; + /** Fires when node dragging. + */ + nodeDrag?(e: NodeDragEventArgs): void; - /** returns the target of the current object. - */ - target?: any; + /** Fires once node drag start successfully. + */ + nodeDragStart?(e: NodeDragStartEventArgs): void; - /** returns the target of the current object. - */ - currentTarget?: any; + /** Fires before the dragged node to be dropped. + */ + nodeDragStop?(e: NodeDragStopEventArgs): void; - /** return the Toolbar state - */ - status?: boolean; - } + /** Fires once node dropped successfully. + */ + nodeDropped?(e: NodeDroppedEventArgs): void; - export interface OverflowOpenEventArgs { + /** Fires once node edited successfully. + */ + nodeEdit?(e: NodeEditEventArgs): void; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Fires once node expanded successfully. + */ + nodeExpand?(e: NodeExpandEventArgs): void; - /** returns the Toolbar model - */ - model?: ej.Toolbar.Model; + /** Fires once node pasted successfully. + */ + nodePaste?(e: NodePasteEventArgs): void; - /** returns the name of the event - */ - type?: string; + /** Fires when node selected successfully. + */ + nodeSelect?(e: NodeSelectEventArgs): void; - /** Returns the current X position of the target . - */ - clientX?: number; + /** Fires once node unchecked successfully. + */ + nodeUncheck?(e: NodeUncheckEventArgs): void; - /** Returns the current Y position of the target . - */ - clientY?: number; + /** Fires once node unselected successfully. + */ + nodeUnselect?(e: NodeUnselectEventArgs): void; - /** returns the target of the current object. - */ - currentTarget?: any; - } + /** Fires when TreeView nodes are loaded successfully + */ + ready?(e: ReadyEventArgs): void; + } - export interface OverflowCloseEventArgs { + export interface BeforeAddEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the Toolbar model - */ - model?: ej.Toolbar.Model; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the name of the event - */ - type?: string; + /** returns the name of the event + */ + type?: string; - /** Returns the current X position of the target . - */ - clientX?: number; + /** returns the given new node data + */ + data?: string|any; - /** Returns the current Y position of the target . - */ - clientY?: number; + /** returns the parent element, the given new nodes to be appended to the given parent element + */ + targetParent?: any; - /** returns the target of the current object. - */ - currentTarget?: any; - } + /** returns the given parent node details + */ + parentDetails?: any; + } - export interface Fields { + export interface BeforeCollapseEventArgs { - /** Defines the group name for the item. - */ - group?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Defines the HTML attributes such as id, class, styles for the item to extend the capability. - */ - htmlAttributes?: any; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** Defines id for the tag. - */ - id?: string; + /** returns the name of the event + */ + type?: string; - /** Defines the image attributes such as height, width, styles and so on. - */ - imageAttributes?: string; + /** returns the value of the node + */ + value?: string; - /** Defines the imageURL for the image location. - */ - imageUrl?: string; - - /** Defines the sprite CSS for the image tag. - */ - spriteCssClass?: string; - - /** Defines the text content for the tag. - */ - text?: string; - - /** Defines the tooltip text for the tag. - */ - tooltipText?: string; - - /** Allows you to add template as toolbar item - */ - template?: string; - } - - export interface Items { - - /** Defines the group name for the item. - */ - group?: string; - - /** Defines the HTML attributes such as id, class, styles for the item . - */ - htmlAttributes?: any; - - /** Defines id for the tag. - */ - id?: string; - - /** Defines the image attributes such as height, width, styles and so on. - */ - imageAttributes?: string; - - /** Defines the imageURL for the image location. - */ - imageUrl?: string; - - /** Defines the sprite CSS for the image tag. - */ - spriteCssClass?: string; - - /** Defines the text content for the tag. - */ - text?: string; - - /** Defines the tooltip text for the tag. - */ - tooltipText?: string; - - /** Allows to add template as toolbar item. - */ - template?: string; - } - - enum ResponsiveType { - - ///To display the toolbar overflow items as popup - Popup, - - ///To display the toolbar overflow items as inline toolbar - Inline - } - - } - - class TreeView extends ej.Widget { - static fn: TreeView; - constructor(element: JQuery | Element, options?: TreeView.Model); - static Locale: any; - model: TreeView.Model; - defaults: TreeView.Model; - - /** To add a Node or collection of nodes in TreeView. If target tree node is specified, then the given nodes are added as child of target tree node, otherwise nodes are added in TreeView. - * @param {string|any} New node text or JSON object - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {void} - */ - addNode(newNodeText: string | any, target: string | any): void; - - /** To add a collection of nodes in TreeView. If target tree node is specified, then the given nodes are added as child of target tree node, otherwise nodes are added in TreeView. - * @param {any|Array} New node details in JSON object - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {void} - */ - addNodes(collection: any | any[], target: string | any): void; - - /** To check all the nodes in TreeView. - * @returns {void} - */ - checkAll(): void; - - /** To check a node in TreeView. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes - * @returns {void} - */ - checkNode(element: string | any | any[]): void; - - /** This method is used to collapse all nodes in TreeView control. If you want to collapse all nodes up to the specific level in - * TreeView control then we need to pass levelUntil as argument to this method. - * @param {number} TreeView nodes will collapse until the given level - * @param {boolean} Weather exclude the hidden nodes of TreeView while collapse all nodes - * @returns {void} - */ - collapseAll(levelUntil?: number, excludeHiddenNodes?: boolean): void; - - /** To collapse a particular node in TreeView. - * @param {string|any|Array} ID of TreeView node|object of TreeView node/collection of ID/object of TreeView nodes - * @returns {void} - */ - collapseNode(element: string | any | any[]): void; - - /** To disable the node in the TreeView. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes - * @returns {void} - */ - disableNode(element: string | any | any[]): void; - - /** To enable the node in the TreeView. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes - * @returns {void} - */ - enableNode(element: string | any | any[]): void; - - /** To ensure that the TreeView node is visible in the TreeView. This method is useful if we need select a TreeView node dynamically. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {boolean} - */ - ensureVisible(element: string | any): boolean; - - /** This method is used to expand all nodes in TreeView control. If you want to expand all nodes up to the specific level in TreeView control - * then we need to pass levelUntil as argument to this method. - * @param {number} TreeView nodes will expand until the given level - * @param {boolean} Weather exclude the hidden nodes of TreeView while expand all nodes - * @returns {void} - */ - expandAll(levelUntil?: number, excludeHiddenNodes?: boolean): void; - - /** To expandNode particular node in TreeView. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes - * @returns {void} - */ - expandNode(element: string | any | any[]): void; - - /** To get currently checked nodes in TreeView. - * @returns {any} - */ - getCheckedNodes(): any; - - /** To get currently checked nodes indexes in TreeView. - * @returns {Array} - */ - getCheckedNodesIndex(): any[]; - - /** This method is used to get immediate child nodes of a node in TreeView control. If you want to get the all child nodes include nested - * child nodes then we need to pass includeNestedChild as true along with element arguments to this method. - * @param {string|any} ID of TreeView node/object of TreeView node - * @param {boolean} Weather include nested child nodes of TreeView node - * @returns {Array} - */ - getChildren(element: string | any, includeNestedChild?: boolean): any[]; - - /** To get number of nodes in TreeView. - * @returns {number} - */ - getNodeCount(): number; - - /** To get currently expanded nodes in TreeView. - * @returns {any} - */ - getExpandedNodes(): any; - - /** To get currently expanded nodes indexes in TreeView. - * @returns {Array} - */ - getExpandedNodesIndex(): any[]; - - /** To get TreeView node by using index position in TreeView. - * @param {number} Index position of TreeView node - * @returns {any} - */ - getNodeByIndex(index: number): any; - - /** To get TreeView node data such as id, text, parentId, selected, checked, expanded, level, childes and index. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {any} - */ - getNode(element: string | any): any; - - /** To get current index position of TreeView node. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {number} - */ - getNodeIndex(element: string | any): number; - - /** To get immediate parent TreeView node of particular TreeView node. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {any} - */ - getParent(element: string | any): any; - - /** To get the currently selected node in TreeView. - * @returns {any} - */ - getSelectedNode(): any; - - /** To get the currently selected nodes in TreeView. - * @returns {Array} - */ - getSelectedNodes(): any[]; - - /** To get the index position of currently selected node in TreeView. - * @returns {number} - */ - getSelectedNodeIndex(): number; - - /** To get the index positions of currently selected nodes in TreeView. - * @returns {Array} - */ - getSelectedNodesIndex(): any[]; - - /** To get the text of a node in TreeView. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {string} - */ - getText(element: string | any): string; - - /** To get the updated datasource of TreeView after performing some operation like drag and drop, node editing, adding and removing node. - * @param {string|number} ID of TreeView node - * @returns {Array} - */ - getTreeData(id?: string | number): any[]; - - /** To get currently visible nodes in TreeView. - * @returns {any} - */ - getVisibleNodes(): any; - - /** To check a node having child or not. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {boolean} - */ - hasChildNode(element: string | any): boolean; - - /** To show nodes in TreeView. - * @returns {void} - */ - hide(): void; - - /** To hide particular node in TreeView. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes - * @returns {void} - */ - hideNode(element: string | any | any[]): void; - - /** To add a Node or collection of nodes after the particular TreeView node. - * @param {string|any} New node text or JSON object - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {void} - */ - insertAfter(newNodeText: string | any, target: string | any): void; - - /** To add a Node or collection of nodes before the particular TreeView node. - * @param {string|any} New node text or JSON object - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {void} - */ - insertBefore(newNodeText: string | any, target: string | any): void; - - /** To check the given TreeView node is checked or unchecked. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {boolean} - */ - isNodeChecked(element: string | any): boolean; - - /** To check whether the child nodes are loaded of the given TreeView node. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {boolean} - */ - isChildLoaded(element: string | any): boolean; - - /** To check the given TreeView node is disabled or enabled. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {boolean} - */ - isDisabled(element: string | any): boolean; - - /** To check the given node is exist in TreeView. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {boolean} - */ - isExist(element: string | any): boolean; - - /** To get the expand status of the given TreeView node. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {boolean} - */ - isExpanded(element: string | any): boolean; - - /** To get the select status of the given TreeView node. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {boolean} - */ - isSelected(element: string | any): boolean; - - /** To get the visibility status of the given TreeView node. - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {boolean} - */ - isVisible(element: string | any): boolean; - - /** To load the TreeView nodes from the particular URL. If target tree node is specified, then the given nodes are added as child of target tree node, otherwise nodes are added in TreeView. - * @param {string} URL location, the data returned from the URL will be loaded in TreeView - * @param {string|any} ID of TreeView node/object of TreeView node - * @returns {void} - */ - loadData(URL: string, target: string | any): void; - - /** To move the TreeView node with in same TreeView. The new position of given TreeView node will be based on destination node and index position. - * @param {string|any} ID of TreeView node/object of TreeView node - * @param {string|any} ID of TreeView node/object of TreeView node - * @param {number} New index position of given source node - * @returns {void} - */ - moveNode(sourceNode: string | any, destinationNode: string | any, index: number): void; - - /** To refresh the TreeView - * @returns {void} - */ - refresh(): void; - - /** To remove all the nodes in TreeView. - * @returns {void} - */ - removeAll(): void; - - /** To remove a node in TreeView. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes - * @returns {void} - */ - removeNode(element: string | any | any[]): void; - - /** To select all the TreeView nodes when enable allowMultiSelection property. - * @returns {void} - */ - selectAll(): void; - - /** This method is used to select a node in TreeView control. If you want to select the collection of nodes in TreeView control then we need to enable allowMultiSelection property. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/ collection of ID/object of TreeView nodes - * @returns {void} - */ - selectNode(element: string | any | any[]): void; - - /** To show nodes in TreeView. - * @returns {void} - */ - show(): void; - - /** To show a node in TreeView. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes - * @returns {void} - */ - showNode(element: string | any | any[]): void; - - /** To uncheck all the nodes in TreeView. - * @returns {void} - */ - unCheckAll(): void; - - /** To uncheck a node in TreeView. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/collection of ID/object of TreeView nodes - * @returns {void} - */ - uncheckNode(element: string | any | any[]): void; - - /** To unselect all the TreeView nodes when enable allowMultiSelection property. - * @returns {void} - */ - unselectAll(): void; - - /** This method is used to unselect a node in TreeView control. If you want to unselect the collection of nodes in TreeView control then we need to enable allowMultiSelection property. - * @param {string|any|Array} ID of TreeView node/object of TreeView node/ collection of ID/object of TreeView nodes - * @returns {void} - */ - unselectNode(element: string | any | any[]): void; - - /** To edit or update the text of the TreeView node. - * @param {string|any} ID of TreeView node/object of TreeView node - * @param {string} New text - * @returns {void} - */ - updateText(target: string | any, newText: string): void; - } - export namespace TreeView { - - export interface Model { - - /** Gets or sets a value that indicates whether to enable drag and drop a node within the same tree. - * @Default {false} - */ - allowDragAndDrop?: boolean; - - /** Gets or sets a value that indicates whether to enable drag and drop a node in inter ej.TreeView. - * @Default {true} - */ - allowDragAndDropAcrossControl?: boolean; - - /** Gets or sets a value that indicates whether to drop a node to a sibling of particular node. - * @Default {true} - */ - allowDropSibling?: boolean; - - /** Gets or sets a value that indicates whether to drop a node to a child of particular node. - * @Default {true} - */ - allowDropChild?: boolean; - - /** Gets or sets a value that indicates whether to enable node editing support for TreeView. - * @Default {false} - */ - allowEditing?: boolean; - - /** Gets or sets a value that indicates whether to enable keyboard support for TreeView actions like nodeSelection, nodeEditing, nodeExpand, nodeCollapse, nodeCut and Paste. - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** Gets or sets a value that indicates whether to enable multi selection support for TreeView. - * @Default {false} - */ - allowMultiSelection?: boolean; - - /** Allow us to specify the parent and child nodes to get auto check while we check or uncheck a node. - * @Default {true} - */ - autoCheck?: boolean; - - /** Allow us to specify the parent node to be retain in checked or unchecked state instead of going for indeterminate state. - * @Default {false} - */ - autoCheckParentNode?: boolean; - - /** Gets or sets a value that indicates the checkedNodes index collection as an array. The given array index position denotes the nodes, that are checked while rendering TreeView. - * @Default {[]} - */ - checkedNodes?: any[]; - - /** Sets the root CSS class for TreeView which allow us to customize the appearance. - */ - cssClass?: string; - - /** Gets or sets a value that indicates whether to enable or disable the animation effect while expanding or collapsing a node. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Gets or sets a value that indicates whether a TreeView can be enabled or disabled. No actions can be performed while this property is set as false - * @Default {true} - */ - enabled?: boolean; - - /** Allow us to prevent multiple nodes to be in expanded state. If it set to false, previously expanded node will be collapsed automatically, while we expand a node. - * @Default {true} - */ - enableMultipleExpand?: boolean; - - /** Sets a value that indicates whether to persist the TreeView model state in page using applicable medium i.e., HTML5 localStorage or cookies - * @Default {false} - */ - enablePersistence?: boolean; - - /** Gets or sets a value that indicates to align content in the TreeView control from right to left by setting the property as true. - * @Default {false} - */ - enableRTL?: boolean; - - /** Gets or sets a array of value that indicates the expandedNodes index collection as an array. The given array index position denotes the nodes, that are expanded while rendering TreeView. - * @Default {[]} - */ - expandedNodes?: any[]; - - /** Gets or sets a value that indicates the TreeView node can be expand or collapse by using the specified action. - * @Default {dblclick} - */ - expandOn?: string; - - /** Gets or sets a fields object that allow us to map the data members with field properties in order to make the data binding easier. - * @Default {null} - */ - fields?: Fields; - - /** Gets or sets a value that indicates whether to enable full row selection support for TreeView. - * @Default {false} - */ - fullRowSelect?: boolean; - - /** Defines the height of the TreeView. - * @Default {Null} - */ - height?: string | number; - - /** Specifies the HTML Attributes for the TreeView. Using this API we can add custom attributes in TreeView control. - * @Default {{}} - */ - htmlAttributes?: any; + /** returns the current element of the node clicked + */ + currentElement?: any; - /** Specifies the child nodes to be loaded on demand - * @Default {false} - */ - loadOnDemand?: boolean; + /** returns the child nodes are loaded or not + */ + isChildLoaded?: boolean; - /** Gets or Sets a value that indicates the index position of a tree node. The particular index tree node will be selected while rendering the TreeView. - * @Default {-1} - */ - selectedNode?: number; + /** returns the id of currently clicked node + */ + id?: string; - /** Gets or sets a value that indicates the selectedNodes index collection as an array. The given array index position denotes the nodes, that are selected while rendering TreeView. - * @Default {[]} - */ - selectedNodes?: any[]; + /** returns the parent id of currently clicked node + */ + parentId?: string; - /** Gets or sets a value that indicates whether to display or hide checkbox for all TreeView nodes. - * @Default {false} - */ - showCheckbox?: boolean; + /** returns the format asynchronous or synchronous + */ + async?: boolean; + } - /** By using sortSettings property, you can customize the sorting option in TreeView control. - */ - sortSettings?: SortSettings; + export interface BeforeCutEventArgs { - /** Allow us to use custom template in order to create TreeView. - * @Default {null} - */ - template?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Defines the width of the TreeView. - * @Default {Null} - */ - width?: string | number; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** Fires before adding node to TreeView. */ - beforeAdd?(e: BeforeAddEventArgs): void; + /** returns the name of the event + */ + type?: string; - /** Fires before collapse a node. */ - beforeCollapse?(e: BeforeCollapseEventArgs): void; + /** returns the event object + */ + event?: any; - /** Fires before cut node in TreeView. */ - beforeCut?(e: BeforeCutEventArgs): void; + /** returns the target element, the given node to be cut + */ + target?: any; - /** Fires before deleting node in TreeView. */ - beforeDelete?(e: BeforeDeleteEventArgs): void; + /** returns the given target node values + */ + nodeDetails?: any; - /** Fires before editing the node in TreeView. */ - beforeEdit?(e: BeforeEditEventArgs): void; + /** returns the key pressed key code value + */ + keyCode?: number; + } - /** Fires before expanding the node. */ - beforeExpand?(e: BeforeExpandEventArgs): void; + export interface BeforeDeleteEventArgs { - /** Fires before loading nodes to TreeView. */ - beforeLoad?(e: BeforeLoadEventArgs): void; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Fires before paste node in TreeView. */ - beforePaste?(e: BeforePasteEventArgs): void; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** Fires before selecting node in TreeView. */ - beforeSelect?(e: BeforeSelectEventArgs): void; + /** returns the name of the event + */ + type?: string; - /** Fires when TreeView created successfully. */ - create?(e: CreateEventArgs): void; + /** returns the event object + */ + event?: any; - /** Fires when TreeView destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; + /** returns the target element, the given node to be deleted + */ + target?: any; - /** Fires before nodeEdit Successful. */ - inlineEditValidation?(e: InlineEditValidationEventArgs): void; + /** returns the given target node values + */ + nodeDetails?: any; - /** Fires when key pressed successfully. */ - keyPress?(e: KeyPressEventArgs): void; + /** returns the current parent element of the target node + */ + parentElement?: any; - /** Fires when data load fails. */ - loadError?(e: LoadErrorEventArgs): void; + /** returns the parent node values + */ + parentDetails?: any; - /** Fires when data loaded successfully. */ - loadSuccess?(e: LoadSuccessEventArgs): void; + /** returns the currently removed nodes + */ + removedNodes?: any[]; + } - /** Fires once node added successfully. */ - nodeAdd?(e: NodeAddEventArgs): void; + export interface BeforeEditEventArgs { - /** Fires once node checked successfully. */ - nodeCheck?(e: NodeCheckEventArgs): void; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Fires when node clicked successfully. */ - nodeClick?(e: NodeClickEventArgs): void; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** Fires when node collapsed successfully. */ - nodeCollapse?(e: NodeCollapseEventArgs): void; + /** returns the name of the event + */ + type?: string; - /** Fires when node cut successfully. */ - nodeCut?(e: NodeCutEventArgs): void; + /** returns the current element of the node clicked + */ + currentElement?: any; + } - /** Fires when node deleted successfully. */ - nodeDelete?(e: NodeDeleteEventArgs): void; + export interface BeforeExpandEventArgs { - /** Fires when node dragging. */ - nodeDrag?(e: NodeDragEventArgs): void; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Fires once node drag start successfully. */ - nodeDragStart?(e: NodeDragStartEventArgs): void; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** Fires before the dragged node to be dropped. */ - nodeDragStop?(e: NodeDragStopEventArgs): void; + /** returns the name of the event + */ + type?: string; - /** Fires once node dropped successfully. */ - nodeDropped?(e: NodeDroppedEventArgs): void; + /** returns the value of the node + */ + value?: string; - /** Fires once node edited successfully. */ - nodeEdit?(e: NodeEditEventArgs): void; + /** if the child node is ready to expanded state; otherwise, false. + */ + isChildLoaded?: boolean; - /** Fires once node expanded successfully. */ - nodeExpand?(e: NodeExpandEventArgs): void; + /** returns the current element of the node clicked + */ + currentElement?: any; - /** Fires once node pasted successfully. */ - nodePaste?(e: NodePasteEventArgs): void; + /** returns the id of currently clicked node + */ + id?: string; - /** Fires when node selected successfully. */ - nodeSelect?(e: NodeSelectEventArgs): void; + /** returns the parent id of currently clicked node + */ + parentId?: string; - /** Fires once node unchecked successfully. */ - nodeUncheck?(e: NodeUncheckEventArgs): void; + /** returns the format asynchronous or synchronous + */ + async?: boolean; + } - /** Fires once node unselected successfully. */ - nodeUnselect?(e: NodeUnselectEventArgs): void; + export interface BeforeLoadEventArgs { - /** Fires when TreeView nodes are loaded successfully */ - ready?(e: ReadyEventArgs): void; - } + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface BeforeAddEventArgs { + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: string; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the AJAX settings object + */ + AjaxOptions?: any; + } - /** returns the name of the event - */ - type?: string; + export interface BeforePasteEventArgs { - /** returns the given new node data - */ - data?: string | any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the parent element, the given new nodes to be appended to the given parent element - */ - targetParent?: any; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the given parent node details - */ - parentDetails?: any; - } + /** returns the name of the event + */ + type?: string; - export interface BeforeCollapseEventArgs { + /** returns the event object + */ + event?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the target element, the given node to be pasted + */ + target?: any; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the given target node values + */ + nodeDetails?: any; - /** returns the name of the event - */ - type?: string; + /** returns the key pressed key code value + */ + keyCode?: number; + } - /** returns the value of the node - */ - value?: string; + export interface BeforeSelectEventArgs { - /** returns the current element of the node clicked - */ - currentElement?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the child nodes are loaded or not - */ - isChildLoaded?: boolean; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the id of currently clicked node - */ - id?: string; + /** returns the name of the event + */ + type?: string; - /** returns the parent id of currently clicked node - */ - parentId?: string; + /** returns the target element, the given node to be selected + */ + target?: any; - /** returns the format asynchronous or synchronous - */ - async?: boolean; - } + /** returns the given target node values + */ + nodeDetails?: any; + } - export interface BeforeCutEventArgs { + export interface CreateEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the name of the event - */ - type?: string; + /** returns the name of the event + */ + type?: string; + } - /** returns the event object - */ - event?: any; + export interface DestroyEventArgs { - /** returns the target element, the given node to be cut - */ - target?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the given target node values - */ - nodeDetails?: any; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the key pressed key code value - */ - keyCode?: number; - } + /** returns the name of the event + */ + type?: string; + } - export interface BeforeDeleteEventArgs { + export interface InlineEditValidationEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the name of the event - */ - type?: string; + /** returns the name of the event + */ + type?: string; - /** returns the event object - */ - event?: any; + /** returns the new entered text for the node + */ + newText?: string; - /** returns the target element, the given node to be deleted - */ - target?: any; + /** returns the current node element id + */ + id?: any; - /** returns the given target node values - */ - nodeDetails?: any; + /** returns the old node text + */ + oldText?: string; + } - /** returns the current parent element of the target node - */ - parentElement?: any; + export interface KeyPressEventArgs { - /** returns the parent node values - */ - parentDetails?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the currently removed nodes - */ - removedNodes?: any[]; - } + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - export interface BeforeEditEventArgs { + /** returns the name of the event + */ + type?: string; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the event object + */ + event?: any; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the current element of the node clicked + */ + currentElement?: any; - /** returns the name of the event - */ - type?: string; + /** returns the value of the node + */ + value?: string; - /** returns the current element of the node clicked - */ - currentElement?: any; - } + /** returns node path from root element + */ + path?: string; - export interface BeforeExpandEventArgs { + /** returns the key pressed key code value + */ + keyCode?: number; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** it returns when the current node is in expanded state; otherwise, false. + */ + isExpanded?: boolean; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the id of current TreeView node + */ + id?: string; - /** returns the name of the event - */ - type?: string; + /** returns the parentId of current TreeView node + */ + parentId?: string; + } - /** returns the value of the node - */ - value?: string; + export interface LoadErrorEventArgs { - /** if the child node is ready to expanded state; otherwise, false. - */ - isChildLoaded?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the current element of the node clicked - */ - currentElement?: any; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the id of currently clicked node - */ - id?: string; + /** returns the name of the event + */ + type?: string; - /** returns the parent id of currently clicked node - */ - parentId?: string; + /** returns the AJAX error object + */ + error?: any; + } - /** returns the format asynchronous or synchronous - */ - async?: boolean; - } + export interface LoadSuccessEventArgs { - export interface BeforeLoadEventArgs { + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the name of the event + */ + type?: string; - /** returns the name of the event - */ - type?: string; + /** returns the success data from the URL + */ + data?: any; - /** returns the AJAX settings object - */ - AjaxOptions?: any; - } + /** returns the target parent element, the data returned from the URL to be appended to the given parent element, else in TreeView + */ + targetParent?: any; - export interface BeforePasteEventArgs { + /** returns the given parent node details + */ + parentDetails?: any; + } - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface NodeAddEventArgs { - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the event object - */ - event?: any; + /** returns the name of the event + */ + type?: string; - /** returns the target element, the given node to be pasted - */ - target?: any; + /** returns the added data, that are given initially + */ + data?: any; - /** returns the given target node values - */ - nodeDetails?: any; + /** returns the newly added elements + */ + nodes?: any; - /** returns the key pressed key code value - */ - keyCode?: number; - } + /** returns the target parent element of the added element + */ + parentElement?: any; - export interface BeforeSelectEventArgs { + /** returns the given parent node details + */ + parentDetails?: any; + } - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface NodeCheckEventArgs { - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the target element, the given node to be selected - */ - target?: any; + /** returns the name of the event + */ + type?: string; - /** returns the given target node values - */ - nodeDetails?: any; - } + /** returns the event object + */ + event?: any; - export interface CreateEventArgs { + /** returns the value of the node + */ + value?: string; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the id of the current element of the node clicked + */ + id?: string; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the id of the parent element of current element of the node clicked + */ + parentId?: string; - /** returns the name of the event - */ - type?: string; - } + /** returns the current element of the node clicked + */ + currentElement?: any; - export interface DestroyEventArgs { + /** it returns true when the node checkbox is checked; otherwise, false. + */ + isChecked?: boolean; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** it returns the currently checked node name + */ + currentNode?: any[]; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** it returns the currently checked and its child node details + */ + currentCheckedNodes?: any[]; + } - /** returns the name of the event - */ - type?: string; - } + export interface NodeClickEventArgs { - export interface InlineEditValidationEventArgs { + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the name of the event + */ + type?: string; - /** returns the name of the event - */ - type?: string; + /** returns the event object + */ + event?: any; - /** returns the new entered text for the node - */ - newText?: string; + /** returns the current element of the node clicked + */ + currentElement?: any; - /** returns the current node element id - */ - id?: any; + /** returns the id of currently clicked TreeView node + */ + id?: string; - /** returns the old node text - */ - oldText?: string; - } + /** returns the parentId of currently clicked TreeView node + */ + parentId?: string; + } - export interface KeyPressEventArgs { + export interface NodeCollapseEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the name of the event - */ - type?: string; + /** returns the id of the current element of the node clicked + */ + id?: string; - /** returns the event object - */ - event?: any; + /** returns the name of the event + */ + type?: string; - /** returns the current element of the node clicked - */ - currentElement?: any; + /** returns the id of the parent element of current element of the node clicked + */ + parentId?: string; - /** returns the value of the node - */ - value?: string; + /** returns the value of the node + */ + value?: string; - /** returns node path from root element - */ - path?: string; + /** returns the current element of the node clicked + */ + currentElement?: any; - /** returns the key pressed key code value - */ - keyCode?: number; + /** returns the child nodes are loaded or not + */ + isChildLoaded?: boolean; - /** it returns when the current node is in expanded state; otherwise, false. - */ - isExpanded?: boolean; + /** returns the format asynchronous or synchronous + */ + async?: boolean; + } - /** returns the id of current TreeView node - */ - id?: string; + export interface NodeCutEventArgs { - /** returns the parentId of current TreeView node - */ - parentId?: string; - } + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface LoadErrorEventArgs { + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: string; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the event object + */ + event?: any; - /** returns the name of the event - */ - type?: string; + /** returns the current parent element of the cut node + */ + parentElement?: any; - /** returns the AJAX error object - */ - error?: any; - } + /** returns the given parent node details + */ + parentDetails?: any; - export interface LoadSuccessEventArgs { + /** returns the key pressed key code value + */ + keyCode?: number; + } - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface NodeDeleteEventArgs { - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the success data from the URL - */ - data?: any; + /** returns the name of the event + */ + type?: string; - /** returns the target parent element, the data returned from the URL to be appended to the given parent element, else in TreeView - */ - targetParent?: any; + /** returns the event object + */ + event?: any; - /** returns the given parent node details - */ - parentDetails?: any; - } + /** returns the current parent element of the deleted node + */ + parentElement?: any; - export interface NodeAddEventArgs { + /** returns the given parent node details + */ + parentDetails?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the currently removed nodes + */ + removedNodes?: any[]; + } - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + export interface NodeDragEventArgs { - /** returns the name of the event - */ - type?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the added data, that are given initially - */ - data?: any; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the newly added elements - */ - nodes?: any; + /** returns the name of the event + */ + type?: string; - /** returns the target parent element of the added element - */ - parentElement?: any; + /** returns the original drag target + */ + dragTarget?: any; - /** returns the given parent node details - */ - parentDetails?: any; - } + /** returns the current target TreeView node + */ + target?: any; - export interface NodeCheckEventArgs { + /** returns the current target details + */ + targetElementData?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the current parent element of the target node + */ + draggedElement?: any; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the given parent node details + */ + draggedElementData?: any; - /** returns the name of the event - */ - type?: string; + /** returns the event object + */ + event?: any; + } - /** returns the event object - */ - event?: any; + export interface NodeDragStartEventArgs { - /** returns the value of the node - */ - value?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the id of the current element of the node clicked - */ - id?: string; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the id of the parent element of current element of the node clicked - */ - parentId?: string; + /** returns the name of the event + */ + type?: string; - /** returns the current element of the node clicked - */ - currentElement?: any; + /** returns the original drag target + */ + dragTarget?: any; - /** it returns true when the node checkbox is checked; otherwise, false. - */ - isChecked?: boolean; + /** returns the current dragging parent TreeView node + */ + parentElement?: any; - /** it returns the currently checked node name - */ - currentNode?: any[]; + /** returns the current dragging parent TreeView node details + */ + parentElementData?: any; - /** it returns the currently checked and its child node details - */ - currentCheckedNodes?: any[]; - } + /** returns the current parent element of the dragging node + */ + target?: any; - export interface NodeClickEventArgs { + /** returns the given parent node details + */ + targetElementData?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the event object + */ + event?: any; + } - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + export interface NodeDragStopEventArgs { - /** returns the name of the event - */ - type?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the event object - */ - event?: any; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the current element of the node clicked - */ - currentElement?: any; + /** returns the name of the event + */ + type?: string; - /** returns the id of currently clicked TreeView node - */ - id?: string; + /** returns the original drop target + */ + dropTarget?: any; - /** returns the parentId of currently clicked TreeView node - */ - parentId?: string; - } + /** returns the current dragged TreeView node + */ + draggedElement?: any; - export interface NodeCollapseEventArgs { + /** returns the current dragged TreeView node details + */ + draggedElementData?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the current parent element of the dragged node + */ + target?: any; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the given parent node details + */ + targetElementData?: any; - /** returns the id of the current element of the node clicked - */ - id?: string; + /** returns the drop position such as before, after or over + */ + position?: string; - /** returns the name of the event - */ - type?: string; + /** returns the event object + */ + event?: any; + } - /** returns the id of the parent element of current element of the node clicked - */ - parentId?: string; + export interface NodeDroppedEventArgs { - /** returns the value of the node - */ - value?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the current element of the node clicked - */ - currentElement?: any; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the child nodes are loaded or not - */ - isChildLoaded?: boolean; + /** returns the name of the event + */ + type?: string; - /** returns the format asynchronous or synchronous - */ - async?: boolean; - } + /** returns the original drop target + */ + dropTarget?: any; - export interface NodeCutEventArgs { + /** returns the current dropped TreeView node + */ + droppedElement?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the current dropped TreeView node details + */ + droppedElementData?: any; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the current parent element of the dropped node + */ + target?: any; - /** returns the name of the event - */ - type?: string; + /** returns the given parent node details + */ + targetElementData?: any; - /** returns the event object - */ - event?: any; + /** returns the drop position such as before, after or over + */ + position?: string; - /** returns the current parent element of the cut node - */ - parentElement?: any; + /** returns the event object + */ + event?: any; + } - /** returns the given parent node details - */ - parentDetails?: any; + export interface NodeEditEventArgs { - /** returns the key pressed key code value - */ - keyCode?: number; - } + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface NodeDeleteEventArgs { + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: string; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the id of the element + */ + id?: string; - /** returns the name of the event - */ - type?: string; + /** returns the oldText of the element + */ + oldText?: string; - /** returns the event object - */ - event?: any; + /** returns the newText of the element + */ + newText?: string; - /** returns the current parent element of the deleted node - */ - parentElement?: any; + /** returns the event object + */ + event?: any; - /** returns the given parent node details - */ - parentDetails?: any; + /** returns the target element, the given node to be cut + */ + target?: any; - /** returns the currently removed nodes - */ - removedNodes?: any[]; - } + /** returns the given target node values + */ + nodeDetails?: any; + } - export interface NodeDragEventArgs { + export interface NodeExpandEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the name of the event - */ - type?: string; + /** returns the name of the event + */ + type?: string; - /** returns the original drag target - */ - dragTarget?: any; + /** returns the value of the node + */ + value?: string; - /** returns the current target TreeView node - */ - target?: any; + /** if the child node is ready to expanded state; otherwise, false. + */ + isChildLoaded?: boolean; - /** returns the current target details - */ - targetElementData?: any; + /** returns the current element of the node clicked + */ + currentElement?: any; - /** returns the current parent element of the target node - */ - draggedElement?: any; + /** returns the id of currently clicked node + */ + id?: string; - /** returns the given parent node details - */ - draggedElementData?: any; + /** returns the parent id of currently clicked node + */ + parentId?: string; - /** returns the event object - */ - event?: any; - } + /** returns the format asynchronous or synchronous + */ + async?: boolean; + } - export interface NodeDragStartEventArgs { + export interface NodePasteEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the name of the event - */ - type?: string; + /** returns the name of the event + */ + type?: string; - /** returns the original drag target - */ - dragTarget?: any; + /** returns the event object + */ + event?: any; - /** returns the current dragging parent TreeView node - */ - parentElement?: any; + /** returns the pasted element + */ + target?: any; - /** returns the current dragging parent TreeView node details - */ - parentElementData?: any; + /** returns the given target node values + */ + nodeDetails?: any; - /** returns the current parent element of the dragging node - */ - target?: any; + /** returns the key pressed key code value + */ + keyCode?: number; + } - /** returns the given parent node details - */ - targetElementData?: any; + export interface NodeSelectEventArgs { - /** returns the event object - */ - event?: any; - } + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface NodeDragStopEventArgs { + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: string; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the id of the current element of the node clicked + */ + id?: any; - /** returns the name of the event - */ - type?: string; + /** returns the id of the parent element of current element of the node clicked + */ + parentId?: any; - /** returns the original drop target - */ - dropTarget?: any; + /** returns the current selected nodes index of TreeView + */ + selectedNodes?: any[]; - /** returns the current dragged TreeView node - */ - draggedElement?: any; + /** returns the value of the node + */ + value?: string; - /** returns the current dragged TreeView node details - */ - draggedElementData?: any; + /** returns the current element of the node clicked + */ + currentElement?: any; + } - /** returns the current parent element of the dragged node - */ - target?: any; + export interface NodeUncheckEventArgs { - /** returns the given parent node details - */ - targetElementData?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the drop position such as before, after or over - */ - position?: string; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the event object - */ - event?: any; - } + /** returns the name of the event + */ + type?: string; - export interface NodeDroppedEventArgs { + /** returns the event object + */ + event?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the id of the current element of the node clicked + */ + id?: any; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the id of the parent element of current element of the node clicked + */ + parentId?: any; - /** returns the name of the event - */ - type?: string; + /** returns the value of the node + */ + value?: string; - /** returns the original drop target - */ - dropTarget?: any; + /** returns the current element of the node clicked + */ + currentElement?: any; - /** returns the current dropped TreeView node - */ - droppedElement?: any; + /** it returns true when the node checkbox is checked; otherwise, false. + */ + isChecked?: boolean; - /** returns the current dropped TreeView node details - */ - droppedElementData?: any; + /** it returns currently unchecked node name + */ + currentNode?: string; - /** returns the current parent element of the dropped node - */ - target?: any; + /** it returns currently unchecked node and its child node details. + */ + currentUncheckedNodes?: any[]; + } - /** returns the given parent node details - */ - targetElementData?: any; + export interface NodeUnselectEventArgs { - /** returns the drop position such as before, after or over - */ - position?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the event object - */ - event?: any; - } + /** returns the current element of the node unselected + */ + currentElement?: any; - export interface NodeEditEventArgs { + /** returns the id of the current element of the node unselected + */ + id?: string; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the TreeView model + */ + model?: ej.TreeView.Model; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** returns the id of the parent element of current element of the node unselected + */ + parentId?: string; - /** returns the name of the event - */ - type?: string; + /** returns the current selected nodes index of TreeView + */ + selectedNodes?: any[]; - /** returns the id of the element - */ - id?: string; + /** returns the name of the event + */ + type?: string; - /** returns the oldText of the element - */ - oldText?: string; + /** returns the value of the node + */ + value?: string; + } + + export interface ReadyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the TreeView model + */ + model?: ej.TreeView.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface Fields { + + /** It receives the child level or inner level data source such as Essential DataManager object and JSON object. + */ + child?: any; + + /** It receives Essential DataManager object and JSON object. + */ + dataSource?: any; + + /** Specifies the node to be in expanded state. + */ + expanded?: string; + + /** Its allow us to indicate whether the node has child or not in load on demand + */ + hasChild?: string; + + /** Specifies the HTML Attributes to "li" item list. + */ + htmlAttribute?: any; + + /** Specifies the id to TreeView node items list. + */ + id?: string; + + /** Specifies the image attribute to “img” tag inside items list + */ + imageAttribute?: any; + + /** Specifies the HTML Attributes to "li" item list. + */ + imageUrl?: string; + + /** If its true Checkbox node will be checked when rendered with checkbox. + */ + isChecked?: string; + + /** Specifies the link attribute to “a” tag in item list. + */ + linkAttribute?: any; + + /** Specifies the parent id of the node. The nodes are listed as child nodes of the specified parent node by using its parent id. + */ + parentId?: string; + + /** It receives query to retrieve data from the table (query is same as SQL). + */ + query?: any; + + /** Allow us to specify the node to be in selected state + */ + selected?: string; + + /** Specifies the sprite CSS class to "li" item list. + */ + spriteCssClass?: string; + + /** It receives the table name to execute query on the corresponding table. + */ + tableName?: string; + + /** Specifies the text of TreeView node items list. + */ + text?: string; + } + + export interface SortSettings { + + /** Enables or disables the sorting option in TreeView control + * @Default {false} + */ + allowSorting?: boolean; + + /** Sets the sorting order type. There are two sorting types available, such as "ascending", "descending". + * @Default {ej.sortOrder.Ascending} + */ + sortOrder?: ej.sortOrder|string; + } + } + enum sortOrder { + //Enum for Ascending sort order + Ascending, + //Enum for Descending sort order + Descending, + } + + class Uploadbox extends ej.Widget { + static fn: Uploadbox; + constructor(element: JQuery | Element, options?: Uploadbox.Model); + static Locale: any; + model: Uploadbox.Model; + defaults: Uploadbox.Model; + + /** The destroy method destroys the control and brings the control to a pre-init state. All the events of the Upload control is bound by using this._on unbinds automatically. + * @returns {void} + */ + destroy(): void; + + /** Disables the Uploadbox control + * @returns {void} + */ + disable(): void; + + /** Enables the Uploadbox control + * @returns {void} + */ + enable(): void; + + /** Refresh the Uploadbox control + * @returns {void} + */ + refresh(): void; + + /** Upload the selected files. + * @returns {void} + */ + upload(): void; + } + export namespace Uploadbox { + + export interface Model { + + /** Enables the file drag and drop support to the Uploadbox control. + * @Default {false} + */ + allowDragAndDrop?: boolean; + + /** Uploadbox supports both synchronous and asynchronous upload. This can be achieved by using the asyncUpload property. + * @Default {true} + */ + asyncUpload?: boolean; + + /** Uploadbox supports auto uploading of files after the file selection is done. + * @Default {false} + */ + autoUpload?: boolean; + + /** Sets the text for each action button. + * @Default {{browse: Browse, upload: Upload, cancel: Cancel, close: Close}} + */ + buttonText?: ButtonText; + + /** Sets the root class for the Uploadbox control theme. This cssClass API helps to use custom skinning option for the Uploadbox button and dialog content. + */ + cssClass?: string; + + /** Specifies the custom file details in the dialog popup on initialization. + * @Default {{ title:true, name:true, size:true, status:true, action:true}} + */ + customFileDetails?: CustomFileDetails; + + /** Specifies the actions for dialog popup while initialization. + * @Default {{ modal:false, closeOnComplete:false, content:null, drag:true}} + */ + dialogAction?: DialogAction; + + /** Displays the Uploadbox dialog at the given X and Y positions. X: Dialog sets the left position value. Y: Dialog sets the top position value. + * @Default {null} + */ + dialogPosition?: any; + + /** Property for applying the text to the Dialog title and content headers. + * @Default {{ title: Upload Box, name: Name, size: Size, status: Status}} + */ + dialogText?: DialogText; + + /** The dropAreaText is displayed when the drag and drop support is enabled in the Uploadbox control. + * @Default {Drop files or click to upload} + */ + dropAreaText?: string; + + /** Specifies the dropAreaHeight when the drag and drop support is enabled in the Uploadbox control. + * @Default {100%} + */ + dropAreaHeight?: number|string; + + /** Specifies the dropAreaWidth when the drag and drop support is enabled in the Uploadbox control. + * @Default {100%} + */ + dropAreaWidth?: number|string; + + /** Based on the property value, Uploadbox is enabled or disabled. + * @Default {true} + */ + enabled?: boolean; + + /** Sets the right-to-left direction property for the Uploadbox control. + * @Default {false} + */ + enableRTL?: boolean; + + /** Only the files with the specified extension is allowed to upload. This is mentioned in the string format. + */ + extensionsAllow?: string; + + /** Only the files with the specified extension is denied for upload. This is mentioned in the string format. + */ + extensionsDeny?: string; + + /** Sets the maximum size limit for uploading the file. This is mentioned in the number format. + * @Default {31457280} + */ + fileSize?: number; + + /** Sets the height of the browse button. + * @Default {35px} + */ + height?: string; + + /** Specifies the list of HTML attributes to be added to uploadbox control. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Configures the culture data and sets the culture to the Uploadbox. + * @Default {en-US} + */ + locale?: string; + + /** Enables multiple file selection for upload. + * @Default {true} + */ + multipleFilesSelection?: boolean; + + /** You can push the file to the Uploadbox in the client-side of the XHR supported browsers alone. + * @Default {null} + */ + pushFile?: any; + + /** Specifies the remove action to be performed after the file uploading is completed. Here, mention the server address for removal. + */ + removeUrl?: string; + + /** Specifies the save action to be performed after the file is pushed for uploading. Here, mention the server address to be saved. + */ + saveUrl?: string; + + /** Enables the browse button support to the Uploadbox control. + * @Default {true} + */ + showBrowseButton?: boolean; + + /** Specifies the file details to be displayed when selected for uploading. This can be done when the showFileDetails is set to true. + * @Default {true} + */ + showFileDetails?: boolean; + + /** Specifies the file details to be displayed when selected for uploading. This can be done when the showFileDetails is set to true. + * @Default {true} + */ + showRoundedCorner?: boolean; + + /** Sets the name for the Uploadbox control. This API helps to Map the action in code behind to retrieve the files. + */ + uploadName?: string; + + /** Sets the width of the browse button. + * @Default {100px} + */ + width?: string; + + /** Fires when the upload progress beforeSend. + */ + beforeSend?(e: BeforeSendEventArgs): void; + + /** Fires when the upload progress begins. + */ + begin?(e: BeginEventArgs): void; + + /** Fires when the upload progress is cancelled. + */ + cancel?(e: CancelEventArgs): void; + + /** Fires when the file upload progress is completed. + */ + complete?(e: CompleteEventArgs): void; + + /** Fires when the file upload progress is succeeded. + */ + success?(e: SuccessEventArgs): void; + + /** Fires when the Uploadbox control is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the Uploadbox control is destroyed. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires when the Upload process ends in Error. + */ + error?(e: ErrorEventArgs): void; + + /** Fires when the file is selected for upload successfully. + */ + fileSelect?(e: FileSelectEventArgs): void; + + /** Fires when the file is uploading. + */ + inProgress?(e: InProgressEventArgs): void; + + /** Fires when the uploaded file is removed successfully. + */ + remove?(e: RemoveEventArgs): void; + } + + export interface BeforeSendEventArgs { - /** returns the newText of the element - */ - newText?: string; + /** Selected FileList Object. + */ + files?: any; - /** returns the event object - */ - event?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the target element, the given node to be cut - */ - target?: any; + /** returns the Uploadbox model + */ + model?: any; - /** returns the given target node values - */ - nodeDetails?: any; - } + /** XHR-AJAX Object for reference. + */ + xhr?: any; - export interface NodeExpandEventArgs { + /** returns the name of the event. + */ + type?: string; + } - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface BeginEventArgs { - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** To pass additional information to the server. + */ + data?: any; - /** returns the name of the event - */ - type?: string; + /** Selected FileList Object. + */ + files?: any; - /** returns the value of the node - */ - value?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** if the child node is ready to expanded state; otherwise, false. - */ - isChildLoaded?: boolean; + /** returns the Uploadbox model + */ + model?: any; - /** returns the current element of the node clicked - */ - currentElement?: any; + /** returns the name of the event. + */ + type?: string; + } - /** returns the id of currently clicked node - */ - id?: string; + export interface CancelEventArgs { - /** returns the parent id of currently clicked node - */ - parentId?: string; + /** Canceled FileList Object. + */ + fileStatus?: any; - /** returns the format asynchronous or synchronous - */ - async?: boolean; - } + /** returns the Uploadbox model + */ + model?: any; - export interface NodePasteEventArgs { + /** returns the name of the event. + */ + type?: string; + } - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface CompleteEventArgs { - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** AJAX event argument for reference. + */ + e?: any; - /** returns the name of the event - */ - type?: string; + /** Uploaded file list. + */ + files?: any; - /** returns the event object - */ - event?: any; + /** response from the server. + */ + responseText?: string; - /** returns the pasted element - */ - target?: any; + /** XHR-AJAX Object for reference. + */ + xhr?: any; - /** returns the given target node values - */ - nodeDetails?: any; + /** returns the Uploadbox model + */ + model?: any; - /** returns the key pressed key code value - */ - keyCode?: number; - } + /** returns the name of the event. + */ + type?: string; + } - export interface NodeSelectEventArgs { + export interface SuccessEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** response from the server. + */ + responseText?: string; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** AJAX event argument for reference. + */ + e?: any; - /** returns the name of the event - */ - type?: string; + /** successfully uploaded files list. + */ + success?: any; - /** returns the id of the current element of the node clicked - */ - id?: any; + /** Uploaded file list. + */ + files?: any; - /** returns the id of the parent element of current element of the node clicked - */ - parentId?: any; + /** XHR-AJAX Object for reference. + */ + xhr?: any; - /** returns the current selected nodes index of TreeView - */ - selectedNodes?: any[]; + /** returns the Uploadbox model + */ + model?: any; - /** returns the value of the node - */ - value?: string; + /** returns the name of the event. + */ + type?: string; + } - /** returns the current element of the node clicked - */ - currentElement?: any; - } + export interface CreateEventArgs { - export interface NodeUncheckEventArgs { + /** returns the Uploadbox model + */ + model?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event. + */ + type?: string; + } - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + export interface DestroyEventArgs { - /** returns the name of the event - */ - type?: string; + /** returns the Uploadbox model + */ + model?: any; - /** returns the event object - */ - event?: any; + /** returns the name of the event. + */ + type?: string; + } - /** returns the id of the current element of the node clicked - */ - id?: any; + export interface ErrorEventArgs { - /** returns the id of the parent element of current element of the node clicked - */ - parentId?: any; + /** details about the error information. + */ + error?: string; - /** returns the value of the node - */ - value?: string; + /** returns the name of the event. + */ + type?: string; - /** returns the current element of the node clicked - */ - currentElement?: any; + /** error event action details. + */ + action?: string; - /** it returns true when the node checkbox is checked; otherwise, false. - */ - isChecked?: boolean; + /** returns the file details of the file uploaded + */ + files?: any; + } - /** it returns currently unchecked node name - */ - currentNode?: string; + export interface FileSelectEventArgs { - /** it returns currently unchecked node and its child node details. - */ - currentUncheckedNodes?: any[]; - } + /** returns Selected FileList objects + */ + files?: any; - export interface NodeUnselectEventArgs { + /** returns the Uploadbox model + */ + model?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event. + */ + type?: string; + } - /** returns the current element of the node unselected - */ - currentElement?: any; + export interface InProgressEventArgs { - /** returns the id of the current element of the node unselected - */ - id?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** returns the TreeView model - */ - model?: ej.TreeView.Model; + /** AJAX event argument for reference. + */ + e?: any; - /** returns the id of the parent element of current element of the node unselected - */ - parentId?: string; + /** returns Selected FileList objects + */ + files?: any; - /** returns the current selected nodes index of TreeView - */ - selectedNodes?: any[]; + /** returns the Uploadbox model + */ + model?: any; - /** returns the name of the event - */ - type?: string; + /** returns the current progress percentage. + */ + percentage?: any; - /** returns the value of the node - */ - value?: string; - } - - export interface ReadyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the TreeView model - */ - model?: ej.TreeView.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface Fields { - - /** It receives the child level or inner level data source such as Essential DataManager object and JSON object. - */ - child?: any; - - /** It receives Essential DataManager object and JSON object. - */ - dataSource?: any; - - /** Specifies the node to be in expanded state. - */ - expanded?: string; - - /** Its allow us to indicate whether the node has child or not in load on demand - */ - hasChild?: string; - - /** Specifies the HTML Attributes to "li" item list. - */ - htmlAttribute?: any; - - /** Specifies the id to TreeView node items list. - */ - id?: string; - - /** Specifies the image attribute to “img” tag inside items list - */ - imageAttribute?: any; - - /** Specifies the HTML Attributes to "li" item list. - */ - imageUrl?: string; - - /** If its true Checkbox node will be checked when rendered with checkbox. - */ - isChecked?: string; - - /** Specifies the link attribute to “a” tag in item list. - */ - linkAttribute?: any; - - /** Specifies the parent id of the node. The nodes are listed as child nodes of the specified parent node by using its parent id. - */ - parentId?: string; - - /** It receives query to retrieve data from the table (query is same as SQL). - */ - query?: any; - - /** Allow us to specify the node to be in selected state - */ - selected?: string; - - /** Specifies the sprite CSS class to "li" item list. - */ - spriteCssClass?: string; - - /** It receives the table name to execute query on the corresponding table. - */ - tableName?: string; - - /** Specifies the text of TreeView node items list. - */ - text?: string; - } - - export interface SortSettings { - - /** Enables or disables the sorting option in TreeView control - * @Default {false} - */ - allowSorting?: boolean; - - /** Sets the sorting order type. There are two sorting types available, such as "ascending", "descending". - * @Default {ej.sortOrder.Ascending} - */ - sortOrder?: ej.sortOrder | string; - } - } - enum sortOrder { - //Enum for Ascending sort order - Ascending, - //Enum for Descending sort order - Descending, - } - - class Uploadbox extends ej.Widget { - static fn: Uploadbox; - constructor(element: JQuery | Element, options?: Uploadbox.Model); - static Locale: any; - model: Uploadbox.Model; - defaults: Uploadbox.Model; - - /** The destroy method destroys the control and brings the control to a pre-init state. All the events of the Upload control is bound by using this._on unbinds automatically. - * @returns {void} - */ - destroy(): void; - - /** Disables the Uploadbox control - * @returns {void} - */ - disable(): void; - - /** Enables the Uploadbox control - * @returns {void} - */ - enable(): void; - - /** Refresh the Uploadbox control - * @returns {void} - */ - refresh(): void; - } - export namespace Uploadbox { - - export interface Model { - - /** Enables the file drag and drop support to the Uploadbox control. - * @Default {false} - */ - allowDragAndDrop?: boolean; - - /** Uploadbox supports both synchronous and asynchronous upload. This can be achieved by using the asyncUpload property. - * @Default {true} - */ - asyncUpload?: boolean; - - /** Uploadbox supports auto uploading of files after the file selection is done. - * @Default {false} - */ - autoUpload?: boolean; - - /** Sets the text for each action button. - * @Default {{browse: Browse, upload: Upload, cancel: Cancel, close: Close}} - */ - buttonText?: ButtonText; - - /** Sets the root class for the Uploadbox control theme. This cssClass API helps to use custom skinning option for the Uploadbox button and dialog content. - */ - cssClass?: string; - - /** Specifies the custom file details in the dialog popup on initialization. - * @Default {{ title:true, name:true, size:true, status:true, action:true}} - */ - customFileDetails?: CustomFileDetails; - - /** Specifies the actions for dialog popup while initialization. - * @Default {{ modal:false, closeOnComplete:false, content:null, drag:true}} - */ - dialogAction?: DialogAction; - - /** Displays the Uploadbox dialog at the given X and Y positions. X: Dialog sets the left position value. Y: Dialog sets the top position value. - * @Default {null} - */ - dialogPosition?: any; - - /** Property for applying the text to the Dialog title and content headers. - * @Default {{ title: Upload Box, name: Name, size: Size, status: Status}} - */ - dialogText?: DialogText; - - /** The dropAreaText is displayed when the drag and drop support is enabled in the Uploadbox control. - * @Default {Drop files or click to upload} - */ - dropAreaText?: string; - - /** Specifies the dropAreaHeight when the drag and drop support is enabled in the Uploadbox control. - * @Default {100%} - */ - dropAreaHeight?: number | string; - - /** Specifies the dropAreaWidth when the drag and drop support is enabled in the Uploadbox control. - * @Default {100%} - */ - dropAreaWidth?: number | string; - - /** Based on the property value, Uploadbox is enabled or disabled. - * @Default {true} - */ - enabled?: boolean; - - /** Sets the right-to-left direction property for the Uploadbox control. - * @Default {false} - */ - enableRTL?: boolean; - - /** Only the files with the specified extension is allowed to upload. This is mentioned in the string format. - */ - extensionsAllow?: string; - - /** Only the files with the specified extension is denied for upload. This is mentioned in the string format. - */ - extensionsDeny?: string; - - /** Sets the maximum size limit for uploading the file. This is mentioned in the number format. - * @Default {31457280} - */ - fileSize?: number; - - /** Sets the height of the browse button. - * @Default {35px} - */ - height?: string; - - /** Specifies the list of HTML attributes to be added to uploadbox control. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Configures the culture data and sets the culture to the Uploadbox. - * @Default {en-US} - */ - locale?: string; - - /** Enables multiple file selection for upload. - * @Default {true} - */ - multipleFilesSelection?: boolean; - - /** You can push the file to the Uploadbox in the client-side of the XHR supported browsers alone. - * @Default {null} - */ - pushFile?: any; - - /** Specifies the remove action to be performed after the file uploading is completed. Here, mention the server address for removal. - */ - removeUrl?: string; - - /** Specifies the save action to be performed after the file is pushed for uploading. Here, mention the server address to be saved. - */ - saveUrl?: string; - - /** Enables the browse button support to the Uploadbox control. - * @Default {true} - */ - showBrowseButton?: boolean; - - /** Specifies the file details to be displayed when selected for uploading. This can be done when the showFileDetails is set to true. - * @Default {true} - */ - showFileDetails?: boolean; - - /** Specifies the file details to be displayed when selected for uploading. This can be done when the showFileDetails is set to true. - * @Default {true} - */ - showRoundedCorner?: boolean; - - /** Sets the name for the Uploadbox control. This API helps to Map the action in code behind to retrieve the files. - */ - uploadName?: string; + /** returns the name of the event. + */ + type?: string; + } - /** Sets the width of the browse button. - * @Default {100px} - */ - width?: string; + export interface RemoveEventArgs { - /** Fires when the upload progress beforeSend. */ - beforeSend?(e: BeforeSendEventArgs): void; + /** returns the Uploadbox model + */ + model?: any; - /** Fires when the upload progress begins. */ - begin?(e: BeginEventArgs): void; + /** returns the name of the event. + */ + type?: string; - /** Fires when the upload progress is cancelled. */ - cancel?(e: CancelEventArgs): void; + /** returns the file details of the file object + */ + fileStatus?: any; + } - /** Fires when the file upload progress is completed. */ - complete?(e: CompleteEventArgs): void; + export interface ButtonText { - /** Fires when the file upload progress is succeeded. */ - success?(e: SuccessEventArgs): void; + /** Sets the text for the browse button. + */ + browse?: string; - /** Fires when the Uploadbox control is created. */ - create?(e: CreateEventArgs): void; + /** Sets the text for the cancel button. + */ + cancel?: string; - /** Fires when the Uploadbox control is destroyed. */ - destroy?(e: DestroyEventArgs): void; + /** Sets the text for the close button. + */ + Close?: string; - /** Fires when the Upload process ends in Error. */ - error?(e: ErrorEventArgs): void; + /** Sets the text for the Upload button inside the dialog popup. + */ + upload?: string; + } - /** Fires when the file is selected for upload successfully. */ - fileSelect?(e: FileSelectEventArgs): void; + export interface CustomFileDetails { + + /** Enables the file upload interactions like remove/cancel in File details of the dialog popup. + */ + action?: boolean; + + /** Enables the name in the File details of the dialog popup. + */ + name?: boolean; + + /** Enables or disables the File size details of the dialog popup. + */ + size?: boolean; + + /** Enables or disables the file uploading status visibility in the dialog file details content. + */ + status?: boolean; + + /** Enables the title in File details for the dialog popup. + */ + title?: boolean; + } + + export interface DialogAction { + + /** Once uploaded successfully, the dialog popup closes immediately. + */ + closeOnComplete?: boolean; + + /** Sets the content container option to the Uploadbox dialog popup. + */ + content?: string; + + /** Enables the drag option to the dialog popup. + */ + drag?: boolean; + + /** Enables or disables the Uploadbox dialog’s modal property to the dialog popup. + */ + modal?: boolean; + } + + export interface DialogText { + + /** Sets the uploaded file’s Name (header text) to the Dialog popup. + */ + name?: string; + + /** Sets the upload file Size (header text) to the dialog popup. + */ + size?: string; + + /** Sets the upload file Status (header text) to the dialog popup. + */ + status?: string; + + /** Sets the title text of the dialog popup. + */ + title?: string; + } + } + + class WaitingPopup extends ej.Widget { + static fn: WaitingPopup; + constructor(element: JQuery | Element, options?: WaitingPopup.Model); + static Locale: any; + model: WaitingPopup.Model; + defaults: WaitingPopup.Model; + + /** To hide the waiting popup + * @returns {void} + */ + hide(): void; + + /** Refreshes the WaitingPopup control by resetting the pop-up panel position and content position + * @returns {void} + */ + refresh(): void; + + /** To show the waiting popup + * @returns {void} + */ + show(): void; + } + export namespace WaitingPopup { + + export interface Model { + + /** Sets the root class for the WaitingPopup control theme + * @Default {null} + */ + cssClass?: string; + + /** Specifies the list of HTML attributes to be added to waitingpopup control. + * @Default {{}} + */ + htmlAttributes?: any; + + /** Enables or disables the default loading icon. + * @Default {true} + */ + showImage?: boolean; + + /** Enables the visibility of the WaitingPopup control + * @Default {false} + */ + showOnInit?: boolean; + + /** Specified a selector for elements, within the container. + * @Default {null} + */ + target?: string; + + /** Waitingpopup element append to given container element. + * @Default {null} + */ + appendTo?: string; + + /** Loads HTML content inside the popup panel instead of the default icon + * @Default {null} + */ + template?: any; + + /** Sets the custom text in the pop-up panel to notify the waiting process + * @Default {null} + */ + text?: string; + + /** Fires after Create WaitingPopup successfully + */ + create?(e: CreateEventArgs): void; + + /** Fires after Destroy WaitingPopup successfully + */ + destroy?(e: DestroyEventArgs): void; + } + + export interface CreateEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the WaitingPopup model + */ + model?: ej.WaitingPopup.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the WaitingPopup model + */ + model?: ej.WaitingPopup.Model; + + /** returns the name of the event + */ + type?: string; + } + } + + class Grid extends ej.Widget { + static fn: Grid; + constructor(element: JQuery | Element, options?: Grid.Model); + static Locale: any; + model: Grid.Model; + defaults: Grid.Model; + + /** Adds a grid model property which is to be ignored upon exporting. + * @param {any[]} Pass the array of parameters which need to be ignored on exporting + * @returns {void} + */ + addIgnoreOnExport(propertyNames: any[]): void; + + /** Adds a grid model property which is to be ignored upon OnServerToolbarClick. + * @param {any[]} Pass the array of parameters which need to be ignored on OnServerToolbarClick + * @returns {void} + */ + addIgnoreOnToolbarServerClick(propertyNames: any[]): void; + + /** Add a new record in grid control when allowAdding is set as true.Without passing parameters it will add empty row. + * @param {any[]} Pass the array of added Records + * @param {any[]} optionalIf we pass serverChange as true, send post to server side for server action. + * @returns {void} + */ + addRecord(data?: any[], serverChange?: any[]): void; + + /** Cancel the modified changes in grid control when edit mode is "batch". + * @returns {void} + */ + batchCancel(): void; + + /** Save the modified changes to data source in grid control when edit mode is "batch". + * @returns {void} + */ + batchSave(): void; + + /** Send a cancel request in grid. + * @returns {void} + */ + cancelEdit(): void; + + /** Send a cancel request to the edited cell in grid. + * @returns {void} + */ + cancelEditCell(): void; + + /** It is used to clear all the cell selection. + * @returns {boolean} + */ + clearCellSelection(): boolean; + + /** It is used to clear specified cell selection based on the rowIndex and columnIndex provided. + * @param {number} It is used to pass the row index of the cell + * @param {number} It is used to pass the column index of the cell. + * @returns {boolean} + */ + clearCellSelection(rowIndex: number, columnIndex: number): boolean; + + /** It is used to clear all the row selection or at specific row selection based on the index provided. + * @param {number} optional If index of the column is specified then it will remove the selection from the particular column else it will clears all of the column selection + * @returns {boolean} + */ + clearColumnSelection(index?: number): boolean; + + /** It is used to clear all the filtering done. + * @param {string} If field of the column is specified then it will clear the particular filtering column + * @returns {void} + */ + clearFiltering(field: string): void; + + /** Clear the searching from the grid + * @returns {void} + */ + clearSearching(): void; + + /** Clear all the row selection or at specific row selection based on the index provided + * @param {number} optional If index of the row is specified then it will remove the selection from the particular row else it will clears all of the row selection + * @returns {boolean} + */ + clearSelection(index?: number): boolean; + + /** Clear the sorting from columns in the grid + * @returns {void} + */ + clearSorting(): void; + + /** Collapse all the group caption rows in grid + * @returns {void} + */ + collapseAll(): void; + + /** Collapse the group drop area in grid + * @returns {void} + */ + collapseGroupDropArea(): void; + + /** Add or remove columns in grid column collections + * @param {any[]|string} Pass array of columns or string of field name to add/remove the column in grid + * @param {string} optional Pass add/remove action to be performed. By default "add" action will perform + * @returns {void} + */ + columns(columnDetails: any[]|string, action?: string): void; + + /** Refresh the grid with new data source + * @param {any} Pass new data source to the grid + * @param {boolean} optional When templateRefresh is set true, both header and contents get refreshed + * @returns {void} + */ + dataSource(datasource: any, templateRefresh?: boolean): void; + + /** Delete a record in grid control when allowDeleting is set as true + * @param {string} Pass the primary key field Name of the column + * @param {any} Pass the JSON data of record need to be delete. + * @returns {void} + */ + deleteRecord(fieldName: string, data: any): void; + + /** Delete the row based on the given tr element in grid. + * @param {JQuery} Pass the tr element in grid content to get its row index + * @returns {HTMLElement} + */ + deleteRow($tr: JQuery): HTMLElement; + + /** Destroy the grid widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** Edit a particular cell based on the row index and field name provided in "batch" edit mode. + * @param {number} Pass row index to edit particular cell + * @param {string} Pass the field name of the column to perform batch edit + * @returns {void} + */ + editCell(index: number, fieldName: string): void; + + /** It returns a value and if the input field values of edit form is not based on the validation rules then it will show the validation message. + * @returns {boolean} + */ + editFormValidate(): boolean; + + /** Send a save request in grid. + * @returns {void} + */ + endEdit(): void; + + /** Expand all the group caption rows in grid. + * @returns {void} + */ + expandAll(): void; + + /** Expand or collapse the row based on the row state in grid + * @param {JQuery} Pass the target object to expand/collapse the row based on its row state + * @returns {void} + */ + expandCollapse($target: JQuery): void; + + /** Expand the group drop area in grid. + * @returns {void} + */ + expandGroupDropArea(): void; + + /** Export the grid content to excel, word or PDF document. + * @param {string} Pass the controller action name corresponding to exporting + * @param {string} optionalASP server event name corresponding to exporting + * @param {boolean} optionalPass the multiple exporting value as true/false + * @param {any[]} optionalPass the array of the gridIds to be filtered + * @returns {void} + */ + export(action?: string, serverEvent?: string, multipleExport?: boolean, gridIds?: any[]): void; + + /** Send a filtering request to filter one column in grid. + * @param {any[]} Pass the field name of the column + * @param {string} string/integer/dateTime operator + * @param {string} Pass the value to be filtered in a column + * @param {string} Pass the predicate as and/or + * @param {boolean} optional Pass the match case value as true/false + * @param {any} optionalactualFilterValue denote the filter object of current filtered columns.Pass the value to filtered in a column + * @returns {void} + */ + filterColumn(fieldName: any[], filterOperator: string, filterValue: string, predicate: string, matchcase?: boolean, actualFilterValue?: any): void; + + /** Send a filtering request to filter single or multiple column in grid. + * @param {any[]} Pass array of filterColumn query for performing filter operation + * @returns {void} + */ + filterColumn(filterQueries: any[]): void; + + /** Get the batch changes of edit, delete and add operations of grid. + * @returns {any} + */ + getBatchChanges(): any; + + /** Get the browser details + * @returns {any} + */ + getBrowserDetails(): any; + + /** Get the column details based on the given field in grid + * @param {string} Pass the field name of the column to get the corresponding column object + * @returns {any} + */ + getColumnByField(fieldName: string): any; + + /** Get the column details based on the given header text in grid. + * @param {string} Pass the header text of the column to get the corresponding column object + * @returns {any} + */ + getColumnByHeaderText(headerText: string): any; + + /** Get the column details based on the given column index in grid + * @param {number} Pass the index of the column to get the corresponding column object + * @returns {any} + */ + getColumnByIndex(columnIndex: number): any; + + /** Get the list of field names from column collection in grid. + * @returns {any[]} + */ + getColumnFieldNames(): any[]; + + /** Get the column index of the given field in grid. + * @param {string} Pass the field name of the column to get the corresponding column index + * @returns {number} + */ + getColumnIndexByField(fieldName: string): number; + + /** Get the column index of the given headerText of column in grid. + * @param {string} Pass the headerText of the column to get that column index + * @param {string} optionalOptional Pass the field name of the column. + * @returns {number} + */ + getColumnIndexByHeaderText(headerText: string, field?: string): number; + + /** Get the content div element of grid. + * @returns {HTMLElement} + */ + getContent(): HTMLElement; + + /** Get the content table element of grid + * @returns {HTMLTableElement[]} + */ + getContentTable(): HTMLTableElement[]; + + /** Get the data of currently edited cell value in "batch" edit mode + * @returns {any} + */ + getCurrentEditCellData(): any; + + /** Get the current page index in grid pager. + * @returns {number} + */ + getCurrentIndex(): number; + + /** Get the current page data source of grid. + * @returns {any[]} + */ + getCurrentViewData(): any[]; + + /** Get the data of given row index in grid. + * @returns {any} + */ + getDataByIndex(): any; + + /** Get the column field name from the given header text in grid. + * @param {string} Pass header text of the column to get its corresponding field name + * @returns {string} + */ + getFieldNameByHeaderText(headerText: string): string; + + /** Get the filter bar of grid + * @returns {HTMLElement} + */ + getFilterBar(): HTMLElement; + + /** Get the records filtered or searched in Grid + * @returns {any[]} + */ + getFilteredRecords(): any[]; + + /** Get the footer content of grid. + * @returns {HTMLElement} + */ + getFooterContent(): HTMLElement; + + /** Get the footer table element of grid. + * @returns {HTMLElement} + */ + getFooterTable(): HTMLElement; + + /** Get the header content div element of grid. + * @returns {HTMLElement} + */ + getHeaderContent(): HTMLElement; + + /** Get the header table element of grid + * @returns {HTMLElement} + */ + getHeaderTable(): HTMLElement; + + /** Get the column header text from the given field name in grid. + * @param {string} Pass field name of the column to get its corresponding header text + * @returns {string} + */ + getHeaderTextByFieldName(field: string): string; + + /** Get the names of all the hidden column collections in grid. + * @returns {any[]} + */ + getHiddenColumnNames(): any[]; + + /** Get the row index based on the given tr element in grid. + * @param {JQuery} Pass the tr element in grid content to get its row index + * @returns {number} + */ + getIndexByRow($tr: JQuery): number; + + /** Get the pager of grid. + * @returns {HTMLElement} + */ + getPager(): HTMLElement; + + /** Get the names of primary key columns in Grid + * @returns {any[]} + */ + getPrimaryKeyFieldNames(): any[]; + + /** Get the rows(tr element) from the given from and to row index in grid + * @param {number} Pass the from index from which the rows to be returned + * @param {number} Pass the to index to which the rows to be returned + * @returns {HTMLElement} + */ + getRowByIndex(from: number, to: number): HTMLElement; + + /** Get the row height of grid. + * @returns {number} + */ + getRowHeight(): number; + + /** Get the rows(tr element)of grid which is displayed in the current page. + * @returns {HTMLElement} + */ + getRows(): HTMLElement; + + /** Get the scroller object of grid. + * @returns {ej.Scroller} + */ + getScrollObject(): ej.Scroller; + + /** Get the selected records details in grid. + * @returns {any[]} + */ + getSelectedRecords(): any[]; + + /** Get the selected row element details in grid. + * @returns {any[]} + */ + getSelectedRows(): any[]; + + /** It accepts the string value and returns the field and sorted direction of the column in grid. + * @param {string} Pass the field of the column to get the sorted direction of the corresponding column in Grid. + * @returns {number} + */ + getsortColumnByField(field: string): number; + + /** Get the calculated summary values of JSON data passed to it + * @param {any} Pass Summary Column details + * @param {any} Pass JSON Array for which its field values to be calculated + * @returns {number} + */ + getSummaryValues(summaryCol: any, summaryData: any): number; + + /** Get the names of all the visible column collections in grid + * @returns {any[]} + */ + getVisibleColumnNames(): any[]; + + /** Send a paging request to specified page in grid + * @param {number} Pass the page index to perform paging at specified page index + * @returns {void} + */ + gotoPage(pageIndex: number): void; + + /** Send a column grouping request in grid. + * @param {string} Pass the field Name of the column to be grouped in grid control + * @returns {void} + */ + groupColumn(fieldName: string): void; + + /** Hide columns from the grid based on the header text + * @param {any[]|string} you can pass either array of header text of various columns or a header text of a column to hide + * @returns {void} + */ + hideColumns(headerText: any[]|string): void; + + /** Print the grid control + * @returns {void} + */ + print(): void; + + /** It is used to refresh and reset the changes made in "batch" edit mode + * @returns {void} + */ + refreshBatchEditChanges(): void; + + /** It is used to refresh the grid header. + * @returns {void} + */ + refreshHeader(): void; + + /** Refresh the grid contents. The template refreshment is based on the argument passed along with this method + * @param {boolean} optional When templateRefresh is set true, template and grid contents both are refreshed in grid else only grid content is refreshed + * @returns {void} + */ + refreshContent(templateRefresh?: boolean): void; + + /** Refresh the template of the grid + * @returns {void} + */ + refreshTemplate(): void; + + /** Refresh the toolbar items in grid. + * @returns {void} + */ + refreshToolbar(): void; + + /** Remove a column or collection of columns from a sorted column collections in grid. + * @param {any[]|string} Pass array of field names of the columns to remove a collection of sorted columns or pass a string of field name to remove a column from sorted column + * collections + * @returns {void} + */ + removeSortedColumns(fieldName: any[]|string): void; + + /** Creates a grid control + * @returns {void} + */ + render(): void; + + /** Re-order the column in grid + * @param {string} Pass the from field name of the column needs to be changed + * @param {string} Pass the to field name of the column needs to be changed + * @returns {void} + */ + reorderColumns(fromFieldName: string, toFieldName: string): void; + + /** Re-order the row in grid + * @param {any[]} Pass the indexes of the rows needs to reorder. + * @param {number} Pass the index of a row where to be reordered. + * @returns {void} + */ + reorderRows(indexes: any[], toIndex: number): void; + + /** Reset the model collections like pageSettings, groupSettings, filterSettings, sortSettings and summaryRows. + * @returns {void} + */ + resetModelCollections(): void; + + /** Resize the columns by giving column name and width for the corresponding one. + * @param {string} Pass the column name that needs to be changed + * @param {string} Pass the width to resize the particular columns + * @returns {void} + */ + resizeColumns(column: string, width: string): void; + + /** Resolves row height issue when unbound column is used with FrozenColumn + * @returns {void} + */ + rowHeightRefresh(): void; + + /** We can prevent the client side cellSave event triggering by passing the preventSaveEvent argument as true.Without argument it will save the particular edited grid cell. + * @param {boolean} optionalIf we pass preventSaveEvent as true, it prevents the client side cellSave event triggering + * @returns {void} + */ + saveCell(preventSaveEvent?: boolean): void; + + /** Set dimension for grid with corresponding to grid parent. + * @param {number} Pass the height of the grid container + * @param {number} Pass the width of the grid container + * @returns {void} + */ + setDimension(height: number, width: number): void; + + /** Send a request to grid to refresh the width set to columns + * @returns {void} + */ + setWidthToColumns(): void; + + /** Send a search request to grid with specified string passed in it + * @param {string} Pass the string to search in Grid records + * @returns {void} + */ + search(searchString: string): void; + + /** Select cells in grid. + * @param {any} It is used to set the starting index of row and indexes of cells for that corresponding row for selecting cells. + * @returns {void} + */ + selectCells(rowCellIndexes: any): void; + + /** Select columns in grid. + * @param {number} It is used to set the starting index of column for selecting columns. + * @returns {void} + */ + selectColumns(fromIndex: number): void; + + /** Select the specified columns in grid based on Index provided. + * @param {number} It is used to set the starting index of column for selecting columns. + * @param {number} optionalIt is used to set the ending index of column for selecting columns. + * @returns {boolean} + */ + selectColumns(columnIndex: number, toIndex?: number): boolean; + + /** Select rows in grid. + * @param {number} It is used to set the starting index of row for selecting rows. + * @param {number} It is used to set the ending index of row for selecting rows. + * @returns {void} + */ + selectRows(fromIndex: number, toIndex: number): void; + + /** Select specified rows in grid based on Index provided. + * @param {any[]|number} It is used to set the starting index of row for selecting rows. + * @param {number} optionalIt is used to set the ending index of row for selecting rows. + * @param {any} optionalTarget element which is clicked. + * @returns {void} + */ + selectRows(from: any[]|number, to: number, target?: any): void; + + /** Select rows in grid. + * @param {any[]} Pass array of rowIndexes for selecting rows + * @returns {void} + */ + selectRows(rowIndexes: any[]): void; + + /** Used to update a particular cell value. + * @returns {void} + */ + setCellText(): void; + + /** Used to update a particular cell value based on specified row Index and the fieldName. + * @param {number} It is used to set the index for selecting the row. + * @param {string} It is used to set the field name for selecting column. + * @param {any} It is used to set the value for the selected cell. + * @returns {void} + */ + setCellValue(Index: number, fieldName: string, value: any): void; + + /** It sets the default data to the column in grid during adding record in batch edit mode. + * @returns {void} + */ + setDefaultData(): void; + + /** The grid rows has to be rendered as detail view in mobile mode based on given value. + * @param {number} It is used to render grid rows as details view in mobile mode. + * @returns {void} + */ + setPhoneModeMaxWidth(Index: number): void; + + /** Set validation to edit form in the grid. + * @returns {void} + */ + setValidation(): void; + + /** Set validation to a particular input field in a edit form dynamically. + * @param {string} Specify the field name of the column to set validation rules + * @param {any} Specify the validation rules for the field + * @returns {void} + */ + setValidationToField(fieldName: string, rules: any): void; + + /** Show columns in the grid based on the header text + * @param {any[]|string} you can pass either array of header text of various columns or a header text of a column to show + * @returns {void} + */ + showColumns(headerText: any[]|string): void; + + /** Send a sorting request in grid. + * @param {string} Pass the field name of the column as columnName for which sorting have to be performed + * @param {string} optional Pass the sort direction ascending/descending by which the column have to be sort. By default it is sorting in an ascending order + * @returns {void} + */ + sortColumn(columnName: string, sortingDirection?: string): void; + + /** Send an edit record request in grid + * @param {JQuery} Pass the tr- selected row element to be edited in grid + * @returns {void} + */ + startEdit($tr: JQuery): void; + + /** Un-group a column from grouped columns collection in grid + * @param {string} Pass the field Name of the column to be ungrouped from grouped column collection + * @returns {void} + */ + ungroupColumn(fieldName: string): void; + + /** Update a edited record in grid control when allowEditing is set as true. + * @param {string} Pass the primary key field Name of the column + * @param {any[]} Pass the edited JSON data of record need to be update. + * @returns {void} + */ + updateRecord(fieldName: string, data: any[]): void; + + /** It adapts grid to its parent element or to the browsers window. + * @returns {void} + */ + windowonresize(): void; + } + export namespace Grid { + + export interface Model { + + /** Gets or sets a value that indicates whether to customizing cell based on our needs. + * @Default {false} + */ + allowCellMerging?: boolean; + + /** Gets or sets a value that indicates whether to enable dynamic grouping behavior. Grouping can be done by drag on drop desired columns to grid’s GroupDropArea. This can be + * further customized through “groupSettings” property. + * @Default {false} + */ + allowGrouping?: boolean; + + /** Gets or sets a value that indicates whether to enable keyboard support for performing grid actions. selectionType – Gets or sets a value that indicates whether to enable single + * row or multiple rows selection behavior in grid. Multiple selection can be done through by holding CTRL and clicking the grid rows + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** Gets or sets a value that indicates whether to enable dynamic filtering behavior on grid. Filtering can be used to limit the records displayed using required criteria and this can + * be further customized through “filterSettings” property + * @Default {false} + */ + allowFiltering?: boolean; + + /** Gets or sets a value that indicates whether to enable the dynamic sorting behavior on grid data. Sorting can be done through clicking on particular column header. + * @Default {false} + */ + allowSorting?: boolean; + + /** Gets or sets a value that indicates whether to enable multi columns sorting behavior in grid. Sort multiple columns by holding CTRL and click on the corresponding column header. + * @Default {false} + */ + allowMultiSorting?: boolean; + + /** This specifies the grid to show the paginated data. Also enables pager control at the bottom of grid for dynamic navigation through data source. Paging can be further customized + * through “pageSettings” property. + * @Default {false} + */ + allowPaging?: boolean; + + /** Gets or sets a value that indicates whether to enable the columns reordering behavior in the grid. Reordering can be done through by drag and drop the particular column from one + * index to another index within the grid. + * @Default {false} + */ + allowReordering?: boolean; + + /** Gets or sets a value that indicates whether the column is non resizable. Column width is set automatically based on the content or header text which is large. + * @Default {false} + */ + allowResizeToFit?: boolean; + + /** Gets or sets a value that indicates whether to enable dynamic resizable of columns. Resize the width of the columns by simply click and move the particular column header line + * @Default {false} + */ + allowResizing?: boolean; + + /** Gets or sets a value that indicates whether to enable the rows reordering in Grid and drag & drop rows between multiple Grid. + * @Default {false} + */ + allowRowDragAndDrop?: boolean; + + /** Gets or sets a value that indicates whether to enable the scrollbar in the grid and view the records by scroll through the grid manually + * @Default {false} + */ + allowScrolling?: boolean; + + /** Gets or sets a value that indicates whether to enable dynamic searching behavior in grid. Currently search box can be enabled through “toolbarSettings” + * @Default {false} + */ + allowSearching?: boolean; + + /** Gets or sets a value that indicates whether user can select rows on grid. On enabling feature, selected row will be highlighted. + * @Default {true} + */ + allowSelection?: boolean; + + /** Gets or sets a value that indicates whether the Content will wrap to the next line if the content exceeds the boundary of the Column Cells. + * @Default {false} + */ + allowTextWrap?: boolean; + + /** Gets or sets a value that indicates whether to enable the multiple exporting behavior on grid data. + * @Default {false} + */ + allowMultipleExporting?: boolean; + + /** Gets or sets a value that indicates to define common width for all the columns in the grid. + */ + commonWidth?: number; + + /** Gets or sets a value that indicates to enable the visibility of the grid lines. + * @Default {ej.Grid.GridLines.Both} + */ + gridLines?: ej.Grid.GridLines|string; + + /** This specifies the grid to add the grid control inside the grid row of the parent with expand/collapse options + * @Default {null} + */ + childGrid?: any; + + /** Used to enable or disable static width settings for column. If the columnLayout is set as fixed, then column width will be static. + * @Default {ej.Grid.ColumnLayout.Auto} + */ + columnLayout?: ej.Grid.ColumnLayout|string; + + /** Gets or sets an object that indicates to render the grid with specified columns + * @Default {[]} + */ + columns?: Column[]; + + /** Gets or sets an object that indicates whether to customize the context menu behavior of the grid. + */ + contextMenuSettings?: ContextMenuSettings; + + /** Gets or sets a value that indicates to render the grid with custom theme. + */ + cssClass?: string; + + /** Gets or sets the data to render the grid with records + * @Default {null} + */ + dataSource?: any; + + /** Default Value: + * @Default {null} + */ + detailsTemplate?: string; + + /** Gets or sets an object that indicates whether to customize the editing behavior of the grid. + */ + editSettings?: EditSettings; + + /** Gets or sets a value that indicates whether to enable the alternative rows differentiation in the grid records based on corresponding theme. + * @Default {true} + */ + enableAltRow?: boolean; + + /** Gets or sets a value that indicates whether to enable the save action in the grid through row selection + * @Default {true} + */ + enableAutoSaveOnSelectionChange?: boolean; + + /** Gets or sets a value that indicates whether to enable mouse over effect on the corresponding column header cell of the grid + * @Default {false} + */ + enableHeaderHover?: boolean; + + /** Gets or sets a value that indicates whether to persist the grid model state in page using applicable medium i.e., HTML5 localStorage or cookies + * @Default {false} + */ + enablePersistence?: boolean; + + /** Gets or sets a value that indicates whether the grid rows has to be rendered as detail view in mobile mode + * @Default {false} + */ + enableResponsiveRow?: boolean; + + /** Gets or sets a value that indicates whether to enable mouse over effect on corresponding grid row. + * @Default {true} + */ + enableRowHover?: boolean; + + /** Align content in the grid control from right to left by setting the property as true. + * @Default {false} + */ + enableRTL?: boolean; + + /** To Disable the mouse swipe property as false. + * @Default {true} + */ + enableTouch?: boolean; + + /** It sets a value that indicates whether to enable toolbar items, when allowEditing, allowAdding and allowDeleting property set as false in the grid. + * @Default {false} + */ + enableToolbarItems?: boolean; + + /** Act as mapper for the excel exporting URL. + * @Default {ExportToExcel} + */ + exportToExcelAction?: string; + + /** Act as mapper for the PDF exporting URL. + * @Default {ExportToPdf} + */ + exportToPdfAction?: string; + + /** Act as mapper for the Word exporting URL. + * @Default {ExportToWord} + */ + exportToWordAction?: string; + + /** Gets or sets an object that indicates whether to customize the filtering behavior of the grid + */ + filterSettings?: FilterSettings; + + /** Gets or sets an object that indicates whether to customize the grouping behavior of the grid. + */ + groupSettings?: GroupSettings; + + /** Gets or sets a value that indicates whether the grid design has be to made responsive. + * @Default {false} + */ + isResponsive?: boolean; + + /** This specifies to change the key in keyboard interaction to grid control + * @Default {null} + */ + keySettings?: any; + + /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data i.e. in a language and culture specific to + * a particular country or region. + * @Default {en-US} + */ + locale?: string; + + /** Gets or sets a value that indicates whether to set the minimum width of the responsive grid while isResponsive property is true and enableResponsiveRow property is set as false. + * @Default {0} + */ + minWidth?: number; + + /** Gets or sets an object that indicates whether to modify the pager default configuration. + */ + pageSettings?: PageSettings; + + /** Query the dataSource from the table for Grid. + * @Default {null} + */ + query?: any; + + /** Gets or sets an object that indicates whether to modify the resizing behavior. + */ + resizeSettings?: ResizeSettings; + + /** Gets or sets a value that indicates to render the grid with template rows. The template row must be a table row. That table row must have the JavaScript render binding format + * ({{:columnName}}) then the grid data source binds the data to the corresponding table row of the template. + * @Default {null} + */ + rowTemplate?: string; + + /** Gets or sets an object that indicates whether to customize the drag and drop behavior of the grid rows + */ + rowDropSettings?: RowDropSettings; + + /** Gets or sets an object that indicates whether to customize the searching behavior of the grid + */ + searchSettings?: SearchSettings; + + /** Gets a value that indicates whether the grid model to hold multiple selected records . selectedRecords can be used to displayed hold the single or multiple selected records using + * “selectedRecords” property + * @Default {null} + */ + selectedRecords?: any[]; + + /** Gets or sets a value that indicates to select the row while initializing the grid + * @Default {-1} + */ + selectedRowIndex?: number; + + /** Gets or sets a value that indicates the selected rows in grid + * @Default {[]} + */ + selectedRowIndices?: any[]; + + /** This property is used to configure the selection behavior of the grid. + */ + selectionSettings?: SelectionSettings; + + /** The row selection behavior of grid. Accepting types are "single" and "multiple". + * @Default {ej.Grid.SelectionType.Single} + */ + selectionType?: ej.Grid.SelectionType|string; + + /** Gets or sets an object that indicates whether to customize the scrolling behavior of the grid. + */ + scrollSettings?: ScrollSettings; + + /** Default Value: + * @Default {false} + */ + showColumnChooser?: boolean; + + /** Gets or sets a value that indicates stacked header should be shown on grid layout when the property “stackedHeaderRows” is set. + * @Default {false} + */ + showStackedHeader?: boolean; + + /** Gets or sets a value that indicates summary rows should be shown on grid layout when the property “summaryRows” is set + * @Default {false} + */ + showSummary?: boolean; + + /** Gets or sets a value that indicates whether to customize the sorting behavior of the grid. + */ + sortSettings?: SortSettings; + + /** Gets or sets an object that indicates to managing the collection of stacked header rows for the grid. + * @Default {[]} + */ + stackedHeaderRows?: StackedHeaderRow[]; + + /** Gets or sets an object that indicates to managing the collection of summary rows for the grid. + * @Default {[]} + */ + summaryRows?: SummaryRow[]; + + /** Gets or sets an object that indicates whether to auto wrap the grid header or content or both + */ + textWrapSettings?: TextWrapSettings; + + /** Gets or sets an object that indicates whether to enable the toolbar in the grid and add toolbar items + */ + toolbarSettings?: ToolbarSettings; + + /** Triggered for every grid action before its starts. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Triggered for every grid action success event. + */ + actionComplete?(e: ActionCompleteEventArgs): void; + + /** Triggered for every grid action server failure event. + */ + actionFailure?(e: ActionFailureEventArgs): void; + + /** Triggered when record batch add. + */ + batchAdd?(e: BatchAddEventArgs): void; + + /** Triggered when record batch delete. + */ + batchDelete?(e: BatchDeleteEventArgs): void; + + /** Triggered before the batch add. + */ + beforeBatchAdd?(e: BeforeBatchAddEventArgs): void; + + /** Triggered before the batch delete. + */ + beforeBatchDelete?(e: BeforeBatchDeleteEventArgs): void; + + /** Triggered before the batch save. + */ + beforeBatchSave?(e: BeforeBatchSaveEventArgs): void; + + /** Triggered before the print. + */ + beforePrint?(e: BeforePrintEventArgs): void; + + /** Triggered before row drop in the grid + */ + beforeRowDrop?(e: BeforeRowDropEventArgs): void; + + /** Triggered before the record is going to be edited. + */ + beginEdit?(e: BeginEditEventArgs): void; + + /** Triggered when record cell edit. + */ + cellEdit?(e: CellEditEventArgs): void; + + /** Triggered when record cell save. + */ + cellSave?(e: CellSaveEventArgs): void; + + /** Triggered after the cell is selected. + */ + cellSelected?(e: CellSelectedEventArgs): void; + + /** Triggered before the cell is going to be selected. + */ + cellSelecting?(e: CellSelectingEventArgs): void; + + /** Triggered after the cell is deselected. + */ + cellDeselected?(e: CellDeselectedEventArgs): void; + + /** Triggered before the cell is going to be deselected. + */ + cellDeselecting?(e: CellDeselectingEventArgs): void; - /** Fires when the file is uploading. */ - inProgress?(e: InProgressEventArgs): void; + /** Triggered when the column is being dragged. + */ + columnDrag?(e: ColumnDragEventArgs): void; - /** Fires when the uploaded file is removed successfully. */ - remove?(e: RemoveEventArgs): void; - } + /** Triggered when column dragging begins. + */ + columnDragStart?(e: ColumnDragStartEventArgs): void; - export interface BeforeSendEventArgs { + /** Triggered when the column is dropped. + */ + columnDrop?(e: ColumnDropEventArgs): void; - /** Selected FileList Object. - */ - files?: any; + /** Triggered after the column is selected. + */ + columnSelected?(e: ColumnSelectedEventArgs): void; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Triggered before the column is going to be selected. + */ + columnSelecting?(e: ColumnSelectingEventArgs): void; - /** returns the Uploadbox model - */ - model?: any; + /** Triggered after the column is deselected. + */ + columnDeselected?(e: ColumnDeselectedEventArgs): void; - /** XHR-AJAX Object for reference. - */ - xhr?: any; + /** Triggered before the column is going to be deselected. + */ + columnDeselecting?(e: ColumnDeselectingEventArgs): void; - /** returns the name of the event. - */ - type?: string; - } + /** Triggered when context menu item is clicked + */ + contextClick?(e: ContextClickEventArgs): void; - export interface BeginEventArgs { + /** Triggered before the context menu is opened. + */ + contextOpen?(e: ContextOpenEventArgs): void; - /** To pass additional information to the server. - */ - data?: any; + /** Triggered when the grid is rendered completely. + */ + create?(e: CreateEventArgs): void; - /** Selected FileList Object. - */ - files?: any; + /** Triggered when the grid is bound with data during initial rendering. + */ + dataBound?(e: DataBoundEventArgs): void; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Triggered when grid going to destroy. + */ + destroy?(e: DestroyEventArgs): void; - /** returns the Uploadbox model - */ - model?: any; + /** Triggered when detail template row is clicked to collapse. + */ + detailsCollapse?(e: DetailsCollapseEventArgs): void; - /** returns the name of the event. - */ - type?: string; - } + /** Triggered detail template row is initialized. + */ + detailsDataBound?(e: DetailsDataBoundEventArgs): void; - export interface CancelEventArgs { + /** Triggered when detail template row is clicked to expand. + */ + detailsExpand?(e: DetailsExpandEventArgs): void; - /** Canceled FileList Object. - */ - fileStatus?: any; + /** Triggered after the record is added. + */ + endAdd?(e: EndAddEventArgs): void; - /** returns the Uploadbox model - */ - model?: any; + /** Triggered after the record is deleted. + */ + endDelete?(e: EndDeleteEventArgs): void; - /** returns the name of the event. - */ - type?: string; - } + /** Triggered after the record is edited. + */ + endEdit?(e: EndEditEventArgs): void; - export interface CompleteEventArgs { + /** Triggered initial load. + */ + load?(e: LoadEventArgs): void; - /** AJAX event argument for reference. - */ - e?: any; + /** Triggered every time a request is made to access particular header cell information, element and data. + */ + mergeHeaderCellInfo?(e: MergeHeaderCellInfoEventArgs): void; - /** Uploaded file list. - */ - files?: any; + /** Triggered every time a request is made to access particular cell information, element and data. + */ + mergeCellInfo?(e: MergeCellInfoEventArgs): void; - /** response from the server. - */ - responseText?: string; + /** Triggered every time a request is made to access particular cell information, element and data. + */ + queryCellInfo?(e: QueryCellInfoEventArgs): void; - /** XHR-AJAX Object for reference. - */ - xhr?: any; + /** Triggered when record is clicked. + */ + recordClick?(e: RecordClickEventArgs): void; - /** returns the Uploadbox model - */ - model?: any; + /** Triggered when record is double clicked. + */ + recordDoubleClick?(e: RecordDoubleClickEventArgs): void; - /** returns the name of the event. - */ - type?: string; - } + /** Triggered after column resized. + */ + resized?(e: ResizedEventArgs): void; - export interface SuccessEventArgs { + /** Triggered when column resize end. + */ + resizeEnd?(e: ResizeEndEventArgs): void; - /** response from the server. - */ - responseText?: string; + /** Triggered when column resize start. + */ + resizeStart?(e: ResizeStartEventArgs): void; - /** AJAX event argument for reference. - */ - e?: any; + /** Triggered when right clicked on grid element. + */ + rightClick?(e: RightClickEventArgs): void; - /** successfully uploaded files list. - */ - success?: any; + /** Triggered every time a request is made to access row information, element and data. + */ + rowDataBound?(e: RowDataBoundEventArgs): void; - /** Uploaded file list. - */ - files?: any; + /** Triggered after the row is selected. + */ + rowSelected?(e: RowSelectedEventArgs): void; - /** XHR-AJAX Object for reference. - */ - xhr?: any; + /** Triggered before the row is going to be selected. + */ + rowSelecting?(e: RowSelectingEventArgs): void; - /** returns the Uploadbox model - */ - model?: any; + /** Triggered after the row is deselected. + */ + rowDeselected?(e: RowDeselectedEventArgs): void; - /** returns the name of the event. - */ - type?: string; - } + /** Triggered before the row is going to be deselected. + */ + rowDeselecting?(e: RowDeselectingEventArgs): void; - export interface CreateEventArgs { + /** Triggered when the row is being dragged. + */ + rowDrag?(e: RowDragEventArgs): void; - /** returns the Uploadbox model - */ - model?: any; + /** Triggered when row dragging begins. + */ + rowDragStart?(e: RowDragStartEventArgs): void; - /** returns the name of the event. - */ - type?: string; - } + /** Triggered when the row is dropped. + */ + rowDrop?(e: RowDropEventArgs): void; - export interface DestroyEventArgs { + /** Triggered when refresh the template column elements in the Grid. + */ + templateRefresh?(e: TemplateRefreshEventArgs): void; - /** returns the Uploadbox model - */ - model?: any; + /** Triggered when toolbar item is clicked in grid. + */ + toolbarClick?(e: ToolbarClickEventArgs): void; + } - /** returns the name of the event. - */ - type?: string; - } + export interface ActionBeginEventArgs { - export interface ErrorEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** details about the error information. - */ - error?: string; + /** Returns the grid model. + */ + model?: any; - /** returns the name of the event. - */ - type?: string; + /** Returns the name of the event. + */ + type?: string; - /** error event action details. - */ - action?: string; + /** Returns the current selected page number. + */ + currentPage?: number; - /** returns the file details of the file uploaded - */ - files?: any; - } + /** Returns the previous selected page number. + */ + previousPage?: number; - export interface FileSelectEventArgs { + /** Returns the end row index of that current page. + */ + endIndex?: number; - /** returns Selected FileList objects - */ - files?: any; + /** Returns request type. + */ + requestType?: string; - /** returns the Uploadbox model - */ - model?: any; + /** Returns the start row index of that current page. + */ + startIndex?: number; - /** returns the name of the event. - */ - type?: string; - } + /** Returns the current grouped column field name. + */ + columnName?: string; - export interface InProgressEventArgs { + /** Returns the column sort direction. + */ + columnSortDirection?: string; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Returns current edited row. + */ + row?: any; - /** AJAX event argument for reference. - */ - e?: any; + /** Returns the current action event type. + */ + originalEventType?: string; - /** returns Selected FileList objects - */ - files?: any; + /** Returns primary key. + */ + primaryKey?: string; - /** returns the Uploadbox model - */ - model?: any; + /** Returns primary key value. + */ + primaryKeyValue?: string; - /** returns the current progress percentage. - */ - percentage?: any; + /** Returns the edited row index. + */ + rowIndex?: number; - /** returns the name of the event. - */ - type?: string; - } + /** Returns the record object (JSON). + */ + data?: any; - export interface RemoveEventArgs { + /** Returns the record object (JSON). + */ + rowData?: any; - /** returns the Uploadbox model - */ - model?: any; + /** Returns the foreign key record object (JSON). + */ + foreignKeyData?: any; - /** returns the name of the event. - */ - type?: string; + /** Returns the selected row index. + */ + selectedRow?: number; - /** returns the file details of the file object - */ - fileStatus?: any; - } + /** Returns selected row for delete. + */ + tr?: any; - export interface ButtonText { + /** Returns current filtering column field name. + */ + currentFilteringColumn?: any; - /** Sets the text for the browse button. - */ - browse?: string; + /** Returns current filtering object. + */ + currentFilterObject?: any; - /** Sets the text for the cancel button. - */ - cancel?: string; + /** Returns filter details. + */ + filterCollection?: any; - /** Sets the text for the close button. - */ - Close?: string; + /** Returns type of the column like number, string and so on. + */ + columnType?: string; - /** Sets the text for the Upload button inside the dialog popup. - */ - upload?: string; - } + /** Returns the excel filter model. + */ + filtermodel?: any; - export interface CustomFileDetails { - - /** Enables the file upload interactions like remove/cancel in File details of the dialog popup. - */ - action?: boolean; - - /** Enables the name in the File details of the dialog popup. - */ - name?: boolean; - - /** Enables or disables the File size details of the dialog popup. - */ - size?: boolean; - - /** Enables or disables the file uploading status visibility in the dialog file details content. - */ - status?: boolean; - - /** Enables the title in File details for the dialog popup. - */ - title?: boolean; - } - - export interface DialogAction { - - /** Once uploaded successfully, the dialog popup closes immediately. - */ - closeOnComplete?: boolean; - - /** Sets the content container option to the Uploadbox dialog popup. - */ - content?: string; - - /** Enables the drag option to the dialog popup. - */ - drag?: boolean; - - /** Enables or disables the Uploadbox dialog’s modal property to the dialog popup. - */ - modal?: boolean; - } - - export interface DialogText { - - /** Sets the uploaded file’s Name (header text) to the Dialog popup. - */ - name?: string; - - /** Sets the upload file Size (header text) to the dialog popup. - */ - size?: string; - - /** Sets the upload file Status (header text) to the dialog popup. - */ - status?: string; - - /** Sets the title text of the dialog popup. - */ - title?: string; - } - } - - class WaitingPopup extends ej.Widget { - static fn: WaitingPopup; - constructor(element: JQuery | Element, options?: WaitingPopup.Model); - static Locale: any; - model: WaitingPopup.Model; - defaults: WaitingPopup.Model; - - /** To hide the waiting popup - * @returns {void} - */ - hide(): void; - - /** Refreshes the WaitingPopup control by resetting the pop-up panel position and content position - * @returns {void} - */ - refresh(): void; - - /** To show the waiting popup - * @returns {void} - */ - show(): void; - } - export namespace WaitingPopup { - - export interface Model { - - /** Sets the root class for the WaitingPopup control theme - * @Default {null} - */ - cssClass?: string; - - /** Specifies the list of HTML attributes to be added to waitingpopup control. - * @Default {{}} - */ - htmlAttributes?: any; - - /** Enables or disables the default loading icon. - * @Default {true} - */ - showImage?: boolean; - - /** Enables the visibility of the WaitingPopup control - * @Default {false} - */ - showOnInit?: boolean; - - /** Specified a selector for elements, within the container. - * @Default {null} - */ - target?: string; - - /** Waitingpopup element append to given container element. - * @Default {null} - */ - appendTo?: string; - - /** Loads HTML content inside the popup panel instead of the default icon - * @Default {null} - */ - template?: any; - - /** Sets the custom text in the pop-up panel to notify the waiting process - * @Default {null} - */ - text?: string; - - /** Fires after Create WaitingPopup successfully */ - create?(e: CreateEventArgs): void; - - /** Fires after Destroy WaitingPopup successfully */ - destroy?(e: DestroyEventArgs): void; - } - - export interface CreateEventArgs { - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the WaitingPopup model - */ - model?: ej.WaitingPopup.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface DestroyEventArgs { - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the WaitingPopup model - */ - model?: ej.WaitingPopup.Model; - - /** returns the name of the event - */ - type?: string; - } - } - - class Grid extends ej.Widget { - static fn: Grid; - constructor(element: JQuery | Element, options?: Grid.Model); - static Locale: any; - model: Grid.Model; - defaults: Grid.Model; - - /** Adds a grid model property which is to be ignored upon exporting. - * @param {Array} Pass the array of parameters which need to be ignored on exporting - * @returns {void} - */ - addIgnoreOnExport(propertyNames: any[]): void; - - /** Adds a grid model property which is to be ignored upon OnServerToolbarClick. - * @param {Array} Pass the array of parameters which need to be ignored on OnServerToolbarClick - * @returns {void} - */ - addIgnoreOnToolbarServerClick(propertyNames: any[]): void; - - /** Add a new record in grid control when allowAdding is set as true. - * @returns {void} - */ - //addRecord(): void; - - /** Add a new record in grid control when allowAdding is set as true. - * @param {Array} Pass the array of added Records - * @param {Array} optionalIf we pass serverChange as true, send post to server side for server action. - * @returns {void} - */ - addRecord(data: any[], serverChange?: any[]): void; - - /** Cancel the modified changes in grid control when edit mode is "batch". - * @returns {void} - */ - batchCancel(): void; - - /** Save the modified changes to data source in grid control when edit mode is "batch". - * @returns {void} - */ - batchSave(): void; - - /** Send a cancel request in grid. - * @returns {void} - */ - cancelEdit(): void; - - /** Send a cancel request to the edited cell in grid. - * @returns {void} - */ - cancelEditCell(): void; - - /** It is used to clear all the cell selection. - * @returns {Boolean} - */ - clearCellSelection(): boolean; - - /** It is used to clear specified cell selection based on the rowIndex and columnIndex provided. - * @param {number} It is used to pass the row index of the cell - * @param {number} It is used to pass the column index of the cell. - * @returns {Boolean} - */ - clearCellSelection(rowIndex: number, columnIndex: number): boolean; - - /** It is used to clear all the row selection or at specific row selection based on the index provided. - * @param {number} optional If index of the column is specified then it will remove the selection from the particular column else it will clears all of the column selection - * @returns {Boolean} - */ - clearColumnSelection(index?: number): boolean; - - /** It is used to clear all the filtering done. - * @param {string} If field of the column is specified then it will clear the particular filtering column - * @returns {void} - */ - clearFiltering(field: string): void; - - /** Clear the searching from the grid - * @returns {void} - */ - clearSearching(): void; - - /** Clear all the row selection or at specific row selection based on the index provided - * @param {number} optional If index of the row is specified then it will remove the selection from the particular row else it will clears all of the row selection - * @returns {Boolean} - */ - clearSelection(index?: number): boolean; - - /** Clear the sorting from columns in the grid - * @returns {void} - */ - clearSorting(): void; - - /** Collapse all the group caption rows in grid - * @returns {void} - */ - collapseAll(): void; - - /** Collapse the group drop area in grid - * @returns {void} - */ - collapseGroupDropArea(): void; - - /** Add or remove columns in grid column collections - * @param {Array|string} Pass array of columns or string of field name to add/remove the column in grid - * @param {string} optional Pass add/remove action to be performed. By default "add" action will perform - * @returns {void} - */ - columns(columnDetails: any[] | string, action?: string): void; - - /** Refresh the grid with new data source - * @param {Array} Pass new data source to the grid - * @param {boolean} optional When templateRefresh is set true, both header and contents get refreshed - * @returns {void} - */ - dataSource(datasource: any[], templateRefresh?: boolean): void; - - /** Delete a record in grid control when allowDeleting is set as true - * @param {string} Pass the primary key field Name of the column - * @param {Array} Pass the JSON data of record need to be delete. - * @returns {void} - */ - deleteRecord(fieldName: string, data: any[]): void; - - /** Delete the row based on the given tr element in grid. - * @param {JQuery} Pass the tr element in grid content to get its row index - * @returns {HTMLElement} - */ - deleteRow($tr: JQuery): HTMLElement; - - /** Destroy the grid widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** Edit a particular cell based on the row index and field name provided in "batch" edit mode. - * @param {number} Pass row index to edit particular cell - * @param {string} Pass the field name of the column to perform batch edit - * @returns {void} - */ - editCell(index: number, fieldName: string): void; - - /** It returns a value and if the input field values of edit form is not based on the validation rules then it will show the validation message. - * @returns {Boolean} - */ - editFormValidate(): boolean; - - /** Send a save request in grid. - * @returns {void} - */ - endEdit(): void; - - /** Expand all the group caption rows in grid. - * @returns {void} - */ - expandAll(): void; - - /** Expand or collapse the row based on the row state in grid - * @param {JQuery} Pass the target object to expand/collapse the row based on its row state - * @returns {void} - */ - expandCollapse($target: JQuery): void; - - /** Expand the group drop area in grid. - * @returns {void} - */ - expandGroupDropArea(): void; - - /** Export the grid content to excel, word or PDF document. - * @param {string} Pass the controller action name corresponding to exporting - * @param {string} optionalASP server event name corresponding to exporting - * @param {boolean} optionalPass the multiple exporting value as true/false - * @param {Array} optionalPass the array of the gridIds to be filtered - * @returns {void} - */ - export(action: string, serverEvent?: string, multipleExport?: boolean, gridIds?: any[]): void; - - /** Send a filtering request to filter one column in grid. - * @param {Array} Pass the field name of the column - * @param {string} string/integer/dateTime operator - * @param {string} Pass the value to be filtered in a column - * @param {string} Pass the predicate as and/or - * @param {boolean} optional Pass the match case value as true/false - * @param {any} optionalactualFilterValue denote the filter object of current filtered columns.Pass the value to filtered in a column - * @returns {void} - */ - filterColumn(fieldName: any[], filterOperator: string, filterValue: string, predicate: string, matchcase?: boolean, actualFilterValue?: any): void; - - /** Send a filtering request to filter single or multiple column in grid. - * @param {Array} Pass array of filterColumn query for performing filter operation - * @returns {void} - */ - filterColumn(filterQueries: any[]): void; - - /** Get the batch changes of edit, delete and add operations of grid. - * @returns {any} - */ - getBatchChanges(): any; - - /** Get the browser details - * @returns {any} - */ - getBrowserDetails(): any; - - /** Get the column details based on the given field in grid - * @param {string} Pass the field name of the column to get the corresponding column object - * @returns {any} - */ - getColumnByField(fieldName: string): any; - - /** Get the column details based on the given header text in grid. - * @param {string} Pass the header text of the column to get the corresponding column object - * @returns {any} - */ - getColumnByHeaderText(headerText: string): any; - - /** Get the column details based on the given column index in grid - * @param {number} Pass the index of the column to get the corresponding column object - * @returns {any} - */ - getColumnByIndex(columnIndex: number): any; - - /** Get the list of field names from column collection in grid. - * @returns {Array} - */ - getColumnFieldNames(): any[]; - - /** Get the column index of the given field in grid. - * @param {string} Pass the field name of the column to get the corresponding column index - * @returns {number} - */ - getColumnIndexByField(fieldName: string): number; - - /** Get the column index of the given headerText of column in grid. - * @param {string} Pass the headerText of the column to get that column index - * @param {string} optionalOptional Pass the field name of the column. - * @returns {number} - */ - getColumnIndexByHeaderText(headerText: string, field?: string): number; - - /** Get the content div element of grid. - * @returns {HTMLElement} - */ - getContent(): HTMLElement; - - /** Get the content table element of grid - * @returns {Array} - */ - getContentTable(): HTMLTableElement[]; - - /** Get the data of currently edited cell value in "batch" edit mode - * @returns {any} - */ - getCurrentEditCellData(): any; - - /** Get the current page index in grid pager. - * @returns {number} - */ - getCurrentIndex(): number; - - /** Get the current page data source of grid. - * @returns {Array} - */ - getCurrentViewData(): any[]; - - /** Get the data of given row index in grid. - * @returns {any} - */ - getDataByIndex(): any; - - /** Get the column field name from the given header text in grid. - * @param {string} Pass header text of the column to get its corresponding field name - * @returns {String} - */ - getFieldNameByHeaderText(headerText: string): string; - - /** Get the filter bar of grid - * @returns {HTMLElement} - */ - getFilterBar(): HTMLElement; - - /** Get the records filtered or searched in Grid - * @returns {Array} - */ - getFilteredRecords(): any[]; - - /** Get the footer content of grid. - * @returns {HTMLElement} - */ - getFooterContent(): HTMLElement; - - /** Get the footer table element of grid. - * @returns {HTMLElement} - */ - getFooterTable(): HTMLElement; - - /** Get the header content div element of grid. - * @returns {HTMLElement} - */ - getHeaderContent(): HTMLElement; - - /** Get the header table element of grid - * @returns {HTMLElement} - */ - getHeaderTable(): HTMLElement; - - /** Get the column header text from the given field name in grid. - * @param {string} Pass field name of the column to get its corresponding header text - * @returns {String} - */ - getHeaderTextByFieldName(field: string): string; - - /** Get the names of all the hidden column collections in grid. - * @returns {Array} - */ - getHiddenColumnNames(): any[]; - - /** Get the row index based on the given tr element in grid. - * @param {JQuery} Pass the tr element in grid content to get its row index - * @returns {number} - */ - getIndexByRow($tr: JQuery): number; - - /** Get the pager of grid. - * @returns {HTMLElement} - */ - getPager(): HTMLElement; - - /** Get the names of primary key columns in Grid - * @returns {Array} - */ - getPrimaryKeyFieldNames(): any[]; - - /** Get the rows(tr element) from the given from and to row index in grid - * @param {number} Pass the from index from which the rows to be returned - * @param {number} Pass the to index to which the rows to be returned - * @returns {HTMLElement} - */ - getRowByIndex(from: number, to: number): HTMLElement; - - /** Get the row height of grid. - * @returns {number} - */ - getRowHeight(): number; - - /** Get the rows(tr element)of grid which is displayed in the current page. - * @returns {HTMLElement} - */ - getRows(): HTMLElement; - - /** Get the scroller object of grid. - * @returns {ej.Scroller} - */ - getScrollObject(): ej.Scroller; - - /** Get the selected records details in grid. - * @returns {Array} - */ - getSelectedRecords(): any[]; - - /** Get the selected row element details in grid. - * @returns {Array} - */ - getSelectedRows(): any[]; - - /** It accepts the string value and returns the field and sorted direction of the column in grid. - * @param {string} Pass the field of the column to get the sorted direction of the corresponding column in Grid. - * @returns {number} - */ - getsortColumnByField(field: string): number; - - /** Get the calculated summary values of JSON data passed to it - * @param {any} Pass Summary Column details - * @param {any} Pass JSON Array for which its field values to be calculated - * @returns {Number} - */ - getSummaryValues(summaryCol: any, summaryData: any): number; - - /** Get the names of all the visible column collections in grid - * @returns {Array} - */ - getVisibleColumnNames(): any[]; - - /** Send a paging request to specified page in grid - * @param {number} Pass the page index to perform paging at specified page index - * @returns {void} - */ - gotoPage(pageIndex: number): void; - - /** Send a column grouping request in grid. - * @param {string} Pass the field Name of the column to be grouped in grid control - * @returns {void} - */ - groupColumn(fieldName: string): void; - - /** Hide columns from the grid based on the header text - * @param {Array|string} you can pass either array of header text of various columns or a header text of a column to hide - * @returns {void} - */ - hideColumns(headerText: any[] | string): void; - - /** Print the grid control - * @returns {void} - */ - print(): void; - - /** It is used to refresh and reset the changes made in "batch" edit mode - * @returns {void} - */ - refreshBatchEditChanges(): void; - - /** It is used to refresh the grid header. - * @returns {void} - */ - refreshHeader(): void; - - /** Refresh the grid contents. The template refreshment is based on the argument passed along with this method - * @param {boolean} optional When templateRefresh is set true, template and grid contents both are refreshed in grid else only grid content is refreshed - * @returns {void} - */ - refreshContent(templateRefresh?: boolean): void; - - /** Refresh the template of the grid - * @returns {void} - */ - refreshTemplate(): void; - - /** Refresh the toolbar items in grid. - * @returns {void} - */ - refreshToolbar(): void; - - /** Remove a column or collection of columns from a sorted column collections in grid. - * @param {Array|string} Pass array of field names of the columns to remove a collection of sorted columns or pass a string of field name to remove a column from sorted column collections - * @returns {void} - */ - removeSortedColumns(fieldName: any[] | string): void; - - /** Creates a grid control - * @returns {void} - */ - render(): void; - - /** Re-order the column in grid - * @param {string} Pass the from field name of the column needs to be changed - * @param {string} Pass the to field name of the column needs to be changed - * @returns {void} - */ - reorderColumns(fromFieldName: string, toFieldName: string): void; - - /** Re-order the row in grid - * @param {Array} Pass the indexes of the rows needs to reorder. - * @param {number} Pass the index of a row where to be reordered. - * @returns {void} - */ - reorderRows(indexes: any[], toindex: number): void; - - /** Reset the model collections like pageSettings, groupSettings, filterSettings, sortSettings and summaryRows. - * @returns {void} - */ - resetModelCollections(): void; - - /** Resize the columns by giving column name and width for the corresponding one. - * @param {string} Pass the column name that needs to be changed - * @param {string} Pass the width to resize the particular columns - * @returns {void} - */ - resizeColumns(column: string, width: string): void; - - /** Resolves row height issue when unbound column is used with FrozenColumn - * @returns {void} - */ - rowHeightRefresh(): void; - - /** Save the particular edited cell in grid. - * @returns {void} - */ - //saveCell(): void; - - /** We can prevent the client side cellSave event triggering by passing the preventSaveEvent argument as true. - * @param {boolean} optionalIf we pass preventSaveEvent as true, it prevents the client side cellSave event triggering - * @returns {void} - */ - saveCell(preventSaveEvent: boolean): void; - - /** Set dimension for grid with corresponding to grid parent. - * @param {number} Pass the height of the grid container - * @param {number} Pass the width of the grid container - * @returns {void} - */ - setDimension(height: number, width: number): void; - - /** Send a request to grid to refresh the width set to columns - * @returns {void} - */ - setWidthToColumns(): void; - - /** Send a search request to grid with specified string passed in it - * @param {string} Pass the string to search in Grid records - * @returns {void} - */ - search(searchString: string): void; - - /** Select cells in grid. - * @param {any} It is used to set the starting index of row and indexes of cells for that corresponding row for selecting cells. - * @returns {void} - */ - selectCells(rowCellIndexes: any): void; - - /** Select columns in grid. - * @param {number} It is used to set the starting index of column for selecting columns. - * @returns {void} - */ - selectColumns(fromIndex: number): void; - - /** Select the specified columns in grid based on Index provided. - * @param {number} It is used to set the starting index of column for selecting columns. - * @param {number} optionalIt is used to set the ending index of column for selecting columns. - * @returns {Boolean} - */ - selectColumns(columnIndex: number, toIndex?: number): boolean; - - /** Select rows in grid. - * @param {number} It is used to set the starting index of row for selecting rows. - * @param {number} It is used to set the ending index of row for selecting rows. - * @returns {void} - */ - selectRows(fromIndex: number, toIndex: number): void; - - /** Select specified rows in grid based on Index provided. - * @param {Array|number} It is used to set the starting index of row for selecting rows. - * @param {number} optionalIt is used to set the ending index of row for selecting rows. - * @param {any} optionalTarget element which is clicked. - * @returns {void} - */ - selectRows(from: any[] | number, to: number, target?: any): void; - - /** Select rows in grid. - * @param {Array} Pass array of rowIndexes for selecting rows - * @returns {void} - */ - selectRows(rowIndexes: any[]): void; - - /** Used to update a particular cell value. - * @returns {void} - */ - setCellText(): void; - - /** Used to update a particular cell value based on specified row Index and the fieldName. - * @param {number} It is used to set the index for selecting the row. - * @param {string} It is used to set the field name for selecting column. - * @param {any} It is used to set the value for the selected cell. - * @returns {void} - */ - setCellValue(Index: number, fieldName: string, value: any): void; - - /** It sets the default data to the column in grid during adding record in batch edit mode. - * @returns {void} - */ - setDefaultData(): void; - - /** The grid rows has to be rendered as detail view in mobile mode based on given value. - * @param {number} It is used to render grid rows as details view in mobile mode. - * @returns {void} - */ - setPhoneModeMaxWidth(Index: number): void; - - /** Set validation to edit form in the grid. - * @returns {void} - */ - setValidation(): void; - - /** Set validation to a particular input field in a edit form dynamically. - * @param {string} Specify the field name of the column to set validation rules - * @param {any} Specify the validation rules for the field - * @returns {void} - */ - setValidationToField(fieldName: string, rules: any): void; - - /** Show columns in the grid based on the header text - * @param {Array|string} you can pass either array of header text of various columns or a header text of a column to show - * @returns {void} - */ - showColumns(headerText: any[] | string): void; - - /** Send a sorting request in grid. - * @param {string} Pass the field name of the column as columnName for which sorting have to be performed - * @param {string} optional Pass the sort direction ascending/descending by which the column have to be sort. By default it is sorting in an ascending order - * @returns {void} - */ - sortColumn(columnName: string, sortingDirection?: string): void; - - /** Send an edit record request in grid - * @param {JQuery} Pass the tr- selected row element to be edited in grid - * @returns {void} - */ - startEdit($tr: JQuery): void; - - /** Un-group a column from grouped columns collection in grid - * @param {string} Pass the field Name of the column to be ungrouped from grouped column collection - * @returns {void} - */ - ungroupColumn(fieldName: string): void; - - /** Update a edited record in grid control when allowEditing is set as true. - * @param {string} Pass the primary key field Name of the column - * @param {Array} Pass the edited JSON data of record need to be update. - * @returns {void} - */ - updateRecord(fieldName: string, data: any[]): void; - - /** It adapts grid to its parent element or to the browsers window. - * @returns {void} - */ - windowonresize(): void; - } - export namespace Grid { - - export interface Model { - - /** Gets or sets a value that indicates whether to customizing cell based on our needs. - * @Default {false} - */ - allowCellMerging?: boolean; - - /** Gets or sets a value that indicates whether to enable dynamic grouping behavior. Grouping can be done by drag on drop desired columns to grid’s GroupDropArea. - * This can be further customized through “groupSettings” property. - * @Default {false} - */ - allowGrouping?: boolean; - - /** Gets or sets a value that indicates whether to enable keyboard support for performing grid actions. selectionType – Gets or sets a value that indicates whether to enable single - * row or multiple rows selection behavior in grid. Multiple selection can be done through by holding CTRL and clicking the grid rows - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** Gets or sets a value that indicates whether to enable dynamic filtering behavior on grid. Filtering can be used to limit the records displayed using required criteria and - * this can be further customized through “filterSettings” property - * @Default {false} - */ - allowFiltering?: boolean; - - /** Gets or sets a value that indicates whether to enable the dynamic sorting behavior on grid data. Sorting can be done through clicking on particular column header. - * @Default {false} - */ - allowSorting?: boolean; - - /** Gets or sets a value that indicates whether to enable multi columns sorting behavior in grid. Sort multiple columns by holding CTRL and click on the corresponding column header. - * @Default {false} - */ - allowMultiSorting?: boolean; - - /** This specifies the grid to show the paginated data. Also enables pager control at the bottom of grid for dynamic navigation through data source. - * Paging can be further customized through “pageSettings” property. - * @Default {false} - */ - allowPaging?: boolean; - - /** Gets or sets a value that indicates whether to enable the columns reordering behavior in the grid. Reordering can be done through by drag and drop the particular column - * from one index to another index within the grid. - * @Default {false} - */ - allowReordering?: boolean; - - /** Gets or sets a value that indicates whether the column is non resizable. Column width is set automatically based on the content or header text which is large. - * @Default {false} - */ - allowResizeToFit?: boolean; - - /** Gets or sets a value that indicates whether to enable dynamic resizable of columns. Resize the width of the columns by simply click and move the particular column header line - * @Default {false} - */ - allowResizing?: boolean; - - /** Gets or sets a value that indicates whether to enable the rows reordering in Grid and drag & drop rows between multiple Grid. - * @Default {false} - */ - allowRowDragAndDrop?: boolean; - - /** Gets or sets a value that indicates whether to enable the scrollbar in the grid and view the records by scroll through the grid manually - * @Default {false} - */ - allowScrolling?: boolean; - - /** Gets or sets a value that indicates whether to enable dynamic searching behavior in grid. Currently search box can be enabled through “toolbarSettings” - * @Default {false} - */ - allowSearching?: boolean; - - /** Gets or sets a value that indicates whether user can select rows on grid. On enabling feature, selected row will be highlighted. - * @Default {true} - */ - allowSelection?: boolean; - - /** Gets or sets a value that indicates whether the Content will wrap to the next line if the content exceeds the boundary of the Column Cells. - * @Default {false} - */ - allowTextWrap?: boolean; - - /** Gets or sets a value that indicates whether to enable the multiple exporting behavior on grid data. - * @Default {false} - */ - allowMultipleExporting?: boolean; - - /** Gets or sets a value that indicates to define common width for all the columns in the grid. - */ - commonWidth?: number; - - /** Gets or sets a value that indicates to enable the visibility of the grid lines. - * @Default {ej.Grid.GridLines.Both} - */ - gridLines?: ej.Grid.GridLines | string; - - /** This specifies the grid to add the grid control inside the grid row of the parent with expand/collapse options - * @Default {null} - */ - childGrid?: any; - - /** Used to enable or disable static width settings for column. If the columnLayout is set as fixed, then column width will be static. - * @Default {ej.Grid.ColumnLayout.Auto} - */ - columnLayout?: ej.Grid.ColumnLayout | string; - - /** Gets or sets an object that indicates to render the grid with specified columns - * @Default {[]} - */ - columns?: Column[]; - - /** Gets or sets an object that indicates whether to customize the context menu behavior of the grid. - */ - contextMenuSettings?: ContextMenuSettings; - - /** Gets or sets a value that indicates to render the grid with custom theme. - */ - cssClass?: string; - - /** Gets or sets the data to render the grid with records - * @Default {null} - */ - dataSource?: any; - - /** Default Value: - * @Default {null} - */ - detailsTemplate?: string; - - /** Gets or sets an object that indicates whether to customize the editing behavior of the grid. - */ - editSettings?: EditSettings; - - /** Gets or sets a value that indicates whether to enable the alternative rows differentiation in the grid records based on corresponding theme. - * @Default {true} - */ - enableAltRow?: boolean; - - /** Gets or sets a value that indicates whether to enable the save action in the grid through row selection - * @Default {true} - */ - enableAutoSaveOnSelectionChange?: boolean; - - /** Gets or sets a value that indicates whether to enable mouse over effect on the corresponding column header cell of the grid - * @Default {false} - */ - enableHeaderHover?: boolean; - - /** Gets or sets a value that indicates whether to persist the grid model state in page using applicable medium i.e., HTML5 localStorage or cookies - * @Default {false} - */ - enablePersistence?: boolean; - - /** Gets or sets a value that indicates whether the grid rows has to be rendered as detail view in mobile mode - * @Default {false} - */ - enableResponsiveRow?: boolean; - - /** Gets or sets a value that indicates whether to enable mouse over effect on corresponding grid row. - * @Default {true} - */ - enableRowHover?: boolean; - - /** Align content in the grid control from right to left by setting the property as true. - * @Default {false} - */ - enableRTL?: boolean; - - /** To Disable the mouse swipe property as false. - * @Default {true} - */ - enableTouch?: boolean; - - /** It sets a value that indicates whether to enable toolbar items, when allowEditing, allowAdding and allowDeleting property set as false in the grid. - * @Default {false} - */ - enableToolbarItems?: boolean; - - /** Act as mapper for the excel exporting URL. - * @Default {ExportToExcel} - */ - exportToExcelAction?: string; - - /** Act as mapper for the PDF exporting URL. - * @Default {ExportToPdf} - */ - exportToPdfAction?: string; - - /** Act as mapper for the Word exporting URL. - * @Default {ExportToWord} - */ - exportToWordAction?: string; - - /** Gets or sets an object that indicates whether to customize the filtering behavior of the grid - */ - filterSettings?: FilterSettings; - - /** Gets or sets an object that indicates whether to customize the grouping behavior of the grid. - */ - groupSettings?: GroupSettings; - - /** Gets or sets a value that indicates whether the grid design has be to made responsive. - * @Default {false} - */ - isResponsive?: boolean; - - /** This specifies to change the key in keyboard interaction to grid control - * @Default {null} - */ - keySettings?: any; - - /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data i.e. in a language and - * culture specific to a particular country or region. - * @Default {en-US} - */ - locale?: string; - - /** Gets or sets a value that indicates whether to set the minimum width of the responsive grid while isResponsive property is true and enableResponsiveRow property is set as false. - * @Default {0} - */ - minWidth?: number; - - /** Gets or sets an object that indicates whether to modify the pager default configuration. - */ - pageSettings?: PageSettings; - - /** Query the dataSource from the table for Grid. - * @Default {null} - */ - query?: any; - - /** Gets or sets an object that indicates whether to modify the resizing behavior. - */ - resizeSettings?: ResizeSettings; - - /** Gets or sets a value that indicates to render the grid with template rows. The template row must be a table row. That table row must have the JavaScript render binding format ({{:columnName}}) - * then the grid data source binds the data to the corresponding table row of the template. - * @Default {null} - */ - rowTemplate?: string; - - /** Gets or sets an object that indicates whether to customize the drag and drop behavior of the grid rows - */ - rowDropSettings?: RowDropSettings; - - /** Gets or sets an object that indicates whether to customize the searching behavior of the grid - */ - searchSettings?: SearchSettings; - - /** Gets a value that indicates whether the grid model to hold multiple selected records . selectedRecords can be used to displayed hold the single - * or multiple selected records using “selectedRecords” property - * @Default {null} - */ - selectedRecords?: any[]; - - /** Gets or sets a value that indicates to select the row while initializing the grid - * @Default {-1} - */ - selectedRowIndex?: number; - - /** Gets or sets a value that indicates the selected rows in grid - * @Default {[]} - */ - selectedRowIndices?: any[]; - - /** This property is used to configure the selection behavior of the grid. - */ - selectionSettings?: SelectionSettings; - - /** The row selection behavior of grid. Accepting types are "single" and "multiple". - * @Default {ej.Grid.SelectionType.Single} - */ - selectionType?: ej.Grid.SelectionType | string; - - /** Gets or sets an object that indicates whether to customize the scrolling behavior of the grid. - */ - scrollSettings?: ScrollSettings; + /** Returns the dataSource. + */ + dataSource?: any; - /** Default Value: - * @Default {false} - */ - showColumnChooser?: boolean; + /** Returns the query manager. + */ + query?: any; - /** Gets or sets a value that indicates stacked header should be shown on grid layout when the property “stackedHeaderRows” is set. - * @Default {false} - */ - showStackedHeader?: boolean; + /** Returns the customfilter option value. + */ + isCustomFilter?: boolean; + } - /** Gets or sets a value that indicates summary rows should be shown on grid layout when the property “summaryRows” is set - * @Default {false} - */ - showSummary?: boolean; + export interface ActionCompleteEventArgs { - /** Gets or sets a value that indicates whether to customize the sorting behavior of the grid. - */ - sortSettings?: SortSettings; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Gets or sets an object that indicates to managing the collection of stacked header rows for the grid. - * @Default {[]} - */ - stackedHeaderRows?: StackedHeaderRow[]; + /** Returns the grid model. + */ + model?: any; - /** Gets or sets an object that indicates to managing the collection of summary rows for the grid. - * @Default {[]} - */ - summaryRows?: SummaryRow[]; + /** Returns request type. + */ + requestType?: string; - /** Gets or sets an object that indicates whether to auto wrap the grid header or content or both - */ - textWrapSettings?: TextWrapSettings; + /** Returns the name of the event. + */ + type?: string; - /** Gets or sets an object that indicates whether to enable the toolbar in the grid and add toolbar items - */ - toolbarSettings?: ToolbarSettings; + /** Returns the current selected page number. + */ + currentPage?: number; - /** Triggered for every grid action before its starts. */ - actionBegin?(e: ActionBeginEventArgs): void; + /** Returns the previous selected page number. + */ + previousPage?: number; - /** Triggered for every grid action success event. */ - actionComplete?(e: ActionCompleteEventArgs): void; + /** Returns the end row index of that current page. + */ + endIndex?: number; - /** Triggered for every grid action server failure event. */ - actionFailure?(e: ActionFailureEventArgs): void; + /** Returns current action event type. + */ + originalEventType?: string; - /** Triggered when record batch add. */ - batchAdd?(e: BatchAddEventArgs): void; + /** Returns the start row index of the current page. + */ + startIndex?: number; - /** Triggered when record batch delete. */ - batchDelete?(e: BatchDeleteEventArgs): void; + /** Returns grid element. + */ + target?: any; - /** Triggered before the batch add. */ - beforeBatchAdd?(e: BeforeBatchAddEventArgs): void; + /** Returns the current sorted column field name. + */ + columnName?: string; - /** Triggered before the batch delete. */ - beforeBatchDelete?(e: BeforeBatchDeleteEventArgs): void; + /** Returns the column sort direction. + */ + columnSortDirection?: string; - /** Triggered before the batch save. */ - beforeBatchSave?(e: BeforeBatchSaveEventArgs): void; + /** Returns current edited row. + */ + row?: any; - /** Triggered before the print. */ - beforePrint?(e: BeforePrintEventArgs): void; + /** Returns primary key. + */ + primaryKey?: string; - /** Triggered before row drop in the grid */ - beforeRowDrop?(e: BeforeRowDropEventArgs): void; + /** Returns primary key value. + */ + primaryKeyValue?: string; - /** Triggered before the record is going to be edited. */ - beginEdit?(e: BeginEditEventArgs): void; + /** Returns the edited row index. + */ + rowIndex?: number; - /** Triggered when record cell edit. */ - cellEdit?(e: CellEditEventArgs): void; + /** Returns the record object (JSON). + */ + data?: any; - /** Triggered when record cell save. */ - cellSave?(e: CellSaveEventArgs): void; + /** Returns the record object (JSON). + */ + rowData?: any; - /** Triggered after the cell is selected. */ - cellSelected?(e: CellSelectedEventArgs): void; + /** Returns the selectedRow index. + */ + selectedRow?: number; - /** Triggered before the cell is going to be selected. */ - cellSelecting?(e: CellSelectingEventArgs): void; + /** Returns the foreign key record object (JSON). + */ + foreignKeyData?: any; - /** Triggered after the cell is deselected. */ - cellDeselected?(e: CellDeselectedEventArgs): void; + /** Returns selected row for delete. + */ + tr?: any; - /** Triggered before the cell is going to be deselected. */ - cellDeselecting?(e: CellDeselectingEventArgs): void; + /** Returns current filtering column field name. + */ + currentFilteringColumn?: string; - /** Triggered when the column is being dragged. */ - columnDrag?(e: ColumnDragEventArgs): void; + /** Returns current filtering object. + */ + currentFilterObject?: any; - /** Triggered when column dragging begins. */ - columnDragStart?(e: ColumnDragStartEventArgs): void; + /** Returns filter details. + */ + filterCollection?: any; - /** Triggered when the column is dropped. */ - columnDrop?(e: ColumnDropEventArgs): void; + /** Returns the dataSource. + */ + dataSource?: any; - /** Triggered when the row is being dragged. */ - rowDrag?(e: RowDragEventArgs): void; + /** Returns the excel filter model. + */ + filtermodel?: any; - /** Triggered when row dragging begins. */ - rowDragStart?(e: RowDragStartEventArgs): void; + /** Returns type of the column like number, string and so on. + */ + columnType?: string; - /** Triggered when the row is dropped. */ - rowDrop?(e: RowDropEventArgs): void; + /** Returns the customfilter option value. + */ + isCustomFilter?: boolean; + } - /** Triggered after the column is selected. */ - columnSelected?(e: ColumnSelectedEventArgs): void; + export interface ActionFailureEventArgs { - /** Triggered before the column is going to be selected. */ - columnSelecting?(e: ColumnSelectingEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered after the column is deselected. */ - columnDeselected?(e: ColumnDeselectedEventArgs): void; + /** Returns the grid model. + */ + model?: any; - /** Triggered before the column is going to be deselected. */ - columnDeselecting?(e: ColumnDeselectingEventArgs): void; + /** Returns request type. + */ + requestType?: string; - /** Triggered when context menu item is clicked */ - contextClick?(e: ContextClickEventArgs): void; + /** Returns the name of the event. + */ + type?: string; - /** Triggered before the context menu is opened. */ - contextOpen?(e: ContextOpenEventArgs): void; + /** Returns the error return by server. + */ + error?: any; - /** Triggered when the grid is rendered completely. */ - create?(e: CreateEventArgs): void; + /** Returns the current selected page number. + */ + currentPage?: number; - /** Triggered when the grid is bound with data during initial rendering. */ - dataBound?(e: DataBoundEventArgs): void; + /** Returns the previous selected page number. + */ + previousPage?: number; - /** Triggered when grid going to destroy. */ - destroy?(e: DestroyEventArgs): void; + /** Returns the end row index of that current page. + */ + endIndex?: number; - /** Triggered when detail template row is clicked to collapse. */ - detailsCollapse?(e: DetailsCollapseEventArgs): void; + /** Returns current action event type. + */ + originalEventType?: string; - /** Triggered detail template row is initialized. */ - detailsDataBound?(e: DetailsDataBoundEventArgs): void; + /** Returns the start row index of the current page. + */ + startIndex?: number; - /** Triggered when detail template row is clicked to expand. */ - detailsExpand?(e: DetailsExpandEventArgs): void; + /** Returns grid element. + */ + target?: any; - /** Triggered after the record is added. */ - endAdd?(e: EndAddEventArgs): void; + /** Returns the current sorted column field name. + */ + columnName?: string; - /** Triggered after the record is deleted. */ - endDelete?(e: EndDeleteEventArgs): void; + /** Returns the column sort direction. + */ + columnSortDirection?: string; - /** Triggered after the record is edited. */ - endEdit?(e: EndEditEventArgs): void; + /** Returns current edited row. + */ + row?: any; - /** Triggered initial load. */ - load?(e: LoadEventArgs): void; + /** Returns primary key. + */ + primaryKey?: string; - /** Triggered every time a request is made to access particular cell information, element and data. */ - mergeCellInfo?(e: MergeCellInfoEventArgs): void; + /** Returns primary key value. + */ + primaryKeyValue?: string; - /** Triggered every time a request is made to access particular cell information, element and data. */ - queryCellInfo?(e: QueryCellInfoEventArgs): void; + /** Returns the edited row index. + */ + rowIndex?: number; - /** Triggered when record is clicked. */ - recordClick?(e: RecordClickEventArgs): void; + /** Returns the record object (JSON). + */ + data?: any; - /** Triggered when record is double clicked. */ - recordDoubleClick?(e: RecordDoubleClickEventArgs): void; + /** Returns the record object (JSON). + */ + rowData?: any; - /** Triggered after column resized. */ - resized?(e: ResizedEventArgs): void; + /** Returns the selectedRow index. + */ + selectedRow?: number; - /** Triggered when column resize end. */ - resizeEnd?(e: ResizeEndEventArgs): void; + /** Returns the foreign key record object (JSON). + */ + foreignKeyData?: any; - /** Triggered when column resize start. */ - resizeStart?(e: ResizeStartEventArgs): void; + /** Returns selected row for delete. + */ + tr?: any; - /** Triggered when right clicked on grid element. */ - rightClick?(e: RightClickEventArgs): void; + /** Returns current filtering column field name. + */ + currentFilteringColumn?: string; - /** Triggered every time a request is made to access row information, element and data. */ - rowDataBound?(e: RowDataBoundEventArgs): void; + /** Returns current filtering object. + */ + currentFilterObject?: any; - /** Triggered after the row is selected. */ - rowSelected?(e: RowSelectedEventArgs): void; + /** Returns filter details. + */ + filterCollection?: any; + } - /** Triggered before the row is going to be selected. */ - rowSelecting?(e: RowSelectingEventArgs): void; + export interface BatchAddEventArgs { - /** Triggered after the row is deselected. */ - rowDeselected?(e: RowDeselectedEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered before the row is going to be deselected. */ - rowDeselecting?(e: RowDeselectingEventArgs): void; + /** Returns the grid model. + */ + model?: any; - /** Triggered when refresh the template column elements in the Grid. */ - templateRefresh?(e: TemplateRefreshEventArgs): void; + /** Returns deleted data. + */ + defaultData?: any; - /** Triggered when toolbar item is clicked in grid. */ - toolbarClick?(e: ToolbarClickEventArgs): void; - } + /** Returns the name of the event. + */ + type?: string; - export interface ActionBeginEventArgs { + /** Returns the column object. + */ + columnObject?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the column index. + */ + columnIndex?: number; - /** Returns the grid model. - */ - model?: any; + /** Returns the row element. + */ + row?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns the primaryKey. + */ + primaryKey?: any; - /** Returns the current selected page number. - */ - currentPage?: number; + /** Returns the cell object. + */ + cell?: any; + } - /** Returns the previous selected page number. - */ - previousPage?: number; + export interface BatchDeleteEventArgs { - /** Returns the end row index of that current page. - */ - endIndex?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns request type. - */ - requestType?: string; + /** Returns the grid model. + */ + model?: any; - /** Returns the start row index of that current page. - */ - startIndex?: number; + /** Returns deleted data. + */ + rowData?: any; - /** Returns the current grouped column field name. - */ - columnName?: string; + /** Returns the name of the event. + */ + type?: string; - /** Returns the column sort direction. - */ - columnSortDirection?: string; + /** Returns the primary key. + */ + primaryKey?: any; - /** Returns current edited row. - */ - row?: any; + /** Returns the row Index. + */ + rowIndex?: number; + } - /** Returns the current action event type. - */ - originalEventType?: string; + export interface BeforeBatchAddEventArgs { - /** Returns primary key. - */ - primaryKey?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns primary key value. - */ - primaryKeyValue?: string; + /** Returns the grid model. + */ + model?: any; - /** Returns the edited row index. - */ - rowIndex?: number; + /** Returns the name of the event. + */ + type?: string; - /** Returns the record object (JSON). - */ - data?: any; + /** Returns the default data object. + */ + defaultData?: any; - /** Returns the foreign key record object (JSON). - */ - foreignKeyData?: any; + /** Returns the primaryKey. + */ + primaryKey?: any; + } - /** Returns the selected row index. - */ - selectedRow?: number; + export interface BeforeBatchDeleteEventArgs { - /** Returns selected row for delete. - */ - tr?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns current filtering column field name. - */ - currentFilteringColumn?: any; + /** Returns deleted data. + */ + rowData?: any; - /** Returns current filtering object. - */ - currentFilterObject?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns filter details. - */ - filterCollection?: any; + /** Returns the primaryKey. + */ + primaryKey?: any; - /** Returns type of the column like number, string and so on. - */ - columnType?: string; + /** Returns the row index. + */ + rowIndex?: number; - /** Returns the excel filter model. - */ - filtermodel?: any; + /** Returns the row element. + */ + row?: any; + } - /** Returns the dataSource. - */ - dataSource?: any; + export interface BeforeBatchSaveEventArgs { - /** Returns the query manager. - */ - query?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the customfilter option value. - */ - isCustomFilter?: boolean; - } + /** Returns the name of the event. + */ + type?: string; - export interface ActionCompleteEventArgs { + /** Returns the changed record object. + */ + batchChanges?: any; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface BeforePrintEventArgs { - /** Returns the grid model. - */ - model?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns request type. - */ - requestType?: string; + /** Returns the name of the event. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the Grid element. + */ + element?: any; - /** Returns the current selected page number. - */ - currentPage?: number; + /** Returns the selected records. + */ + selectedRows?: any; + } - /** Returns the previous selected page number. - */ - previousPage?: number; + export interface BeforeRowDropEventArgs { - /** Returns the end row index of that current page. - */ - endIndex?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns current action event type. - */ - originalEventType?: string; + /** Returns the targeted row. + */ + target?: any; - /** Returns the start row index of the current page. - */ - startIndex?: number; + /** Returns the targeted row index. + */ + targetIndex?: any; - /** Returns grid element. - */ - target?: any; + /** Returns the dragged record details + */ + draggedRecords?: any; - /** Returns the current sorted column field name. - */ - columnName?: string; + /** Returns the drop details + */ + dropDetails?: any; + } - /** Returns the column sort direction. - */ - columnSortDirection?: string; + export interface BeginEditEventArgs { - /** Returns current edited row. - */ - row?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns primary key. - */ - primaryKey?: string; + /** Returns the current edited row. + */ + row?: any; - /** Returns primary key value. - */ - primaryKeyValue?: string; + /** Returns the grid model. + */ + model?: any; - /** Returns the edited row index. - */ - rowIndex?: number; + /** Returns the primary key. + */ + primaryKey?: any; - /** Returns the record object (JSON). - */ - data?: any; + /** Returns the primary key value. + */ + primaryKeyValue?: any; - /** Returns the selectedRow index. - */ - selectedRow?: number; + /** Returns the edited row index. + */ + rowIndex?: number; - /** Returns the foreign key record object (JSON). - */ - foreignKeyData?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns selected row for delete. - */ - tr?: any; + export interface CellEditEventArgs { - /** Returns current filtering column field name. - */ - currentFilteringColumn?: string; + /** Returns the grid model. + */ + model?: any; - /** Returns current filtering object. - */ - currentFilterObject?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns filter details. - */ - filterCollection?: any; + /** Returns the validation rules. + */ + validationRules?: any; - /** Returns the dataSource. - */ - dataSource?: any; + /** Returns the column name. + */ + columnName?: string; - /** Returns the excel filter model. - */ - filtermodel?: any; + /** Returns the cell value. + */ + value?: string; - /** Returns type of the column like number, string and so on. - */ - columnType?: string; + /** Returns the row data object. + */ + rowData?: any; - /** Returns the customfilter option value. - */ - isCustomFilter?: boolean; - } + /** Returns the previous value of the cell. + */ + previousValue?: string; - export interface ActionFailureEventArgs { + /** Returns the column object. + */ + columnObject?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the cell object. + */ + cell?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns isForeignKey option value. + */ + isForeignKey?: boolean; + } - /** Returns request type. - */ - requestType?: string; + export interface CellSaveEventArgs { - /** Returns the name of the event. - */ - type?: string; + /** Returns the grid model. + */ + model?: any; - /** Returns the error return by server. - */ - error?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns the current selected page number. - */ - currentPage?: number; + /** Returns the column name. + */ + columnName?: string; - /** Returns the previous selected page number. - */ - previousPage?: number; + /** Returns the cell value. + */ + value?: string; - /** Returns the end row index of that current page. - */ - endIndex?: number; + /** Returns the row data object. + */ + rowData?: any; - /** Returns current action event type. - */ - originalEventType?: string; + /** Returns the previous value of the cell. + */ + previousValue?: string; - /** Returns the start row index of the current page. - */ - startIndex?: number; + /** Returns the column object. + */ + columnObject?: any; - /** Returns grid element. - */ - target?: any; + /** Returns the cell object. + */ + cell?: any; - /** Returns the current sorted column field name. - */ - columnName?: string; + /** Returns isForeignKey option value. + */ + isForeignKey?: boolean; + } - /** Returns the column sort direction. - */ - columnSortDirection?: string; + export interface CellSelectedEventArgs { - /** Returns current edited row. - */ - row?: any; + /** Returns the selected cell index value. + */ + cellIndex?: number; - /** Returns primary key. - */ - primaryKey?: string; + /** Returns the previous selected cell index value. + */ + previousRowCellIndex?: number; - /** Returns primary key value. - */ - primaryKeyValue?: string; + /** Returns the selected cell element. + */ + currentCell?: any; - /** Returns the edited row index. - */ - rowIndex?: number; + /** Returns the previous selected cell element. + */ + previousRowCell?: any; - /** Returns the record object (JSON). - */ - data?: any; + /** Returns current record object (JSON). + */ + data?: any; - /** Returns the selectedRow index. - */ - selectedRow?: number; + /** Returns current record object (JSON). + */ + selectedData?: any; - /** Returns the foreign key record object (JSON). - */ - foreignKeyData?: any; + /** Returns the selected row cell index values. + */ + selectedRowCellIndex?: any[]; - /** Returns selected row for delete. - */ - tr?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns current filtering column field name. - */ - currentFilteringColumn?: string; + /** Returns the grid model. + */ + model?: any; - /** Returns current filtering object. - */ - currentFilterObject?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns filter details. - */ - filterCollection?: any; - } + export interface CellSelectingEventArgs { - export interface BatchAddEventArgs { + /** Returns the selected cell index value. + */ + cellIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the previous selected cell index value. + */ + previousRowCellIndex?: number; - /** Returns the grid model. - */ - model?: any; + /** Returns the selected cell element. + */ + currentCell?: any; - /** Returns deleted data. - */ - data?: any; + /** Returns the previous selected cell element. + */ + previousRowCell?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns current record object (JSON). + */ + data?: any; - /** Returns the column object. - */ - columnObject?: any; + /** Returns current record object (JSON). + */ + selectedData?: any; - /** Returns the column index. - */ - columnIndex?: number; + /** Returns whether the ctrl key is pressed while selecting cell + */ + isCtrlKeyPressed?: boolean; - /** Returns the row element. - */ - row?: any; + /** Returns whether the shift key is pressed while selecting cell + */ + isShiftKeyPressed?: boolean; - /** Returns the primaryKey. - */ - primaryKey?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the cell object. - */ - cell?: any; - } + /** Returns the name of the event. + */ + type?: string; + } - export interface BatchDeleteEventArgs { + export interface CellDeselectedEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the deselected cell index value. + */ + cellIndex?: number; - /** Returns the grid model. - */ - model?: any; + /** Returns the deselected cell element. + */ + currentCell?: any; - /** Returns deleted data. - */ - data?: any; + /** Returns current record object (JSON). + */ + data?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns current record object (JSON). + */ + selectedData?: any; - /** Returns the primary key. - */ - primaryKey?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the row Index. - */ - rowIndex?: number; - } + /** Returns the name of the event. + */ + type?: string; + } - export interface BeforeBatchAddEventArgs { + export interface CellDeselectingEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the deselecting cell index value. + */ + cellIndex?: number; - /** Returns the grid model. - */ - model?: any; + /** Returns the deselecting cell element. + */ + currentCell?: any; - /** Returns deleted data. - */ - data?: any; + /** Returns current record object (JSON). + */ + data?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns current record object (JSON). + */ + selectedData?: any; - /** Returns the default data object. - */ - defaultData?: any; + /** Returns whether the ctrl key is pressed while deselecting cell + */ + isCtrlKeyPressed?: boolean; - /** Returns the primaryKey. - */ - primaryKey?: any; - } + /** Returns whether the shift key is pressed while deselecting cell + */ + isShiftKeyPressed?: boolean; - export interface BeforeBatchDeleteEventArgs { + /** Returns the grid model. + */ + model?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns deleted data. - */ - data?: any; + export interface ColumnDragEventArgs { - /** Returns the name of the event. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the primaryKey. - */ - primaryKey?: any; + /** Returns draggable element type. + */ + draggableType?: any; - /** Returns the row index. - */ - rowIndex?: number; + /** Returns the draggable column object. + */ + column?: any; - /** Returns the row data. - */ - rowData?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the row element. - */ - row?: any; - } + /** Returns target elements based on mouse move position. + */ + target?: any; - export interface BeforeBatchSaveEventArgs { + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the grid model. - */ - model?: any; + export interface ColumnDragStartEventArgs { - /** Returns deleted data. - */ - data?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; + /** Returns draggable element type. + */ + draggableType?: any; - /** Returns the changed record object. - */ - batchChanges?: any; - } + /** Returns the draggable column object. + */ + column?: any; - export interface BeforePrintEventArgs { + /** Returns the grid model. + */ + model?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns drag start element. + */ + target?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the Grid element. - */ - element?: any; + export interface ColumnDropEventArgs { - /** Returns the selected records. - */ - selectedRows?: any; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface BeforeRowDropEventArgs { + /** Returns draggable element type. + */ + draggableType?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the draggable column object. + */ + column?: any; - /** Returns the targeted row. - */ - target?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the targeted row index. - */ - targetIndex?: any; + /** Returns dropped dragged element. + */ + target?: any; - /** Returns the dragged record details - */ - draggedRecords?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the drop details - */ - dropDetails?: any; - } + export interface ColumnSelectedEventArgs { - export interface BeginEditEventArgs { + /** Returns the selected cell index value. + */ + columnIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the previous selected column index value. + */ + previousColumnIndex?: number; - /** Returns the current edited row. - */ - row?: any; + /** Returns the selected header cell element. + */ + headerCell?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the previous selected header cell element. + */ + prevColumnHeaderCell?: any; - /** Returns the primary key. - */ - primaryKey?: any; + /** Returns corresponding column object (JSON). + */ + column?: any; - /** Returns the primary key value. - */ - primaryKeyValue?: any; + /** Returns the selected columns values. + */ + selectedColumnsIndex?: any[]; - /** Returns the edited row index. - */ - rowIndex?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the grid model. + */ + model?: any; - export interface CellEditEventArgs { + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the grid model. - */ - model?: any; + export interface ColumnSelectingEventArgs { - /** Returns deleted data. - */ - data?: any; + /** Returns the selected column index value. + */ + columnIndex?: number; - /** Returns the name of the event. - */ - type?: string; + /** Returns the previous selected column index value. + */ + previousColumnIndex?: number; - /** Returns the validation rules. - */ - validationRules?: any; + /** Returns the selected header cell element. + */ + headerCell?: any; - /** Returns the column name. - */ - columnName?: string; + /** Returns the previous selected header cell element. + */ + prevColumnHeaderCell?: any; - /** Returns the cell value. - */ - value?: string; + /** Returns corresponding column object (JSON). + */ + column?: any; - /** Returns the row data object. - */ - rowData?: any; + /** Returns whether the ctrl key is pressed while selecting cell + */ + isCtrlKeyPressed?: boolean; - /** Returns the previous value of the cell. - */ - previousValue?: string; + /** Returns whether the shift key is pressed while selecting cell + */ + isShiftKeyPressed?: boolean; - /** Returns the column object. - */ - columnObject?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the cell object. - */ - cell?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns isForeignKey option value. - */ - isForeignKey?: boolean; - } + export interface ColumnDeselectedEventArgs { - export interface CellSaveEventArgs { + /** Returns the Deselected column index value. + */ + columnIndex?: number; - /** Returns the grid model. - */ - model?: any; + /** Returns the Deselected column header element. + */ + headerCell?: any; - /** Returns deleted data. - */ - data?: any; + /** Returns corresponding column object (JSON). + */ + column?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns the grid model. + */ + model?: any; - /** Returns the column name. - */ - columnName?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the cell value. - */ - value?: string; + export interface ColumnDeselectingEventArgs { - /** Returns the row data object. - */ - rowData?: any; + /** Returns the deselecting column index value. + */ + columnIndex?: number; - /** Returns the previous value of the cell. - */ - previousValue?: string; + /** Returns the deselecting column header element. + */ + headerCell?: any; - /** Returns the column object. - */ - columnObject?: any; + /** Returns corresponding column object (JSON). + */ + column?: any; - /** Returns the cell object. - */ - cell?: any; + /** Returns whether the ctrl key is pressed while deselecting column + */ + isCtrlKeyPressed?: boolean; - /** Returns isForeignKey option value. - */ - isForeignKey?: boolean; - } + /** Returns whether the shift key is pressed while deselecting column + */ + isShiftKeyPressed?: boolean; - export interface CellSelectedEventArgs { + /** Returns the grid model. + */ + model?: any; - /** Returns the selected cell index value. - */ - cellIndex?: number; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the previous selected cell index value. - */ - previousRowCellIndex?: number; + export interface ContextClickEventArgs { - /** Returns the selected cell element. - */ - currentCell?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the previous selected cell element. - */ - previousRowCell?: any; + /** Returns the current item. + */ + currentTarget?: any; - /** Returns current record object (JSON). - */ - data?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the selected row cell index values. - */ - selectedRowCellIndex?: any[]; + /** Returns the status of contextmenu item which denotes its enabled state + */ + status?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the target item. + */ + target?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface ContextOpenEventArgs { - export interface CellSelectingEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the selected cell index value. - */ - cellIndex?: number; + /** Returns the current item. + */ + currentTarget?: any; - /** Returns the previous selected cell index value. - */ - previousRowCellIndex?: number; + /** Returns the grid model. + */ + model?: any; - /** Returns the selected cell element. - */ - currentCell?: any; + /** Returns the status of contextmenu item which denotes its enabled state + */ + status?: boolean; - /** Returns the previous selected cell element. - */ - previousRowCell?: any; + /** Returns the target item. + */ + target?: any; - /** Returns current record object (JSON). - */ - data?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns whether the ctrl key is pressed while selecting cell - */ - isCtrlKeyPressed?: boolean; + export interface CreateEventArgs { - /** Returns whether the shift key is pressed while selecting cell - */ - isShiftKeyPressed?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the grid model. - */ - model?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the name of the event. + */ + type?: string; + } - export interface CellDeselectedEventArgs { + export interface DataBoundEventArgs { - /** Returns the deselected cell index value. - */ - cellIndex?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the deselected cell element. - */ - currentCell?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns current record object (JSON). - */ - data?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the grid model. - */ - model?: any; + export interface DestroyEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the grid model. + */ + model?: any; - export interface CellDeselectingEventArgs { + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the deselecting cell index value. - */ - cellIndex?: number; + export interface DetailsCollapseEventArgs { - /** Returns the deselecting cell element. - */ - currentCell?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns current record object (JSON). - */ - data?: any; + /** Returns detail row element. + */ + detailsRow?: any; - /** Returns whether the ctrl key is pressed while deselecting cell - */ - isCtrlKeyPressed?: boolean; + /** Returns master row of detail row record object (JSON). + */ + masterData?: any; - /** Returns whether the shift key is pressed while deselecting cell - */ - isShiftKeyPressed?: boolean; + /** Returns the foreign key record object (JSON). + */ + foreignKeyData?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns master row element. + */ + masterRow?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the grid model. + */ + model?: any; - export interface ColumnDragEventArgs { + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface DetailsDataBoundEventArgs { - /** Returns draggable element type. - */ - draggableType?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the draggable column object. - */ - column?: any; + /** Returns details row element. + */ + detailsElement?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the details row data. + */ + data?: any; - /** Returns target elements based on mouse move position. - */ - target?: any; + /** Returns the details row data. + */ + rowData?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the grid model. + */ + model?: any; - export interface ColumnDragStartEventArgs { + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface DetailsExpandEventArgs { - /** Returns draggable element type. - */ - draggableType?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the draggable column object. - */ - column?: any; + /** Returns detail row element. + */ + detailsRow?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns master row of detail row record object (JSON). + */ + masterData?: any; - /** Returns drag start element. - */ - target?: any; + /** Returns the foreign key record object (JSON). + */ + foreignKeyData?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns master row element. + */ + masterRow?: any; - export interface ColumnDropEventArgs { + /** Returns the grid model. + */ + model?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns draggable element type. - */ - draggableType?: string; + export interface EndAddEventArgs { - /** Returns the draggable column object. - */ - column?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns added data. + */ + data?: any; - /** Returns dropped dragged element. - */ - target?: any; + /** Returns added data. + */ + rowData?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the name of the event. + */ + type?: string; + } - export interface RowDragEventArgs { + export interface EndDeleteEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the grid model. + */ + model?: any; - /** Returns draggable element type. - */ - draggableType?: any; + /** Returns deleted data. + */ + data?: any; - /** Returns the draggable row object. - */ - target?: any; + /** Returns deleted data. + */ + rowData?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns target elements based on mouse move position. - */ - currentTarget?: any; + export interface EndEditEventArgs { - /** Returns the name of the event. - */ - type?: string; + /** Returns the grid model. + */ + model?: any; - /** Returns JSON data of dragged rows. - */ - data?: any; - } + /** Returns modified data. + */ + data?: any; - export interface RowDragStartEventArgs { + /** Returns modified data. + */ + rowData?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns draggable element type. - */ - draggableType?: any; + export interface LoadEventArgs { - /** Returns the draggable row object. - */ - target?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns drag start element cell. - */ - currentTarget?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; + export interface MergeHeaderCellInfoEventArgs { - /** Returns the JSON data of dragged rows. - */ - data?: any; - } + /** Method to merge the header cells. + */ + headerCellMerge?(): void; - export interface RowDropEventArgs { + /** Returns the column headers. + */ + columnHeaders?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the grid model. + */ + model?: any; + } - /** Returns draggable element type. - */ - draggableType?: string; + export interface MergeCellInfoEventArgs { - /** Returns the draggable row object. - */ - rows?: any; + /** Returns grid cell. + */ + cell?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the current mouse position cell element. - */ - target?: any; + /** Returns current row record object (JSON). + */ + data?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns current row record object (JSON). + */ + rowData?: any; - /** Returns the JSON data of dragged rows. - */ - data?: any; - } + /** Returns the text value in the cell. + */ + text?: string; - export interface ColumnSelectedEventArgs { + /** Returns the column object. + */ + column?: any; - /** Returns the selected cell index value. - */ - columnIndex?: number; + /** Method to merge Grid rows. + */ + rowMerge?(): void; - /** Returns the previous selected column index value. - */ - previousColumnIndex?: number; + /** Method to merge Grid columns. + */ + colMerge?(): void; - /** Returns the selected header cell element. - */ - headerCell?: any; + /** Method to merge Grid rows and columns. + */ + merge?(): void; - /** Returns the previous selected header cell element. - */ - prevColumnHeaderCell?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns corresponding column object (JSON). - */ - column?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the selected columns values. - */ - selectedColumnsIndex?: any[]; + export interface QueryCellInfoEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns grid cell. + */ + cell?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns current row record object (JSON). + */ + data?: any; - export interface ColumnSelectingEventArgs { + /** Returns current row record object (JSON). + */ + rowData?: any; - /** Returns the selected column index value. - */ - columnIndex?: number; + /** Returns the text value in the cell. + */ + text?: string; - /** Returns the previous selected column index value. - */ - previousColumnIndex?: number; + /** Returns the column object. + */ + column?: any; - /** Returns the selected header cell element. - */ - headerCell?: any; + /** Returns the foreign key record object (JSON). + */ + foreignKeyData?: any; - /** Returns the previous selected header cell element. - */ - prevColumnHeaderCell?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns corresponding column object (JSON). - */ - column?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns whether the ctrl key is pressed while selecting cell - */ - isCtrlKeyPressed?: boolean; + export interface RecordClickEventArgs { - /** Returns whether the shift key is pressed while selecting cell - */ - isShiftKeyPressed?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the grid model. - */ - model?: any; + /** Returns current record object (JSON). + */ + data?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns current record object (JSON). + */ + rowData?: any; - export interface ColumnDeselectedEventArgs { + /** Returns the row index of the selected row. + */ + rowIndex?: number; - /** Returns the Deselected column index value. - */ - columnIndex?: number; + /** Returns the jQuery object of the current selected row. + */ + row?: any; - /** Returns the Deselected column header element. - */ - headerCell?: any; + /** Returns the current selected cell. + */ + cell?: any; - /** Returns corresponding column object (JSON). - */ - column?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the cell index value. + */ + cellIndex?: number; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the corresponding cell value. + */ + cellValue?: string; - export interface ColumnDeselectingEventArgs { + /** Returns the Header text of the column corresponding to the selected cell. + */ + columnName?: string; - /** Returns the deselecting column index value. - */ - columnIndex?: number; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the deselecting column header element. - */ - headerCell?: any; + export interface RecordDoubleClickEventArgs { - /** Returns corresponding column object (JSON). - */ - column?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns whether the ctrl key is pressed while deselecting column - */ - isCtrlKeyPressed?: boolean; + /** Returns current record object (JSON). + */ + data?: any; - /** Returns whether the shift key is pressed while deselecting column - */ - isShiftKeyPressed?: boolean; + /** Returns current record object (JSON). + */ + rowData?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the row index of the selected row. + */ + rowIndex?: number; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the jQuery object of the current selected row. + */ + row?: any; - export interface ContextClickEventArgs { + /** Returns the current selected cell. + */ + cell?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the grid model. + */ + model?: any; - /** Returns the current item. - */ - currentTarget?: any; + /** Returns the selected cell index value. + */ + cellIndex?: number; - /** Returns the grid model. - */ - model?: any; + /** Returns the corresponding cell value. + */ + cellValue?: string; - /** Returns the status of contextmenu item which denotes its enabled state - */ - status?: boolean; + /** Returns the Header text of the column corresponding to the selected cell. + */ + columnName?: string; - /** Returns the target item. - */ - target?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface ResizedEventArgs { - export interface ContextOpenEventArgs { + /** Returns the grid model. + */ + model?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the current item. - */ - currentTarget?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns the grid model. - */ - model?: any; + /** Returns the column index. + */ + columnIndex?: number; - /** Returns the status of contextmenu item which denotes its enabled state - */ - status?: boolean; + /** Returns the column object. + */ + column?: any; - /** Returns the target item. - */ - target?: any; + /** Returns the grid object. + */ + target?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the old width value. + */ + oldWidth?: number; - export interface CreateEventArgs { + /** Returns the new width value. + */ + newWidth?: number; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface ResizeEndEventArgs { - /** Returns the grid model. - */ - model?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the name of the event. + */ + type?: string; - export interface DataBoundEventArgs { + /** Returns the column index. + */ + columnIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the column object. + */ + column?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the grid object. + */ + target?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the old width value. + */ + oldWidth?: number; - export interface DestroyEventArgs { + /** Returns the new width value. + */ + newWidth?: number; - /** Returns the grid model. - */ - model?: any; + /** Returns the extra width value. + */ + extra?: number; + } - /** Returns deleted data. - */ - data?: any; + export interface ResizeStartEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the grid model. + */ + model?: any; - export interface DetailsCollapseEventArgs { + /** Returns the name of the event. + */ + type?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the column index. + */ + columnIndex?: number; - /** Returns detail row element. - */ - detailsRow?: any; + /** Returns the column object. + */ + column?: any; - /** Returns master row of detail row record object (JSON). - */ - masterData?: any; + /** Returns the grid object. + */ + target?: any; - /** Returns the foreign key record object (JSON). - */ - foreignKeyData?: any; + /** Returns the old width value. + */ + oldWidth?: number; + } - /** Returns master row element. - */ - masterRow?: any; + export interface RightClickEventArgs { - /** Returns the grid model. - */ - model?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns current record object (JSON). + */ + currentData?: any; - export interface DetailsDataBoundEventArgs { + /** Returns the row index of the selected row. + */ + rowIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the current selected row. + */ + row?: any; - /** Returns details row element. - */ - detailsElement?: any; + /** Returns the selected row data object. + */ + data?: any; - /** Returns the details row data. - */ - data?: any; + /** Returns the selected row data object. + */ + rowData?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the cell index of the selected cell. + */ + cellIndex?: number; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cell value. + */ + cellValue?: string; - export interface DetailsExpandEventArgs { + /** Returns the cell object. + */ + cell?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the grid model. + */ + model?: any; - /** Returns detail row element. - */ - detailsRow?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns master row of detail row record object (JSON). - */ - masterData?: any; + export interface RowDataBoundEventArgs { - /** Returns the foreign key record object (JSON). - */ - foreignKeyData?: any; + /** Returns grid row. + */ + row?: any; - /** Returns master row element. - */ - masterRow?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the grid model. - */ - model?: any; + /** Returns current row record object (JSON). + */ + data?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns current row record object (JSON). + */ + rowData?: any; - export interface EndAddEventArgs { + /** Returns the foreign key record object (JSON). + */ + foreignKeyData?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns added data. - */ - data?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface RowSelectedEventArgs { - export interface EndDeleteEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the grid model. - */ - model?: any; + /** Returns current record object (JSON). + */ + data?: any; - /** Returns deleted data. - */ - data?: any; + /** Returns current record object (JSON). + */ + selectedData?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the foreign key record object (JSON). + */ + foreignKeyData?: any; - export interface EndEditEventArgs { + /** Returns the row index of the selected row. + */ + rowIndex?: number; - /** Returns the grid model. - */ - model?: any; + /** Returns the current selected row. + */ + row?: any; - /** Returns modified data. - */ - data?: any; + /** Returns the previous selected row element. + */ + prevRow?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the previous selected row index. + */ + prevRowIndex?: number; - export interface LoadEventArgs { + /** Returns the grid model. + */ + model?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns deleted data. - */ - data?: any; + export interface RowSelectingEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the selected row index value. + */ + rowIndex?: number; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the selected row element. + */ + row?: any; - export interface MergeHeaderCellInfoEventArgs { + /** Returns the previous selected row element. + */ + prevRow?: any; - /** Method to merge the header cells. - */ - headerCellMerge?: any; + /** Returns the previous selected row index. + */ + prevRowIndex?: number; - /** Returns the column headers. - */ - columnHeaders?: any; + /** Returns current record object (JSON). + */ + selectedData?: any; - /** Returns the grid model. - */ - model?: any; - } + /** Returns current record object (JSON). + */ + data?: any; - export interface MergeCellInfoEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns grid cell. - */ - cell?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns current row record object (JSON). - */ - rowData?: any; + export interface RowDeselectedEventArgs { - /** Returns the text value in the cell. - */ - text?: string; + /** Returns current record object (JSON). + */ + data?: any; - /** Returns the column object. - */ - column?: any; + /** Returns current record object (JSON). + */ + selectedData?: any; - /** Method to merge Grid rows. - */ - rowMerge?: any; + /** Returns the row index of the deselected row. + */ + rowIndex?: number; - /** Method to merge Grid columns. - */ - colMerge?: any; + /** Returns the current deselected row element. + */ + row?: any; - /** Method to merge Grid rows and columns. - */ - merge?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface RowDeselectingEventArgs { - export interface QueryCellInfoEventArgs { + /** Returns the deselecting row index value. + */ + rowIndex?: number; - /** Returns grid cell. - */ - cell?: any; + /** Returns the deselecting row element. + */ + row?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns current record object (JSON). + */ + data?: any; - /** Returns current row record object (JSON). - */ - rowData?: any; + /** Returns current record object (JSON). + */ + selectedData?: any; - /** Returns the text value in the cell. - */ - text?: string; + /** Returns whether the ctrl key is pressed while deselecting row + */ + isCtrlKeyPressed?: boolean; - /** Returns the column object. - */ - column?: any; + /** Returns whether the shift key is pressed while deselecting row + */ + isShiftKeyPressed?: boolean; - /** Returns the foreign key record object (JSON). - */ - foreignKeyData?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface RowDragEventArgs { - export interface RecordClickEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns draggable element type. + */ + draggableType?: any; - /** Returns current record object (JSON). - */ - data?: any; + /** Returns the draggable row object. + */ + target?: any; - /** Returns the row index of the selected row. - */ - rowIndex?: number; + /** Returns the grid model. + */ + model?: any; - /** Returns the jQuery object of the current selected row. - */ - row?: any; + /** Returns target elements based on mouse move position. + */ + currentTarget?: any; - /** Returns the current selected cell. - */ - cell?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns the grid model. - */ - model?: any; + /** Returns JSON data of dragged rows. + */ + data?: any; - /** Returns the cell index value. - */ - cellIndex?: number; + /** Returns JSON data of dragged rows. + */ + draggedRecords?: any; + } - /** Returns the corresponding cell value. - */ - cellValue?: string; + export interface RowDragStartEventArgs { - /** Returns the Header text of the column corresponding to the selected cell. - */ - columnName?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns draggable element type. + */ + draggableType?: any; - export interface RecordDoubleClickEventArgs { + /** Returns the draggable row object. + */ + target?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the grid model. + */ + model?: any; - /** Returns current record object (JSON). - */ - data?: any; + /** Returns drag start element cell. + */ + currentTarget?: any; - /** Returns the row index of the selected row. - */ - rowIndex?: number; + /** Returns the name of the event. + */ + type?: string; - /** Returns the jQuery object of the current selected row. - */ - row?: any; + /** Returns the JSON data of dragged rows. + */ + data?: any; - /** Returns the current selected cell. - */ - cell?: any; + /** Returns the JSON data of dragged rows. + */ + draggedRecords?: any; + } - /** Returns the grid model. - */ - model?: any; + export interface RowDropEventArgs { - /** Returns the selected cell index value. - */ - cellIndex?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the corresponding cell value. - */ - cellValue?: string; + /** Returns draggable element type. + */ + draggableType?: string; - /** Returns the Header text of the column corresponding to the selected cell. - */ - columnName?: string; + /** Returns the draggable row object. + */ + rows?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the grid model. + */ + model?: any; - export interface ResizedEventArgs { + /** Returns the current mouse position cell element. + */ + target?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the JSON data of dragged rows. + */ + data?: any; - /** Returns deleted data. - */ - data?: any; + /** Returns the JSON data of dragged rows. + */ + droppedRecords?: any; + } - /** Returns the name of the event. - */ - type?: string; + export interface TemplateRefreshEventArgs { - /** Returns the column index. - */ - columnIndex?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the column object. - */ - column?: any; + /** Returns the cell object. + */ + cell?: any; - /** Returns the grid object. - */ - target?: any; + /** Returns the column object. + */ + column?: any; - /** Returns the old width value. - */ - oldWidth?: number; + /** Returns the current row data. + */ + data?: any; - /** Returns the new width value. - */ - newWidth?: number; - } + /** Returns the current row data. + */ + rowData?: any; - export interface ResizeEndEventArgs { + /** Returns the grid model. + */ + model?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the current row index. + */ + rowIndex?: number; - /** Returns deleted data. - */ - data?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; + export interface ToolbarClickEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the current item. + */ + currentTarget?: any; + + /** Returns the grid model. + */ + model?: any; + + /** Returns the status of toolbar item which denotes its enabled state + */ + status?: boolean; + + /** Returns the target item. + */ + target?: any; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the grid model. + */ + gridModel?: any; + + /** Returns the toolbar object of the selected toolbar element. + */ + toolbarData?: any; + + /** Returns the Id of the current toolbar element. + */ + itemId?: string; + + /** Returns the index of the current toolbar element. + */ + itemIndex?: number; + + /** Returns the name of the current toolbar element. + */ + itemName?: string; + } + + export interface ColumnsCommand { + + /** Gets or sets an object that indicates to define all the button options which are available in ejButton. + */ + buttonOptions?: any; + + /** Gets or sets a value that indicates to add the command column button. See unboundType + */ + type?: ej.Grid.UnboundType|string; + } + + export interface Column { + + /** Sets the clip mode for Grid cell as ellipsis or clipped content(both header and content) + * @Default {ej.Grid.ClipMode.Clip} + */ + clipMode?: ej.Grid.ClipMode|string; + + /** Gets or sets a value that indicates whether to enable editing behavior for particular column. + * @Default {true} + */ + allowEditing?: boolean; + + /** Gets or sets a value that indicates whether to enable dynamic filtering behavior for particular column. + * @Default {true} + */ + allowFiltering?: boolean; + + /** Gets or sets a value that indicates whether to enable dynamic grouping behavior for particular column. + * @Default {true} + */ + allowGrouping?: boolean; + + /** Gets or sets a value that indicates whether to enable dynamic sorting behavior for particular column. + * @Default {true} + */ + allowSorting?: boolean; + + /** Gets or sets a value that indicates whether to enable dynamic resizable for particular column. + * @Default {true} + */ + allowResizing?: boolean; + + /** Gets or sets an object that indicates to define a command column in the grid. + * @Default {[]} + */ + commands?: ColumnsCommand[]; + + /** Gets or sets a value that indicates to provide custom CSS for an individual column. + */ + cssClass?: string; + + /** Gets or sets a value that indicates the attribute values to the td element of a particular column + */ + customAttributes?: any; + + /** Gets or sets a value that indicates to bind the external datasource to the particular column when column editType as dropdownedit and also it is used to bind the datasource to the + * foreign key column while editing the grid. //Where data is array of JSON objects of text and value for the drop-down and array of JSON objects for foreign key column. + * @Default {null} + */ + dataSource?: any; + + /** Gets or sets a value that indicates to display the specified default value while adding a new record to the grid + */ + defaultValue?: string|number|boolean|Date; + + /** Gets or sets a value that indicates to render the grid content and header with an HTML elements + * @Default {false} + */ + disableHtmlEncode?: boolean; + + /** Gets or sets a value that indicates to display a column value as checkbox or string + * @Default {true} + */ + displayAsCheckBox?: boolean; + + /** Gets or sets a value that indicates to customize ejNumericTextbox of an editable column. See editingType + */ + editParams?: any; + + /** Gets or sets a template that displays a custom editor used to edit column values. See editTemplate + * @Default {null} + */ + editTemplate?: any; + + /** Gets or sets a value that indicates to render the element(based on edit type) for editing the grid record. See editingType + * @Default {ej.Grid.EditingType.String} + */ + editType?: ej.Grid.EditingType|string; + + /** Gets or sets a value that indicates to groups the column based on its column format. + * @Default {false} + */ + enableGroupByFormat?: boolean; + + /** Gets or sets a value that indicates to display the columns in the grid mapping with column name of the dataSource. + */ + field?: string; + + /** Gets or sets a template that customize the filter control from default . See filterBarTemplate + * @Default {null} + */ + filterBarTemplate?: any; + + /** Gets or sets a value that indicates to render the excel or menu filter dialog to the grid columns. See filterType + * @Default {null} + */ + filterType?: ej.Grid.FilterType|string; + + /** Gets or sets a value that indicates to define foreign key field name of the grid datasource. + * @Default {null} + */ + foreignKeyField?: string; + + /** Gets or sets a value that indicates to bind the field which is in foreign column datasource based on the foreignKeyField + * @Default {null} + */ + foreignKeyValue?: string; + + /** Gets or sets a value that indicates the format for the text applied on the column + */ + format?: string; + + /** Gets or sets a value that indicates to add the template within the header element of the particular column. + * @Default {null} + */ + headerTemplateID?: string; + + /** Gets or sets a value that indicates to display the title of that particular column. + */ + headerText?: string; + + /** This defines the text alignment of a particular column header cell value. See headerTextAlign + * @Default {null} + */ + headerTextAlign?: ej.TextAlign|string; + + /** It accepts the string value and shows the tooltip for the Grid column header. + * @Default {null} + */ + headerTooltip?: string; + + /** You can use this property to freeze selected columns in grid at the time of scrolling. + * @Default {false} + */ + isFrozen?: boolean; + + /** Gets or sets a value that indicates the column has an identity in the database. + * @Default {false} + */ + isIdentity?: boolean; + + /** Gets or sets a value that indicates the column is act as a primary key(read-only) of the grid. The editing is performed based on the primary key column + * @Default {false} + */ + isPrimaryKey?: boolean; + + /** Gets or sets a value that indicates the order of Column that are to be hidden or visible when Grid element is in responsive mode and could not occupy all columns. + * @Default {-1} + */ + priority?: number; + + /** Used to hide the particular column in column chooser by giving value as false. + * @Default {true} + */ + showInColumnChooser?: boolean; + + /** Gets or sets a value that indicates whether to enables column template for a particular column. + * @Default {false} + */ + template?: boolean|string; + + /** Gets or sets a value that indicates to align the text within the column. See textAlign + * @Default {ej.TextAlign.Left} + */ + textAlign?: ej.TextAlign|string; + + /** Sets the template for Tooltip in Grid Columns(both header and content) + */ + tooltip?: string; + + /** Gets or sets a value that indicates to specify the data type of the specified columns. + */ + type?: string; + + /** Gets or sets a value that indicates to define constraints for saving data to the database. + */ + validationRules?: any; + + /** Gets or sets a value that indicates whether this column is visible in the grid. + * @Default {true} + */ + visible?: boolean; + + /** Gets or sets a value that indicates to define the width for a particular column in the grid. + */ + width?: number; + } + + export interface ContextMenuSettingsSubContextMenu { + + /** Used to get or set the corresponding custom context menu item to which the submenu to be appended. + * @Default {null} + */ + contextMenuItem?: string; + + /** Used to get or set the sub menu items to the custom context menu item. + * @Default {[]} + */ + subMenu?: any[]; + } + + export interface ContextMenuSettings { + + /** Gets or sets a value that indicates whether to add the default context menu actions as a context menu items If enableContextMenu is true it will show all the items related to the + * target, if you want selected items from contextmenu you have to mention in the contextMenuItems + * @Default {[]} + */ + contextMenuItems?: any[]; + + /** Gets or sets a value that indicates whether to add custom contextMenu items within the toolbar to perform any action in the grid + * @Default {[]} + */ + customContextMenuItems?: any[]; + + /** Gets or sets a value that indicates whether to enable the context menu action in the grid. + * @Default {false} + */ + enableContextMenu?: boolean; + + /** Used to get or set the subMenu to the corresponding custom context menu item. + */ + subContextMenu?: ContextMenuSettingsSubContextMenu[]; + + /** Gets or sets a value that indicates whether to disable the default context menu items in the grid. + * @Default {false} + */ + disableDefaultItems?: boolean; + } + + export interface EditSettings { + + /** Gets or sets a value that indicates whether to enable insert action in the editing mode. + * @Default {false} + */ + allowAdding?: boolean; + + /** Gets or sets a value that indicates whether to enable the delete action in the editing mode. + * @Default {false} + */ + allowDeleting?: boolean; + + /** Gets or sets a value that indicates whether to enable the edit action in the editing mode. + * @Default {false} + */ + allowEditing?: boolean; + + /** Gets or sets a value that indicates whether to enable the editing action while double click on the record + * @Default {true} + */ + allowEditOnDblClick?: boolean; + + /** This specifies the id of the template. This template can be used to display the data that you require to be edited using the Dialog Box + * @Default {null} + */ + dialogEditorTemplateID?: string; + + /** Gets or sets a value that indicates whether to define the mode of editing See editMode + * @Default {ej.Grid.EditMode.Normal} + */ + editMode?: ej.Grid.EditMode|string; + + /** This specifies the id of the template. This template can be used to display the data that you require to be edited using the External edit form + * @Default {null} + */ + externalFormTemplateID?: string; + + /** This specifies to set the position of an External edit form either in the top-right or bottom-left of the grid. See formPosition + * @Default {ej.Grid.FormPosition.BottomLeft} + */ + formPosition?: ej.Grid.FormPosition|string; + + /** This specifies the id of the template. This template can be used to display the data that you require to be edited using the Inline edit form + * @Default {null} + */ + inlineFormTemplateID?: string; + + /** This specifies to set the position of an adding new row either in the top or bottom of the grid. See rowPosition + * @Default {ej.Grid.RowPosition.Top} + */ + rowPosition?: ej.Grid.RowPosition|string; + + /** Gets or sets a value that indicates whether the confirm dialog has to be shown while saving or discarding the batch changes + * @Default {true} + */ + showConfirmDialog?: boolean; + + /** Gets or sets a value that indicates whether the confirm dialog has to be shown while deleting record + * @Default {false} + */ + showDeleteConfirmDialog?: boolean; + + /** Gets or sets a value that indicates whether the title for edit form is different from the primarykey column. + * @Default {null} + */ + titleColumn?: string; + + /** Gets or sets a value that indicates whether to display the add new form by default in the grid. + * @Default {false} + */ + showAddNewRow?: boolean; + } + + export interface FilterSettingsFilteredColumn { + + /** Gets or sets a value that indicates whether to define the field name of the column to be filter. + */ + field?: string; + + /** Gets or sets a value that indicates whether to define the matchCase of given value to be filter. + */ + matchCase?: boolean; + + /** Gets or sets a value that indicates whether to define the filter condition to filtered column. See operator + */ + operator?: ej.FilterOperators|string; + + /** Gets or sets a value that indicates whether to define the predicate as and/or. + */ + predicate?: string; + + /** Gets or sets a value that indicates whether to define the value to be filtered in a column. + */ + value?: string|number; + } + + export interface FilterSettings { + + /** Gets or sets a value that indicates to perform the filter operation with case sensitive in excel styled filter menu mode + * @Default {false} + */ + enableCaseSensitivity?: boolean; + + /** Gets or sets a value that indicates to define the interDeterminateState of checkbox in excel filter dialog. + * @Default {true} + */ + enableInterDeterminateState?: boolean; + + /** This specifies the grid to starts the filter action while typing in the filterBar or after pressing the enter key. based on the filterBarMode. See filterBarMode. + * @Default {ej.Grid.FilterBarMode.Immediate} + */ + filterBarMode?: ej.Grid.FilterBarMode|string; + + /** Gets or sets a value that indicates whether to define the filtered columns details programmatically at initial load + * @Default {[]} + */ + filteredColumns?: FilterSettingsFilteredColumn[]; + + /** This specifies the grid to show the filterBar or filterMenu to the grid records. See filterType + * @Default {ej.Grid.FilterType.FilterBar} + */ + filterType?: ej.Grid.FilterType|string; + + /** This specifies the grid to delay the filter action while typing in the filterBar. + * @Default {1500} + */ + immediateModeDelay?: number; + + /** Gets or sets a value that indicates the maximum number of filter choices that can be showed in the excel styled filter menu. + * @Default {1000} + */ + maxFilterChoices?: number; + + /** This specifies the grid to show the filter text within the grid pager itself. + * @Default {true} + */ + showFilterBarStatus?: boolean; + + /** Gets or sets a value that indicates whether to enable the predicate options in the filtering menu + * @Default {false} + */ + showPredicate?: boolean; + } + + export interface GroupSettings { + + /** Gets or sets a value that customize the group caption format. + * @Default {null} + */ + captionFormat?: string; + + /** Gets or sets a value that indicates whether to enable animation button option in the group drop area of the grid. + * @Default {false} + */ + enableDropAreaAutoSizing?: boolean; + + /** Gets or sets a value that indicates whether to add grouped columns programmatically at initial load + * @Default {[]} + */ + groupedColumns?: any[]; + + /** Gets or sets a value that indicates whether to show the group drop area just above the column header. It can be used to avoid ungrouping the already grouped column using + * groupSettings. + * @Default {true} + */ + showDropArea?: boolean; + + /** Gets or sets a value that indicates whether to hide the grouped columns from the grid + * @Default {false} + */ + showGroupedColumn?: boolean; + + /** Gets or sets a value that indicates whether to show the group button image(toggle button)in the column header and also in the grouped column in the group drop area . It can be + * used to group/ungroup the columns by click on the toggle button. + * @Default {false} + */ + showToggleButton?: boolean; + + /** Gets or sets a value that indicates whether to enable the close button in the grouped column which is in the group drop area to ungroup the grouped column + * @Default {false} + */ + showUngroupButton?: boolean; + } + + export interface PageSettings { + + /** Gets or sets a value that indicates whether to define which page to display currently in the grid + * @Default {1} + */ + currentPage?: number; + + /** Gets or sets a value that indicates whether to pass the current page information as a query string along with the URL while navigating to other page. + * @Default {false} + */ + enableQueryString?: boolean; + + /** Gets or sets a value that indicates whether to enables pager template for the grid. + * @Default {false} + */ + enableTemplates?: boolean; + + /** Gets or sets a value that indicates whether to define the number of pages displayed in the pager for navigation + * @Default {8} + */ + pageCount?: number; + + /** Gets or sets a value that indicates whether to define the number of records displayed per page + * @Default {12} + */ + pageSize?: number; + + /** Gets or sets a value that indicates whether to enables default pager for the grid. + * @Default {false} + */ + showDefaults?: boolean; + + /** Gets or sets a value that indicates to add the template as a pager template for grid. + * @Default {null} + */ + template?: string; + + /** Get the value of total number of pages in the grid. The totalPages value is calculated based on page size and total records of grid + * @Default {null} + */ + totalPages?: number; + + /** Get the value of total number of records which is bound to the grid. The totalRecordsCount value is calculated based on dataSource bound to the grid. + * @Default {null} + */ + totalRecordsCount?: number; + + /** Gets or sets a value that indicates whether to define the number of pages to print. See printMode. + * @Default {ej.Grid.PrintMode.AllPages} + */ + printMode?: ej.Grid.PrintMode|string; + } + + export interface ResizeSettings { + + /** Gets or sets a value that indicates whether to define the mode of resizing. + * @Default {ej.Grid.ResizeMode.Normal} + */ + resizeMode?: ej.Grid.ResizeMode|string; + } + + export interface RowDropSettings { + + /** This specifies the grid to drop the grid rows only at particular target element. + * @Default {null} + */ + dropTargetID?: any; + + /** This helps in mapping server-side action when rows are dragged from Grid. + * @Default {null} + */ + dragMapper?: string; + + /** This helps in mapping server-side action when rows are dropped in Grid. + * @Default {null} + */ + dropMapper?: string; + } + + export interface SearchSettings { + + /** This specify the grid to search for the value in particular columns that is mentioned in the field. + * @Default {[]} + */ + fields?: any; + + /** This specifies the grid to search the particular data that is mentioned in the key. + */ + key?: string; + + /** It specifies the grid to search the records based on operator. + * @Default {contains} + */ + operator?: string; + + /** It enables or disables case-sensitivity while searching the search key in grid. + * @Default {true} + */ + ignoreCase?: boolean; + } + + export interface SelectionSettings { + + /** Gets or sets a value that indicates the cell selection actions based on the cell selection mode. + * @Default {ej.Grid.CellSelectionMode.Flow} + */ + cellSelectionMode?: ej.Grid.CellSelectionMode|string; + + /** Gets or sets a value that indicates whether to enable the toggle selection behavior for row, cell and column. + * @Default {false} + */ + enableToggle?: boolean; + + /** Gets or sets a value that indicates whether to add the default selection actions as a selection mode.See selectionMode + * @Default {[row]} + */ + selectionMode?: any[]; + } + + export interface ScrollSettings { + + /** This specify the grid to to view data that you require without buffering the entire load of a huge database + * @Default {false} + */ + allowVirtualScrolling?: boolean; + + /** It accepts the boolean value and shows or hides the scrollbar while focus in or focus out of the Grid. + * @Default {false} + */ + autoHide?: boolean; + + /** Specifies the height and width of button in the scrollbar. + * @Default {18} + */ + buttonSize?: number; + + /** This specify the grid to enable/disable touch control for scrolling. + * @Default {true} + */ + enableTouchScroll?: boolean; + + /** This specify the grid to freeze particular columns at the time of scrolling. + * @Default {0} + */ + frozenColumns?: number; + + /** This specify the grid to freeze particular rows at the time of scrolling. + * @Default {0} + */ + frozenRows?: number; + + /** This specify the grid to show the vertical scroll bar, to scroll and view the grid contents. + * @Default {0} + */ + height?: string|number; + + /** It accepts the integer value and sets the width of scrollbar. + * @Default {18} + */ + scrollerSize?: number; + + /** This is used to define the mode of virtual scrolling in grid. See virtualScrollMode + * @Default {ej.Grid.VirtualScrollMode.Normal} + */ + virtualScrollMode?: ej.Grid.VirtualScrollMode|string; + + /** This is used to enable the enhanced virtual scrolling in Grid. + * @Default {false} + */ + enableVirtualization?: boolean; + + /** This specify the grid to show the horizontal scroll bar, to scroll and view the grid contents + * @Default {250} + */ + width?: string|number; + + /** This specify the scroll down pixel of mouse wheel, to scroll mouse wheel and view the grid contents. + * @Default {57} + */ + scrollOneStepBy?: number; + } + + export interface SortSettingsSortedColumn { + + /** Gets or sets a value that indicates whether to define the direction to sort the column. + */ + direction?: string; + + /** Gets or sets a value that indicates whether to define the field name of the column to be sort + */ + field?: string; + } + + export interface SortSettings { + + /** Gets or sets a value that indicates whether to define the direction and field to sort the column. + */ + sortedColumns?: SortSettingsSortedColumn[]; + } + + export interface StackedHeaderRowsStackedHeaderColumn { + + /** Gets or sets a value that indicates the header text for the particular stacked header column. + * @Default {null} + */ + column?: any; + + /** Gets or sets a value that indicates class to the corresponding stackedHeaderColumn. + * @Default {null} + */ + cssClass?: string; + + /** Gets or sets a value that indicates the header text for the particular stacked header column. + * @Default {null} + */ + headerText?: string; + + /** Gets or sets a value that indicates the text alignment of the corresponding headerText. + * @Default {ej.TextAlign.Left} + */ + textAlign?: string; + + /** Sets the template for tooltip for the Grid stackedHeaderColumns. + * @Default {null} + */ + tooltip?: string; + } + + export interface StackedHeaderRow { + + /** Gets or sets a value that indicates whether to add stacked header columns into the stacked header rows + * @Default {[]} + */ + stackedHeaderColumns?: StackedHeaderRowsStackedHeaderColumn[]; + } + + export interface SummaryRowsSummaryColumn { + + /** Gets or sets a value that indicates the text displayed in the summary column as a value + * @Default {null} + */ + customSummaryValue?: string; + + /** This specifies summary column used to perform the summary calculation + * @Default {null} + */ + dataMember?: string; + + /** Gets or sets a value that indicates to define the target column at which to display the summary. + * @Default {null} + */ + displayColumn?: string; + + /** Gets or sets a value that indicates the format for the text applied on the column + * @Default {null} + */ + format?: string; + + /** Gets or sets a value that indicates the text displayed before the summary column value + * @Default {null} + */ + prefix?: string; + + /** Gets or sets a value that indicates the text displayed after the summary column value + * @Default {null} + */ + suffix?: string; + + /** Gets or sets a value that indicates the type of calculations to be performed for the corresponding summary column. See summaryType. + * @Default {[]} + */ + summaryType?: ej.Grid.SummaryType|string; + + /** Gets or sets a value that indicates to add the template for the summary value of dataMember given. + * @Default {null} + */ + template?: string; + } - /** Returns the column index. - */ - columnIndex?: number; + export interface SummaryRow { - /** Returns the column object. - */ - column?: any; + /** Gets or sets a value that indicates whether to show the summary value within the group caption area for the corresponding summary column while grouping the column + * @Default {false} + */ + showCaptionSummary?: boolean; - /** Returns the grid object. - */ - target?: any; + /** Gets or sets a value that indicates whether to show the group summary value for the corresponding summary column while grouping a column + * @Default {false} + */ + showGroupSummary?: boolean; - /** Returns the old width value. - */ - oldWidth?: number; + /** Gets or sets a value that indicates whether to show the total summary value the for the corresponding summary column. The summary row is added after the grid content. + * @Default {true} + */ + showTotalSummary?: boolean; - /** Returns the new width value. - */ - newWidth?: number; + /** Gets or sets a value that indicates whether to add summary columns into the summary rows. + * @Default {[]} + */ + summaryColumns?: SummaryRowsSummaryColumn[]; - /** Returns the extra width value. - */ - extra?: number; - } + /** This specifies the grid to show the title for the summary rows. + */ + title?: string; - export interface ResizeStartEventArgs { + /** This specifies the grid to show the title of summary row in the specified column. + * @Default {null} + */ + titleColumn?: string; + } - /** Returns the grid model. - */ - model?: any; + export interface TextWrapSettings { - /** Returns deleted data. - */ - data?: any; + /** This specifies the grid to apply the auto wrap for grid content or header or both. + * @Default {ej.Grid.WrapMode.Both} + */ + wrapMode?: ej.Grid.WrapMode|string; + } - /** Returns the name of the event. - */ - type?: string; + export interface ToolbarSettingsCustomToolbarItem { - /** Returns the column index. - */ - columnIndex?: number; + /** Gets or sets a value that indicates whether to add custom toolbar item as a template element. + */ + templateID?: string; - /** Returns the column object. - */ - column?: any; + /** Gets or sets a value that indicates whether to add custom toolbar item with a custom tooltip. + */ + tooltip?: string; + } - /** Returns the grid object. - */ - target?: any; + export interface ToolbarSettings { - /** Returns the old width value. - */ - oldWidth?: number; - } + /** Gets or sets a value that indicates whether to add custom toolbar items within the toolbar to perform any action in the grid + * @Default {[]} + */ + customToolbarItems?: ToolbarSettingsCustomToolbarItem[]; - export interface RightClickEventArgs { + /** Gets or sets a value that indicates whether to enable toolbar in the grid. + * @Default {false} + */ + showToolbar?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Gets or sets a value that indicates whether to add the default editing actions as a toolbar items. See toolbarItems. + * @Default {[]} + */ + toolbarItems?: Array; + } - /** Returns current record object (JSON). - */ - currentData?: any; + enum GridLines { - /** Returns the row index of the selected row. - */ - rowIndex?: number; + ///Displays both the horizontal and vertical grid lines. + Both, - /** Returns the current selected row. - */ - row?: any; + ///Displays the horizontal grid lines only. + Horizontal, - /** Returns the selected row data object. - */ - data?: any; + ///Displays the vertical grid lines only. + Vertical, - /** Returns the cell index of the selected cell. - */ - cellIndex?: number; + ///No grid lines are displayed. + None + } - /** Returns the cell value. - */ - cellValue?: string; - /** Returns the cell object. - */ - cell?: any; + enum ClipMode { - /** Returns the grid model. - */ - model?: any; + ///Shows ellipsis for the overflown cell. + Ellipsis, - /** Returns the name of the event. - */ - type?: string; - } + ///Truncate the text in the cell + Clip, - export interface RowDataBoundEventArgs { + ///Shows ellipsis and tooltip for the overflown cell. + EllipsisWithTooltip + } - /** Returns grid row. - */ - row?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + enum ColumnLayout { - /** Returns current row record object (JSON). - */ - data?: any; + ///Column layout is auto(based on width). + Auto, - /** Returns the foreign key record object (JSON). - */ - foreignKeyData?: any; + ///Column layout is fixed(based on width). + Fixed + } - /** Returns the grid model. - */ - model?: any; - /** Returns the name of the event. - */ - type?: string; - } + enum UnboundType { - export interface RowSelectedEventArgs { + ///Unbound type is edit. + Edit, - /** Returns the cancel option value. - */ - cancel?: boolean; + ///Unbound type is save. + Save, - /** Returns current record object (JSON). - */ - data?: any; + ///Unbound type is delete. + Delete, - /** Returns the foreign key record object (JSON). - */ - foreignKeyData?: any; + ///Unbound type is cancel. + Cancel + } - /** Returns the row index of the selected row. - */ - rowIndex?: number; - /** Returns the current selected row. - */ - row?: any; + enum EditingType { - /** Returns the previous selected row element. - */ - prevRow?: any; + ///Specifies editing type as string edit. + String, - /** Returns the previous selected row index. - */ - prevRowIndex?: number; + ///Specifies editing type as boolean edit. + Boolean, - /** Returns the grid model. - */ - model?: any; + ///Specifies editing type as numeric edit. + Numeric, - /** Returns the name of the event. - */ - type?: string; - } + ///Specifies editing type as dropdown edit. + Dropdown, - export interface RowSelectingEventArgs { + ///Specifies editing type as datepicker. + DatePicker, - /** Returns the selected row index value. - */ - rowIndex?: number; + ///Specifies editing type as datetime picker. + DateTimePicker + } - /** Returns the selected row element. - */ - row?: any; - /** Returns the previous selected row element. - */ - prevRow?: any; + enum FilterType { - /** Returns the previous selected row index. - */ - prevRowIndex?: number; + ///Specifies the filter type as menu. + Menu, - /** Returns current record object (JSON). - */ - data?: any; + ///Specifies the filter type as excel. + Excel + } - /** Returns the cancel option value. - */ - cancel?: boolean; - /** Returns the grid model. - */ - model?: any; + enum EditMode { - /** Returns the name of the event. - */ - type?: string; - } + ///Edit mode is normal. + Normal, - export interface RowDeselectedEventArgs { + ///Edit mode is dialog. + Dialog, - /** Returns current record object (JSON). - */ - data?: any; + ///Edit mode is dialog template. + DialogTemplate, - /** Returns the row index of the deselected row. - */ - rowIndex?: number; + ///Edit mode is batch. + Batch, - /** Returns the current deselected row element. - */ - row?: any; + ///Edit mode is inline form. + InlineForm, - /** Returns the grid model. - */ - model?: any; + ///Edit mode is inline template form. + InlineTemplateForm, - /** Returns the name of the event. - */ - type?: string; - } + ///Edit mode is external form. + ExternalForm, - export interface RowDeselectingEventArgs { + ///Edit mode is external form template. + ExternalFormTemplate + } - /** Returns the deselecting row index value. - */ - rowIndex?: number; - /** Returns the deselecting row element. - */ - row?: any; + enum FormPosition { - /** Returns current record object (JSON). - */ - data?: any; + ///Form position is bottomleft. + BottomLeft, - /** Returns whether the ctrl key is pressed while deselecting row - */ - isCtrlKeyPressed?: boolean; + ///Form position is topright. + TopRight + } - /** Returns whether the shift key is pressed while deselecting row - */ - isShiftKeyPressed?: boolean; - /** Returns the grid model. - */ - model?: any; + enum RowPosition { - /** Returns the name of the event. - */ - type?: string; - } + ///Specifies position of add new row as top. + Top, - export interface TemplateRefreshEventArgs { + ///Specifies position of add new row as bottom. + Bottom + } - /** Returns the cancel option value. - */ - cancel?: boolean; - /** Returns the cell object. - */ - cell?: any; + enum FilterBarMode { - /** Returns the column object. - */ - column?: any; + ///Initiate filter operation on typing the filter query. + Immediate, - /** Returns the current row data. - */ - rowData?: any; + ///Initiate filter operation after Enter key is pressed. + OnEnter + } - /** Returns the grid model. - */ - model?: any; - /** Returns the current row index. - */ - rowIndex?: number; + enum PrintMode { - /** Returns the name of the event. - */ - type?: string; - } + ///Prints all pages. + AllPages, - export interface ToolbarClickEventArgs { + ///Prints current page. + CurrentPage + } - /** Returns the cancel option value. - */ - cancel?: boolean; - /** Returns the current item. - */ - currentTarget?: any; + enum ResizeMode { - /** Returns the grid model. - */ - model?: any; + ///New column size will be adjusted by all other Columns + Normal, - /** Returns the status of toolbar item which denotes its enabled state - */ - status?: boolean; - - /** Returns the target item. - */ - target?: any; - - /** Returns the name of the event. - */ - type?: string; - - /** Returns the grid model. - */ - gridModel?: any; - - /** Returns the toolbar object of the selected toolbar element. - */ - toolbarData?: any; - - /** Returns the Id of the current toolbar element. - */ - itemId?: string; - - /** Returns the index of the current toolbar element. - */ - itemIndex?: number; - - /** Returns the name of the current toolbar element. - */ - itemName?: string; - } - - export interface ColumnsCommand { - - /** Gets or sets an object that indicates to define all the button options which are available in ejButton. - */ - buttonOptions?: any; - - /** Gets or sets a value that indicates to add the command column button. See unboundType - */ - type?: ej.Grid.UnboundType | string; - } - - export interface Column { - - /** Sets the clip mode for Grid cell as ellipsis or clipped content(both header and content) - * @Default {ej.Grid.ClipMode.Clip} - */ - clipMode?: ej.Grid.ClipMode | string; - - /** Gets or sets a value that indicates whether to enable editing behavior for particular column. - * @Default {true} - */ - allowEditing?: boolean; - - /** Gets or sets a value that indicates whether to enable dynamic filtering behavior for particular column. - * @Default {true} - */ - allowFiltering?: boolean; - - /** Gets or sets a value that indicates whether to enable dynamic grouping behavior for particular column. - * @Default {true} - */ - allowGrouping?: boolean; - - /** Gets or sets a value that indicates whether to enable dynamic sorting behavior for particular column. - * @Default {true} - */ - allowSorting?: boolean; - - /** Gets or sets a value that indicates whether to enable dynamic resizable for particular column. - * @Default {true} - */ - allowResizing?: boolean; - - /** Gets or sets an object that indicates to define a command column in the grid. - * @Default {[]} - */ - commands?: ColumnsCommand[]; - - /** Gets or sets a value that indicates to provide custom CSS for an individual column. - */ - cssClass?: string; - - /** Gets or sets a value that indicates the attribute values to the td element of a particular column - */ - customAttributes?: any; - - /** Gets or sets a value that indicates to bind the external datasource to the particular column when column editType as dropdownedit and also it is used to bind the datasource - * to the foreign key column while editing the grid. //Where data is array of JSON objects of text and value for the drop-down and array of JSON objects for foreign key column. - * @Default {null} - */ - dataSource?: any[]; - - /** Gets or sets a value that indicates to display the specified default value while adding a new record to the grid - */ - defaultValue?: string | number | boolean | Date; - - /** Gets or sets a value that indicates to render the grid content and header with an HTML elements - * @Default {false} - */ - disableHtmlEncode?: boolean; - - /** Gets or sets a value that indicates to display a column value as checkbox or string - * @Default {true} - */ - displayAsCheckBox?: boolean; - - /** Gets or sets a value that indicates to customize ejNumericTextbox of an editable column. See editingType - */ - editParams?: any; - - /** Gets or sets a template that displays a custom editor used to edit column values. See editTemplate - * @Default {null} - */ - editTemplate?: any; - - /** Gets or sets a value that indicates to render the element(based on edit type) for editing the grid record. See editingType - * @Default {ej.Grid.EditingType.String} - */ - editType?: ej.Grid.EditingType | string; - - /** Gets or sets a value that indicates to groups the column based on its column format. - * @Default {false} - */ - enableGroupByFormat?: boolean; - - /** Gets or sets a value that indicates to display the columns in the grid mapping with column name of the dataSource. - */ - field?: string; - - /** Gets or sets a template that customize the filter control from default . See filterBarTemplate - * @Default {null} - */ - filterBarTemplate?: any; - - /** Gets or sets a value that indicates to render the excel or menu filter dialog to the grid columns. See filterType - * @Default {null} - */ - filterType?: ej.Grid.FilterType | string; - - /** Gets or sets a value that indicates to define foreign key field name of the grid datasource. - * @Default {null} - */ - foreignKeyField?: string; - - /** Gets or sets a value that indicates to bind the field which is in foreign column datasource based on the foreignKeyField - * @Default {null} - */ - foreignKeyValue?: string; - - /** Gets or sets a value that indicates the format for the text applied on the column - */ - format?: string; - - /** Gets or sets a value that indicates to add the template within the header element of the particular column. - * @Default {null} - */ - headerTemplateID?: string; - - /** Gets or sets a value that indicates to display the title of that particular column. - */ - headerText?: string; - - /** This defines the text alignment of a particular column header cell value. See headerTextAlign - * @Default {null} - */ - headerTextAlign?: ej.TextAlign | string; - - /** It accepts the string value and shows the tooltip for the Grid column header. - * @Default {null} - */ - headerTooltip?: string; - - /** You can use this property to freeze selected columns in grid at the time of scrolling. - * @Default {false} - */ - isFrozen?: boolean; - - /** Gets or sets a value that indicates the column has an identity in the database. - * @Default {false} - */ - isIdentity?: boolean; - - /** Gets or sets a value that indicates the column is act as a primary key(read-only) of the grid. The editing is performed based on the primary key column - * @Default {false} - */ - isPrimaryKey?: boolean; - - /** Gets or sets a value that indicates the order of Column that are to be hidden or visible when Grid element is in responsive mode and could not occupy all columns. - * @Default {-1} - */ - priority?: number; - - /** Used to hide the particular column in column chooser by giving value as false. - * @Default {true} - */ - showInColumnChooser?: boolean; - - /** Gets or sets a value that indicates whether to enables column template for a particular column. - * @Default {false} - */ - template?: boolean | string; - - /** Gets or sets a value that indicates to align the text within the column. See textAlign - * @Default {ej.TextAlign.Left} - */ - textAlign?: ej.TextAlign | string; - - /** Sets the template for Tooltip in Grid Columns(both header and content) - */ - tooltip?: string; - - /** Gets or sets a value that indicates to specify the data type of the specified columns. - */ - type?: string; - - /** Gets or sets a value that indicates to define constraints for saving data to the database. - */ - validationRules?: any; - - /** Gets or sets a value that indicates whether this column is visible in the grid. - * @Default {true} - */ - visible?: boolean; - - /** Gets or sets a value that indicates to define the width for a particular column in the grid. - */ - width?: number; - } - - export interface ContextMenuSettingsSubContextMenu { - - /** Used to get or set the corresponding custom context menu item to which the submenu to be appended. - * @Default {null} - */ - contextMenuItem?: string; - - /** Used to get or set the sub menu items to the custom context menu item. - * @Default {[]} - */ - subMenu?: any[]; - } - - export interface ContextMenuSettings { - - /** Gets or sets a value that indicates whether to add the default context menu actions as a context menu items If enableContextMenu is true it will show all the items related to the target, - * if you want selected items from contextmenu you have to mention in the contextMenuItems - * @Default {[]} - */ - contextMenuItems?: any[]; - - /** Gets or sets a value that indicates whether to add custom contextMenu items within the toolbar to perform any action in the grid - * @Default {[]} - */ - customContextMenuItems?: any[]; - - /** Gets or sets a value that indicates whether to enable the context menu action in the grid. - * @Default {false} - */ - enableContextMenu?: boolean; - - /** Used to get or set the subMenu to the corresponding custom context menu item. - */ - subContextMenu?: ContextMenuSettingsSubContextMenu[]; - - /** Gets or sets a value that indicates whether to disable the default context menu items in the grid. - * @Default {false} - */ - disableDefaultItems?: boolean; - } - - export interface EditSettings { - - /** Gets or sets a value that indicates whether to enable insert action in the editing mode. - * @Default {false} - */ - allowAdding?: boolean; - - /** Gets or sets a value that indicates whether to enable the delete action in the editing mode. - * @Default {false} - */ - allowDeleting?: boolean; - - /** Gets or sets a value that indicates whether to enable the edit action in the editing mode. - * @Default {false} - */ - allowEditing?: boolean; - - /** Gets or sets a value that indicates whether to enable the editing action while double click on the record - * @Default {true} - */ - allowEditOnDblClick?: boolean; - - /** This specifies the id of the template. This template can be used to display the data that you require to be edited using the Dialog Box - * @Default {null} - */ - dialogEditorTemplateID?: string; - - /** Gets or sets a value that indicates whether to define the mode of editing See editMode - * @Default {ej.Grid.EditMode.Normal} - */ - editMode?: ej.Grid.EditMode | string; - - /** This specifies the id of the template. This template can be used to display the data that you require to be edited using the External edit form - * @Default {null} - */ - externalFormTemplateID?: string; - - /** This specifies to set the position of an External edit form either in the top-right or bottom-left of the grid - * @Default {ej.Grid.FormPosition.BottomLeft} - */ - formPosition?: ej.Grid.FormPosition | string; - - /** This specifies the id of the template. This template can be used to display the data that you require to be edited using the Inline edit form - * @Default {null} - */ - inlineFormTemplateID?: string; - - /** This specifies to set the position of an adding new row either in the top or bottom of the grid - * @Default {ej.Grid.RowPosition.Top} - */ - rowPosition?: ej.Grid.RowPosition | string; - - /** Gets or sets a value that indicates whether the confirm dialog has to be shown while saving or discarding the batch changes - * @Default {true} - */ - showConfirmDialog?: boolean; - - /** Gets or sets a value that indicates whether the confirm dialog has to be shown while deleting record - * @Default {false} - */ - showDeleteConfirmDialog?: boolean; - - /** Gets or sets a value that indicates whether the title for edit form is different from the primarykey column. - * @Default {null} - */ - titleColumn?: string; - - /** Gets or sets a value that indicates whether to display the add new form by default in the grid. - * @Default {false} - */ - showAddNewRow?: boolean; - } - - export interface FilterSettingsFilteredColumn { - - /** Gets or sets a value that indicates whether to define the field name of the column to be filter. - */ - field?: string; - - /** Gets or sets a value that indicates whether to define the matchCase of given value to be filter. - */ - matchCase?: boolean; - - /** Gets or sets a value that indicates whether to define the filter condition to filtered column. See operator - */ - operator?: ej.FilterOperators | string; - - /** Gets or sets a value that indicates whether to define the predicate as and/or. - */ - predicate?: string; - - /** Gets or sets a value that indicates whether to define the value to be filtered in a column. - */ - value?: string | number; - } - - export interface FilterSettings { - - /** Gets or sets a value that indicates to perform the filter operation with case sensitive in excel styled filter menu mode - * @Default {false} - */ - enableCaseSensitivity?: boolean; - - /** Gets or sets a value that indicates to define the interDeterminateState of checkbox in excel filter dialog. - * @Default {true} - */ - enableInterDeterminateState?: boolean; - - /** This specifies the grid to starts the filter action while typing in the filterBar or after pressing the enter key. based on the filterBarMode. See filterBarMode. - * @Default {ej.Grid.FilterBarMode.Immediate} - */ - filterBarMode?: ej.Grid.FilterBarMode | string; - - /** Gets or sets a value that indicates whether to define the filtered columns details programmatically at initial load - * @Default {[]} - */ - filteredColumns?: FilterSettingsFilteredColumn[]; - - /** This specifies the grid to show the filterBar or filterMenu to the grid records. See filterType - * @Default {ej.Grid.FilterType.FilterBar} - */ - filterType?: ej.Grid.FilterType | string; - - /** This specifies the grid to delay the filter action while typing in the filterBar. - * @Default {1500} - */ - immediateModeDelay?: number; - - /** Gets or sets a value that indicates the maximum number of filter choices that can be showed in the excel styled filter menu. - * @Default {1000} - */ - maxFilterChoices?: number; - - /** This specifies the grid to show the filter text within the grid pager itself. - * @Default {true} - */ - showFilterBarMessage?: boolean; - - /** Gets or sets a value that indicates whether to enable the predicate options in the filtering menu - * @Default {false} - */ - showPredicate?: boolean; - } - - export interface GroupSettings { - - /** Gets or sets a value that customize the group caption format. - * @Default {null} - */ - captionFormat?: string; - - /** Gets or sets a value that indicates whether to enable animation button option in the group drop area of the grid. - * @Default {false} - */ - enableDropAreaAutoSizing?: boolean; - - /** Gets or sets a value that indicates whether to add grouped columns programmatically at initial load - * @Default {[]} - */ - groupedColumns?: any[]; - - /** Gets or sets a value that indicates whether to show the group drop area just above the column header. It can be used to avoid ungrouping the already grouped column using groupSettings. - * @Default {true} - */ - showDropArea?: boolean; - - /** Gets or sets a value that indicates whether to hide the grouped columns from the grid - * @Default {false} - */ - showGroupedColumn?: boolean; - - /** Gets or sets a value that indicates whether to show the group button image(toggle button)in the column header and also in the grouped column in the group drop area. - * It can be used to group/ungroup the columns by click on the toggle button. - * @Default {false} - */ - showToggleButton?: boolean; - - /** Gets or sets a value that indicates whether to enable the close button in the grouped column which is in the group drop area to ungroup the grouped column - * @Default {false} - */ - showUngroupButton?: boolean; - } - - export interface PageSettings { - - /** Gets or sets a value that indicates whether to define which page to display currently in the grid - * @Default {1} - */ - currentPage?: number; - - /** Gets or sets a value that indicates whether to pass the current page information as a query string along with the URL while navigating to other page. - * @Default {false} - */ - enableQueryString?: boolean; - - /** Gets or sets a value that indicates whether to enables pager template for the grid. - * @Default {false} - */ - enableTemplates?: boolean; - - /** Gets or sets a value that indicates whether to define the number of pages displayed in the pager for navigation - * @Default {8} - */ - pageCount?: number; - - /** Gets or sets a value that indicates whether to define the number of records displayed per page - * @Default {12} - */ - pageSize?: number; - - /** Gets or sets a value that indicates whether to enables default pager for the grid. - * @Default {false} - */ - showDefaults?: boolean; - - /** Gets or sets a value that indicates to add the template as a pager template for grid. - * @Default {null} - */ - template?: string; - - /** Get the value of total number of pages in the grid. The totalPages value is calculated based on page size and total records of grid - * @Default {null} - */ - totalPages?: number; - - /** Get the value of total number of records which is bound to the grid. The totalRecordsCount value is calculated based on dataSource bound to the grid. - * @Default {null} - */ - totalRecordsCount?: number; - - /** Gets or sets a value that indicates whether to define the number of pages to print - * @Default {ej.Grid.PrintMode.AllPages} - */ - printMode?: ej.Grid.PrintMode | string; - } - - export interface ResizeSettings { - - /** Gets or sets a value that indicates whether to define the mode of resizing. - * @Default {ej.Grid.ResizeMode.Normal} - */ - resizeMode?: ej.Grid.ResizeMode | string; - } - - export interface RowDropSettings { - - /** This specifies the grid to drop the grid rows only at particular target element. - * @Default {null} - */ - dropTargetID?: any; - - /** This helps in mapping server-side action when rows are dragged from Grid. - * @Default {null} - */ - dragMapper?: string; - - /** This helps in mapping server-side action when rows are dropped in Grid. - * @Default {null} - */ - dropMapper?: string; - /** Gets or sets a value that indicates whether to define the behavior for drag. - * @Default {ej.Grid.DragBehavior.Move} - */ - dragBehavior?: ej.Grid.DragBehavior | string; - } - - export interface SearchSettings { - - /** This specify the grid to search for the value in particular columns that is mentioned in the field. - * @Default {[]} - */ - fields?: any; - - /** This specifies the grid to search the particular data that is mentioned in the key. - */ - key?: string; - - /** It specifies the grid to search the records based on operator. - * @Default {contains} - */ - operator?: string; - - /** It enables or disables case-sensitivity while searching the search key in grid. - * @Default {true} - */ - ignoreCase?: boolean; - } - - export interface SelectionSettings { - - /** Gets or sets a value that indicates the cell selection actions based on the cell selection mode. - * @Default {flow} - */ - cellSelectionMode?: string; - - /** Gets or sets a value that indicates whether to enable the toggle selection behavior for row, cell and column. - * @Default {false} - */ - enableToggle?: boolean; - - /** Gets or sets a value that indicates whether to add the default selection actions as a selection mode.See selectionMode - * @Default {[row]} - */ - selectionMode?: any[]; - } - - export interface ScrollSettings { - - /** This specify the grid to to view data that you require without buffering the entire load of a huge database - * @Default {false} - */ - allowVirtualScrolling?: boolean; - - /** It accepts the boolean value and shows or hides the scrollbar while focus in or focus out of the Grid. - * @Default {false} - */ - autoHide?: boolean; - - /** Specifies the height and width of button in the scrollbar. - * @Default {18} - */ - buttonSize?: number; - - /** This specify the grid to enable/disable touch control for scrolling. - * @Default {true} - */ - enableTouchScroll?: boolean; - - /** This specify the grid to freeze particular columns at the time of scrolling. - * @Default {0} - */ - frozenColumns?: number; - - /** This specify the grid to freeze particular rows at the time of scrolling. - * @Default {0} - */ - frozenRows?: number; - - /** This specify the grid to show the vertical scroll bar, to scroll and view the grid contents. - * @Default {0} - */ - height?: string | number; - - /** It accepts the integer value and sets the width of scrollbar. - * @Default {18} - */ - scrollerSize?: number; - - /** This is used to define the mode of virtual scrolling in grid. See virtualScrollMode - * @Default {ej.Grid.VirtualScrollMode.Normal} - */ - virtualScrollMode?: ej.Grid.VirtualScrollMode | string; - - /** This is used to enable the enhanced virtual scrolling in Grid. - * @Default {false} - */ - enableVirtualization?: boolean; - - /** This specify the grid to show the horizontal scroll bar, to scroll and view the grid contents - * @Default {250} - */ - width?: string | number; - - /** This specify the scroll down pixel of mouse wheel, to scroll mouse wheel and view the grid contents. - * @Default {57} - */ - scrollOneStepBy?: number; - } - - export interface SortSettingsSortedColumn { - - /** Gets or sets a value that indicates whether to define the direction to sort the column. - */ - direction?: string; - - /** Gets or sets a value that indicates whether to define the field name of the column to be sort - */ - field?: string; - } - - export interface SortSettings { - - /** Gets or sets a value that indicates whether to define the direction and field to sort the column. - */ - sortedColumns?: SortSettingsSortedColumn[]; - } - - export interface StackedHeaderRowsStackedHeaderColumn { - - /** Gets or sets a value that indicates the header text for the particular stacked header column. - * @Default {null} - */ - column?: any; - - /** Gets or sets a value that indicates class to the corresponding stackedHeaderColumn. - * @Default {null} - */ - cssClass?: string; - - /** Gets or sets a value that indicates the header text for the particular stacked header column. - * @Default {null} - */ - headerText?: string; - - /** Gets or sets a value that indicates the text alignment of the corresponding headerText. - * @Default {ej.TextAlign.Left} - */ - textAlign?: string; - - /** Sets the template for tooltip for the Grid stackedHeaderColumns. - * @Default {null} - */ - tooltip?: string; - } - - export interface StackedHeaderRow { - - /** Gets or sets a value that indicates whether to add stacked header columns into the stacked header rows - * @Default {[]} - */ - stackedHeaderColumns?: StackedHeaderRowsStackedHeaderColumn[]; - } - - export interface SummaryRowsSummaryColumn { - - /** Gets or sets a value that indicates the text displayed in the summary column as a value - * @Default {null} - */ - customSummaryValue?: string; - - /** This specifies summary column used to perform the summary calculation - * @Default {null} - */ - dataMember?: string; - - /** Gets or sets a value that indicates to define the target column at which to display the summary. - * @Default {null} - */ - displayColumn?: string; - - /** Gets or sets a value that indicates the format for the text applied on the column - * @Default {null} - */ - format?: string; - - /** Gets or sets a value that indicates the text displayed before the summary column value - * @Default {null} - */ - prefix?: string; - - /** Gets or sets a value that indicates the text displayed after the summary column value - * @Default {null} - */ - suffix?: string; - - /** Gets or sets a value that indicates the type of calculations to be performed for the corresponding summary column - * @Default {[]} - */ - summaryType?: ej.Grid.SummaryType | string; - - /** Gets or sets a value that indicates to add the template for the summary value of dataMember given. - * @Default {null} - */ - template?: string; - } + ///New column Size will be adjusted using next column. + NextColumn, - export interface SummaryRow { + ///New column Size will be adjusted using entire control + Control + } - /** Gets or sets a value that indicates whether to show the summary value within the group caption area for the corresponding summary column while grouping the column - * @Default {false} - */ - showCaptionSummary?: boolean; - /** Gets or sets a value that indicates whether to show the group summary value for the corresponding summary column while grouping a column - * @Default {false} - */ - showGroupSummary?: boolean; + enum CellSelectionMode { - /** Gets or sets a value that indicates whether to show the total summary value the for the corresponding summary column. The summary row is added after the grid content. - * @Default {true} - */ - showTotalSummary?: boolean; + ///It selects cells continuously from the start cell to end cell. + Flow, - /** Gets or sets a value that indicates whether to add summary columns into the summary rows. - * @Default {[]} - */ - summaryColumns?: SummaryRowsSummaryColumn[]; + ///It selects range of cells as a block from start cell to the end cell. + Box + } - /** This specifies the grid to show the title for the summary rows. - */ - title?: string; - /** This specifies the grid to show the title of summary row in the specified column. - * @Default {null} - */ - titleColumn?: string; - } + enum SelectionType { - export interface TextWrapSettings { + ///Specifies the selection type as single. + Single, - /** This specifies the grid to apply the auto wrap for grid content or header or both. - * @Default {ej.Grid.WrapMode.Both} - */ - wrapMode?: ej.Grid.WrapMode | string; - } + ///Specifies the selection type as multiple. + Multiple + } - export interface ToolbarSettingsCustomToolbarItem { - /** Gets or sets a value that indicates whether to add custom toolbar item as a template element. - */ - templateID?: string; + enum VirtualScrollMode { - /** Gets or sets a value that indicates whether to add custom toolbar item with a custom tooltip. - */ - tooltip?: string; - } + ///virtual scroll mode is normal. + Normal, - export interface ToolbarSettings { + ///virtual scroll mode is continuous. + Continuous + } - /** Gets or sets a value that indicates whether to add custom toolbar items within the toolbar to perform any action in the grid - * @Default {[]} - */ - customToolbarItems?: any[]; - /** Gets or sets a value that indicates whether to enable toolbar in the grid. - * @Default {false} - */ - showToolbar?: boolean; + enum SummaryType { - /** Gets or sets a value that indicates whether to add the default editing actions as a toolbar items - * @Default {[]} - */ - toolbarItems?: Array; - } + ///Summary type is average. + Average, - enum GridLines { + ///Summary type is minimum. + Minimum, - ///Displays both the horizontal and vertical grid lines. - Both, + ///Summary type is maximum. + Maximum, - ///Displays the horizontal grid lines only. - Horizontal, + ///Summary type is count. + Count, - ///Displays the vertical grid lines only. - Vertical, + ///Summary type is sum. + Sum, - ///No grid lines are displayed. - None - } + ///Summary type is custom. + Custom, + ///Summary type is true count. + TrueCount, - enum ClipMode { + ///Summary type is false count. + FalseCount + } - ///Shows ellipsis for the overflown cell. - Ellipsis, - ///Truncate the text in the cell - Clip, + enum WrapMode { - ///Shows ellipsis and tooltip for the overflown cell. - EllipsisWithTooltip - } + ///Auto wrap is applied for both content and header. + Both, + ///Auto wrap is applied only for content. + Content, - enum ColumnLayout { + ///Auto wrap is applied only for header. + Header + } - ///Column layout is auto(based on width). - Auto, - ///Column layout is fixed(based on width). - Fixed - } + enum ToolBarItems { + ///Toolbar item is add. + Add, - enum UnboundType { + ///Toolbar item is edit. + Edit, - ///Unbound type is edit. - Edit, + ///Toolbar item is delete. + Delete, - ///Unbound type is save. - Save, + ///Toolbar item is update. + Update, - ///Unbound type is delete. - Delete, + ///Toolbar item is cancel. + Cancel, - ///Unbound type is cancel. - Cancel - } + ///Toolbar item is search. + Search, + ///Toolbar item is pdfExport. + PdfExport, - enum EditingType { + ///Toolbar item is printGrid. + PrintGrid, - ///Specifies editing type as string edit. - String, + ///Toolbar item is wordExport. + WordExport + } - ///Specifies editing type as boolean edit. - Boolean, + } - ///Specifies editing type as numeric edit. - Numeric, + class Sparkline extends ej.Widget { + static fn: Sparkline; + constructor(element: JQuery | Element, options?: Sparkline.Model); + static Locale: any; + model: Sparkline.Model; + defaults: Sparkline.Model; - ///Specifies editing type as dropdown edit. - Dropdown, + /** Redraws the entire sparkline. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. + * @returns {void} + */ + redraw(): void; + } + export namespace Sparkline { - ///Specifies editing type as datepicker. - DatePicker, + export interface Model { - ///Specifies editing type as datetime picker. - DateTimePicker - } + /** Background color of the plot area. + * @Default {transparent} + */ + background?: string; + /** Fill color for the sparkline series. + * @Default {#33ccff} + */ + fill?: string; - enum FilterType { + /** Border color of the series. + * @Default {null} + */ + stroke?: string; - ///Specifies the filter type as menu. - Menu, + /** Options for customizing the color, opacity and width of the sparkline border. + */ + border?: Border; - ///Specifies the filter type as excel. - Excel - } + /** Border width of the series. + * @Default {1} + */ + width?: number; + /** Opacity of the series. + * @Default {1} + */ + opacity?: number; - enum EditMode { + /** Color for series high point. + * @Default {null} + */ + highPointColor?: string; - ///Edit mode is normal. - Normal, - - ///Edit mode is dialog. - Dialog, - - ///Edit mode is dialog template. - DialogTemplate, - - ///Edit mode is batch. - Batch, - - ///Edit mode is inline form. - InlineForm, - - ///Edit mode is inline template form. - InlineTemplateForm, - - ///Edit mode is external form. - ExternalForm, - - ///Edit mode is external form template. - ExternalFormTemplate - } - - - enum FormPosition { - - ///Form position is bottomleft. - BottomLeft, - - ///Form position is topright. - TopRight - } - - - enum RowPosition { - - ///Specifies position of add new row as top. - Top, - - ///Specifies position of add new row as bottom. - Bottom - } - - - enum FilterBarMode { - - ///Initiate filter operation on typing the filter query. - Immediate, - - ///Initiate filter operation after Enter key is pressed. - OnEnter - } - - - enum PrintMode { - - ///Prints all pages. - AllPages, - - ///Prints current page. - CurrentPage - } - - - enum ResizeMode { - - ///New column size will be adjusted by all other Columns - Normal, - - ///New column Size will be adjusted using next column. - NextColumn, - - ///New column Size will be adjusted using entire control - Control - } - - - enum DragBehavior { - - ///Moves a dragged row from one grid to another - Move, - - ///Copies a dragged row from one grid to another - Copy - } - - - enum SelectionType { - - ///Specifies the selection type as single. - Single, - - ///Specifies the selection type as multiple. - Multiple - } - - - enum VirtualScrollMode { - - ///virtual scroll mode is normal. - Normal, - - ///virtual scroll mode is continuous. - Continuous - } - - - enum SummaryType { - - ///Summary type is average. - Average, - - ///Summary type is minimum. - Minimum, - - ///Summary type is maximum. - Maximum, - - ///Summary type is count. - Count, - - ///Summary type is sum. - Sum, - - ///Summary type is custom. - Custom, - - ///Summary type is true count. - TrueCount, - - ///Summary type is false count. - FalseCount - } - - - enum WrapMode { - - ///Auto wrap is applied for both content and header. - Both, - - ///Auto wrap is applied only for content. - Content, - - ///Auto wrap is applied only for header. - Header - } - - - enum ToolBarItems { - - ///Toolbar item is add. - Add, - - ///Toolbar item is edit. - Edit, - - ///Toolbar item is delete. - Delete, - - ///Toolbar item is update. - Update, - - ///Toolbar item is cancel. - Cancel, - - ///Toolbar item is search. - Search, - - ///Toolbar item is pdfExport. - PdfExport, - - ///Toolbar item is printGrid. - PrintGrid, - - ///Toolbar item is wordExport. - WordExport - } - - } - - class Sparkline extends ej.Widget { - static fn: Sparkline; - constructor(element: JQuery | Element, options?: Sparkline.Model); - static Locale: any; - model: Sparkline.Model; - defaults: Sparkline.Model; - - /** Redraws the entire sparkline. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. - * @returns {void} - */ - redraw(): void; - } - export namespace Sparkline { - - export interface Model { - - /** Background color of the plot area. - * @Default {transparent} - */ - background?: string; - - /** Fill color for the sparkline series. - * @Default {#33ccff} - */ - fill?: string; - - /** Border color of the series. - * @Default {null} - */ - stroke?: string; - - /** Options for customizing the color, opacity and width of the sparkline border. - */ - border?: Border; - - /** Border width of the series. - * @Default {1} - */ - width?: number; - - /** Opacity of the series. - * @Default {1} - */ - opacity?: number; - - /** Color for series high point. - * @Default {null} - */ - highPointColor?: string; - - /** Color for series low point. - * @Default {null} - */ - lowPointColor?: string; - - /** Color for series start point. - * @Default {null} - */ - startPointColor?: string; - - /** Color for series end point. - * @Default {null} - */ - endPointColor?: string; - - /** Color for series negative point. - * @Default {null} - */ - negativePointColor?: string; - - /** Options for customizing the color, opacity of the sparkline start and end range. - */ - rangeBandSettings?: RangeBandSettings; - - /** Name of the culture based on which sparkline should be localized. - * @Default {en-US} - */ - locale?: string; - - /** Name of a field in data source, where the fill color for all the data points is generated. - */ - palette?: string; - - /** Controls whether sparkline has to be responsive or not. - * @Default {true} - */ - isResponsive?: boolean; - - /** Controls whether Sparkline has to be rendered as Canvas or SVG.Canvas rendering supports all functionalities in SVG rendering. - * @Default {false} - */ - enableCanvasRendering?: boolean; - - /** Specify to convert the date object to string, using locale settings. - * @Default {false} - */ - enableGroupSeparator?: boolean; - - /** Specifies the dataSource for the series. It can be an array of JSON objects or an instance of ej.DataManager. - * @Default {null} - */ - dataSource?: any; - - /** Name of the property in the datasource that contains x value for the series. - * @Default {null} - */ - xName?: string; - - /** Name of the property in the datasource that contains y value for the series. - * @Default {null} - */ - yName?: string; - - /** Gap or padding for sparkline. - * @Default {8} - */ - padding?: number; - - /** Specifies the type of the series to render in sparkline. - * @Default {line. See Type} - */ - type?: ej.datavisualization.Sparkline.Type | string; - - /** Specifies the theme for Sparkline. - * @Default {Flatlight. See Theme} - */ - theme?: ej.datavisualization.Sparkline.Theme | string; - - /** Options to customize the tooltip. - */ - tooltip?: Tooltip; - - /** Options for displaying and customizing marker for a data point. - */ - markerSettings?: MarkerSettings; - - /** Options to customize the Sparkline size. - */ - size?: Size; - - /** Options for customizing the color,dashArray and width of the axisLine. - */ - axisLineSettings?: AxisLineSettings; - - /** Fires before loading the sparkline. */ - load?(e: LoadEventArgs): void; - - /** Fires after loaded the sparkline. */ - loaded?(e: LoadedEventArgs): void; - - /** Fires before rendering trackball tooltip. You can use this event to customize the text displayed in trackball tooltip. */ - tooltipInitialize?(e: TooltipInitializeEventArgs): void; - - /** Fires before rendering a series. This event is fired for each series in Sparkline. */ - seriesRendering?(e: SeriesRenderingEventArgs): void; - - /** Fires when mouse is moved over a point. */ - pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; - - /** Fires on clicking a point in sparkline. You can use this event to handle clicks made on points. */ - pointRegionMouseClick?(e: PointRegionMouseClickEventArgs): void; - - /** Fires on moving mouse over the sparkline. */ - sparklineMouseMove?(e: SparklineMouseMoveEventArgs): void; - - /** Fires on moving mouse outside the sparkline. */ - sparklineMouseLeave?(e: SparklineMouseLeaveEventArgs): void; - } - - export interface LoadEventArgs { - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sparkline model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface LoadedEventArgs { - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sparkline model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface TooltipInitializeEventArgs { - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sparkline model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - - /** X Location of the trackball tooltip in pixels - */ - locationX?: any; - - /** Y Location of the trackball tooltip in pixels - */ - locationY?: any; - - /** Index of the point for which trackball tooltip is displayed - */ - pointIndex?: number; - - /** Text to be displayed in trackball tooltip. Use this option to add custom text in trackball tooltip - */ - currentText?: string; - } - - export interface SeriesRenderingEventArgs { - - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Color for series low point. + * @Default {null} + */ + lowPointColor?: string; + + /** Color for series start point. + * @Default {null} + */ + startPointColor?: string; + + /** Color for series end point. + * @Default {null} + */ + endPointColor?: string; + + /** Color for series negative point. + * @Default {null} + */ + negativePointColor?: string; + + /** Options for customizing the color, opacity of the sparkline start and end range. + */ + rangeBandSettings?: RangeBandSettings; + + /** Name of the culture based on which sparkline should be localized. + * @Default {en-US} + */ + locale?: string; + + /** Name of a field in data source, where the fill color for all the data points is generated. + */ + palette?: string; + + /** Controls whether sparkline has to be responsive or not. + * @Default {true} + */ + isResponsive?: boolean; + + /** Controls whether Sparkline has to be rendered as Canvas or SVG.Canvas rendering supports all functionalities in SVG rendering. + * @Default {false} + */ + enableCanvasRendering?: boolean; + + /** Specify to convert the date object to string, using locale settings. + * @Default {false} + */ + enableGroupSeparator?: boolean; + + /** Specifies the dataSource for the series. It can be an array of JSON objects or an instance of ej.DataManager. + * @Default {null} + */ + dataSource?: any; + + /** Name of the property in the datasource that contains x value for the series. + * @Default {null} + */ + xName?: string; + + /** Name of the property in the datasource that contains y value for the series. + * @Default {null} + */ + yName?: string; + + /** Gap or padding for sparkline. + * @Default {8} + */ + padding?: number; + + /** Specifies the type of the series to render in sparkline. + * @Default {line. See Type} + */ + type?: ej.datavisualization.Sparkline.Type|string; + + /** Specifies the theme for Sparkline. + * @Default {Flatlight. See Theme} + */ + theme?: ej.datavisualization.Sparkline.Theme|string; + + /** Options to customize the tooltip. + */ + tooltip?: Tooltip; + + /** Options for displaying and customizing marker for a data point. + */ + markerSettings?: MarkerSettings; + + /** Options to customize the Sparkline size. + */ + size?: Size; + + /** Options for customizing the color,dashArray and width of the axisLine. + */ + axisLineSettings?: AxisLineSettings; + + /** Fires before loading the sparkline. + */ + load?(e: LoadEventArgs): void; + + /** Fires after loaded the sparkline. + */ + loaded?(e: LoadedEventArgs): void; + + /** Fires before rendering trackball tooltip. You can use this event to customize the text displayed in trackball tooltip. + */ + tooltipInitialize?(e: TooltipInitializeEventArgs): void; + + /** Fires before rendering a series. This event is fired for each series in Sparkline. + */ + seriesRendering?(e: SeriesRenderingEventArgs): void; + + /** Fires when mouse is moved over a point. + */ + pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; + + /** Fires on clicking a point in sparkline. You can use this event to handle clicks made on points. + */ + pointRegionMouseClick?(e: PointRegionMouseClickEventArgs): void; + + /** Fires on moving mouse over the sparkline. + */ + sparklineMouseMove?(e: SparklineMouseMoveEventArgs): void; + + /** Fires on moving mouse outside the sparkline. + */ + sparklineMouseLeave?(e: SparklineMouseLeaveEventArgs): void; + } + + export interface LoadEventArgs { + + /** Set this option to true to cancel the event + */ + cancel?: boolean; /** Instance of the sparkline model object */ - model?: any; + model?: any; - /** Name of the event - */ - type?: string; + /** Name of the event + */ + type?: string; + } - /** Minimum x value of the data point - */ - minX?: any; + export interface LoadedEventArgs { - /** Minimum y value of the data point - */ - minY?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Maximum x value of the data point - */ - maxX?: any; + /** Instance of the sparkline model object + */ + model?: any; - /** Maximum y value of the data point - */ - maxY?: any; - } + /** Name of the event + */ + type?: string; + } - export interface PointRegionMouseMoveEventArgs { + export interface TooltipInitializeEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Instance of the sparkline model object - */ - model?: any; + /** Instance of the sparkline model object + */ + model?: any; - /** Name of the event - */ - type?: string; + /** Name of the event + */ + type?: string; - /** X-coordinate of point in pixel - */ - locationX?: number; + /** X Location of the trackball tooltip in pixels + */ + locationX?: any; - /** Y-coordinate of point in pixel - */ - locationY?: number; + /** Y Location of the trackball tooltip in pixels + */ + locationY?: any; - /** Index of the point in series - */ - pointIndex?: number; + /** Index of the point for which trackball tooltip is displayed + */ + pointIndex?: number; - /** Type of the series - */ - seriesType?: string; - } + /** Text to be displayed in trackball tooltip. Use this option to add custom text in trackball tooltip + */ + currentText?: string; + } - export interface PointRegionMouseClickEventArgs { + export interface SeriesRenderingEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Instance of the sparkline model object - */ - model?: any; + /** Instance of the sparkline model object + */ + model?: any; - /** Name of the event - */ - type?: string; + /** Name of the event + */ + type?: string; - /** X-coordinate of point in pixel - */ - locationX?: number; + /** Minimum x value of the data point + */ + minX?: any; - /** Y-coordinate of point in pixel - */ - locationY?: number; + /** Minimum y value of the data point + */ + minY?: any; - /** Index of the point in series - */ - pointIndex?: number; - - /** Type of the series - */ - seriesType?: string; - } - - export interface SparklineMouseMoveEventArgs { + /** Maximum x value of the data point + */ + maxX?: any; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Maximum y value of the data point + */ + maxY?: any; + } - /** Instance of the sparkline model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface SparklineMouseLeaveEventArgs { - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sparkline model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface Border { - - /** Border color of the sparkline. - * @Default {transparent} - */ - color?: string; - - /** Width of the Sparkline border. - * @Default {1} - */ - width?: number; - } - - export interface RangeBandSettings { - - /** Start value of the range band. - * @Default {null} - */ - startRange?: number; - - /** End value of the range band. - * @Default {null} - */ - endRange?: number; - - /** Range band opacity of the series. - * @Default {1} - */ - opacity?: number; - - /** Range band color of the series. - * @Default {transparent} - */ - color?: string; - } - - export interface TooltipBorder { - - /** Border color of the tooltip. - * @Default {transparent} - */ - color?: string; - - /** Border width of the tooltip. - * @Default {1} - */ - width?: number; - } - - export interface TooltipFont { - - /** Font color of the text in the tooltip. - * @Default {#111111} - */ - color?: string; - - /** Font Family for the tooltip. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the font Style for the tooltip. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Sparkline.FontStyle | string; - - /** Specifies the font weight for the tooltip. - * @Default {Regular} - */ - fontWeight?: ej.datavisualization.Sparkline.FontWeight | string; - - /** Opacity for text in the tooltip. - * @Default {1} - */ - opacity?: number; - - /** Font size for text in the tooltip. - * @Default {8px} - */ - size?: string; - } - - export interface Tooltip { - - /** Show/hides the tooltip visibility. - * @Default {false} - */ - visible?: boolean; - - /** Fill color for the sparkline tooltip. - * @Default {white} - */ - fill?: string; - - /** Custom template to the tooltip. - */ - template?: string; - - /** Options for customizing the border of the tooltip. - */ - border?: TooltipBorder; - - /** Options for customizing the font of the tooltip. - */ - font?: TooltipFont; - } - - export interface MarkerSettingsBorder { - - /** Border color of the marker shape. - * @Default {transparent} - */ - color?: string; - - /** Controls the opacity of the marker border. - * @Default {1} - */ - opacity?: number; - - /** Border width of the marker shape. - * @Default {null} - */ - width?: number; - } - - export interface MarkerSettings { - - /** Controls the opacity of the marker. - * @Default {1} - */ - opacity?: number; - - /** Controls the visibility of the marker shape. - * @Default {false} - */ - visible?: boolean; - - /** width of the marker shape. - * @Default {2} - */ - width?: number; - - /** Color of the marker shape. - * @Default {white} - */ - fill?: string; - - /** Options for customizing the border of the marker shape. - */ - border?: MarkerSettingsBorder; - } - - export interface Size { - - /** Height of the Sparkline. Height can be specified in either pixel or percentage. - * @Default {''} - */ - height?: string; - - /** Width of the Sparkline. Width can be specified in either pixel or percentage. - * @Default {''} - */ - width?: string; - } - - export interface AxisLineSettings { - - /** Controls the visibility of the axis. - * @Default {false} - */ - visible?: boolean; - - /** Color of the axis line. - * @Default {'#111111'} - */ - color?: string; - - /** Width of the axis line. - * @Default {1} - */ - width?: number; - - /** Dash array of the axis line. - * @Default {1} - */ - dashArray?: number; - } - } - namespace Sparkline { - enum Type { - //string - Area, - //string - Line, - //string - Column, - //string - Pie, - //string - WinLoss, - } - } - namespace Sparkline { - enum Theme { - //string - Azure, - //string - FlatLight, - //string - FlatDark, - //string - Azuredark, - //string - Lime, - //string - LimeDark, - //string - Saffron, - //string - SaffronDark, - //string - GradientLight, - //string - GradientDark, - } - } - namespace Sparkline { - enum FontStyle { - //string - Normal, - //string - Italic, - } - } - namespace Sparkline { - enum FontWeight { - //string - Regular, - //string - Bold, - //string - Lighter, - } - } - - class SunburstChart extends ej.Widget { - static fn: SunburstChart; - constructor(element: JQuery | Element, options?: SunburstChart.Model); - static Locale: any; - model: SunburstChart.Model; - defaults: SunburstChart.Model; - - /** Redraws the entire sunburst. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. - * @returns {void} - */ - redraw(): void; - - /** destroy the sunburst - * @returns {void} - */ - _destroy(): void; - } - export namespace SunburstChart { - - export interface Model { - - /** Background color of the plot area. - * @Default {null} - */ - background?: string; - - /** Bind the data field from the data source. - * @Default {null} - */ - valueMemberPath?: string; - - /** Options for customizing the sunburst border. - */ - border?: Border; - - /** Options for customizing the sunburst segment border. - */ - segmentBorder?: SegmentBorder; - - /** Specifies the dataSource to the sunburst. - * @Default {null} - */ - dataSource?: any; - - /** Palette color for the data points. - * @Default {null} - */ - palette?: string; - - /** Parent node of the data points. - * @Default {null} - */ - parentNode?: string; - - /** Name of the property in the datasource that contains x values. - * @Default {null} - */ - xName?: string; - - /** Name of the property in the datasource that contains y values. - * @Default {null} - */ - yName?: string; - - /** Controls whether sunburst has to be responsive or not. - * @Default {true} - */ - isResponsive?: boolean; - - /** Options to customize the Sunburst size. - */ - size?: Size; - - /** Controls the visibility of sunburst. - * @Default {true} - */ - visible?: boolean; - - /** Options to customize the Sunburst tooltip. - */ - tooltip?: Tooltip; - - /** Options for customizing sunburst points. - */ - points?: Points; - - /** Sunburst rendering will start from the specified value - * @Default {null} - */ - startAngle?: number; - - /** Sunburst rendering will end at the specified value - * @Default {null} - */ - endAngle?: number; - - /** Sunburst outer radius value - * @Default {1} - */ - radius?: number; - - /** Sunburst inner radius value - * @Default {0.4} - */ - innerRadius?: number; - - /** Options to customize the Sunburst dataLabel. - */ - dataLabelSettings?: DataLabelSettings; - - /** Options for customizing the title and subtitle of sunburst. - */ - title?: Title; - - /** Options for customizing the appearance of the levels or point while highlighting. - */ - highlightSettings?: HighlightSettings; + export interface PointRegionMouseMoveEventArgs { - /** Options for customizing the appearance of the levels or data point while selection. - */ - selectionSettings?: SelectionSettings; - - /** Specify levels of sunburst for grouped visualization of data - * @Default {[]} - */ - levels?: Level[]; - - /** Options to customize the legend items and legend title. - */ - legend?: Legend; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Specifies the theme for Sunburst. - * @Default {Flatlight. See Theme} - */ - theme?: ej.datavisualization.Sunburst.SunburstTheme | string; + /** Instance of the sparkline model object + */ + model?: any; - /** Options to customize the left, right, top and bottom margins of sunburst area. - */ - margin?: Margin; + /** Name of the event + */ + type?: string; - /** Enable/disable the animation for all the levels. - * @Default {false} - */ - enableAnimation?: boolean; + /** X-coordinate of point in pixel + */ + locationX?: number; - /** Opacity of the levels. - * @Default {1} - */ - opacity?: number; + /** Y-coordinate of point in pixel + */ + locationY?: number; - /** Options for enable zooming feature of chart. - */ - zoomSettings?: ZoomSettings; + /** Index of the point in series + */ + pointIndex?: number; - /** Animation type of sunburst - * @Default {rotation. See Alignment} - */ - animationType?: ej.datavisualization.Sunburst.Animation | string; + /** Type of the series + */ + seriesType?: string; + } - /** Fires before loading. */ - load?(e: LoadEventArgs): void; + export interface PointRegionMouseClickEventArgs { - /** Fires before rendering sunburst. */ - preRender?(e: PreRenderEventArgs): void; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Fires after rendering sunburst. */ - loaded?(e: LoadedEventArgs): void; + /** Instance of the sparkline model object + */ + model?: any; - /** Fires before rendering the datalabel */ - dataLabelRendering?(e: DataLabelRenderingEventArgs): void; + /** Name of the event + */ + type?: string; - /** Fires before rendering each segment */ - segmentRendering?(e: SegmentRenderingEventArgs): void; + /** X-coordinate of point in pixel + */ + locationX?: number; - /** Fires before rendering sunburst title. */ - titleRendering?(e: TitleRenderingEventArgs): void; + /** Y-coordinate of point in pixel + */ + locationY?: number; - /** Fires during initialization of tooltip. */ - tooltipInitialize?(e: TooltipInitializeEventArgs): void; + /** Index of the point in series + */ + pointIndex?: number; + + /** Type of the series + */ + seriesType?: string; + } + + export interface SparklineMouseMoveEventArgs { - /** Fires after clicking the point in sunburst */ - pointRegionClick?(e: PointRegionClickEventArgs): void; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Fires while moving the mouse over sunburst points */ - pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; + /** Instance of the sparkline model object + */ + model?: any; + + /** Name of the event + */ + type?: string; + } + + export interface SparklineMouseLeaveEventArgs { + + /** Set this option to true to cancel the event + */ + cancel?: boolean; + + /** Instance of the sparkline model object + */ + model?: any; + + /** Name of the event + */ + type?: string; + } + + export interface Border { + + /** Border color of the sparkline. + * @Default {transparent} + */ + color?: string; + + /** Width of the Sparkline border. + * @Default {1} + */ + width?: number; + } + + export interface RangeBandSettings { + + /** Start value of the range band. + * @Default {null} + */ + startRange?: number; + + /** End value of the range band. + * @Default {null} + */ + endRange?: number; + + /** Range band opacity of the series. + * @Default {1} + */ + opacity?: number; + + /** Range band color of the series. + * @Default {transparent} + */ + color?: string; + } + + export interface TooltipBorder { + + /** Border color of the tooltip. + * @Default {transparent} + */ + color?: string; + + /** Border width of the tooltip. + * @Default {1} + */ + width?: number; + } + + export interface TooltipFont { + + /** Font color of the text in the tooltip. + * @Default {#111111} + */ + color?: string; + + /** Font Family for the tooltip. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the font Style for the tooltip. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Sparkline.FontStyle|string; + + /** Specifies the font weight for the tooltip. + * @Default {Regular} + */ + fontWeight?: ej.datavisualization.Sparkline.FontWeight|string; + + /** Opacity for text in the tooltip. + * @Default {1} + */ + opacity?: number; + + /** Font size for text in the tooltip. + * @Default {8px} + */ + size?: string; + } + + export interface Tooltip { + + /** Show/hides the tooltip visibility. + * @Default {false} + */ + visible?: boolean; + + /** Fill color for the sparkline tooltip. + * @Default {white} + */ + fill?: string; + + /** Custom template to the tooltip. + */ + template?: string; + + /** Options for customizing the border of the tooltip. + */ + border?: TooltipBorder; + + /** Options for customizing the font of the tooltip. + */ + font?: TooltipFont; + } + + export interface MarkerSettingsBorder { + + /** Border color of the marker shape. + * @Default {transparent} + */ + color?: string; + + /** Controls the opacity of the marker border. + * @Default {1} + */ + opacity?: number; + + /** Border width of the marker shape. + * @Default {null} + */ + width?: number; + } + + export interface MarkerSettings { + + /** Controls the opacity of the marker. + * @Default {1} + */ + opacity?: number; + + /** Controls the visibility of the marker shape. + * @Default {false} + */ + visible?: boolean; + + /** width of the marker shape. + * @Default {2} + */ + width?: number; + + /** Color of the marker shape. + * @Default {white} + */ + fill?: string; + + /** Options for customizing the border of the marker shape. + */ + border?: MarkerSettingsBorder; + } + + export interface Size { + + /** Height of the Sparkline. Height can be specified in either pixel or percentage. + * @Default {''} + */ + height?: string; + + /** Width of the Sparkline. Width can be specified in either pixel or percentage. + * @Default {''} + */ + width?: string; + } + + export interface AxisLineSettings { + + /** Controls the visibility of the axis. + * @Default {false} + */ + visible?: boolean; + + /** Color of the axis line. + * @Default {'#111111'} + */ + color?: string; + + /** Width of the axis line. + * @Default {1} + */ + width?: number; + + /** Dash array of the axis line. + * @Default {1} + */ + dashArray?: number; + } + } + namespace Sparkline { + enum Type { + //string + Area, + //string + Line, + //string + Column, + //string + Pie, + //string + WinLoss, + } + } + namespace Sparkline { + enum Theme { + //string + Azure, + //string + FlatLight, + //string + FlatDark, + //string + Azuredark, + //string + Lime, + //string + LimeDark, + //string + Saffron, + //string + SaffronDark, + //string + GradientLight, + //string + GradientDark, + } + } + namespace Sparkline { + enum FontStyle { + //string + Normal, + //string + Italic, + } + } + namespace Sparkline { + enum FontWeight { + //string + Regular, + //string + Bold, + //string + Lighter, + } + } + + class SunburstChart extends ej.Widget { + static fn: SunburstChart; + constructor(element: JQuery | Element, options?: SunburstChart.Model); + static Locale: any; + model: SunburstChart.Model; + defaults: SunburstChart.Model; + + /** Redraws the entire sunburst. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. + * @returns {void} + */ + redraw(): void; + + /** destroy the sunburst + * @returns {void} + */ + destroy(): void; + } + export namespace SunburstChart { + + export interface Model { + + /** Background color of the plot area. + * @Default {null} + */ + background?: string; + + /** Bind the data field from the data source. + * @Default {null} + */ + valueMemberPath?: string; + + /** Options for customizing the sunburst border. + */ + border?: Border; + + /** Options for customizing the sunburst segment border. + */ + segmentBorder?: SegmentBorder; + + /** Specifies the dataSource to the sunburst. + * @Default {null} + */ + dataSource?: any; + + /** Palette color for the data points. + * @Default {null} + */ + palette?: string; + + /** Parent node of the data points. + * @Default {null} + */ + parentNode?: string; + + /** Name of the property in the datasource that contains x values. + * @Default {null} + */ + xName?: string; + + /** Name of the property in the datasource that contains y values. + * @Default {null} + */ + yName?: string; + + /** Controls whether sunburst has to be responsive or not. + * @Default {true} + */ + isResponsive?: boolean; + + /** Options to customize the Sunburst size. + */ + size?: Size; + + /** Controls the visibility of sunburst. + * @Default {true} + */ + visible?: boolean; + + /** Options to customize the Sunburst tooltip. + */ + tooltip?: Tooltip; + + /** Options for customizing sunburst points. + */ + points?: Points; + + /** Sunburst rendering will start from the specified value + * @Default {null} + */ + startAngle?: number; + + /** Sunburst rendering will end at the specified value + * @Default {null} + */ + endAngle?: number; + + /** Sunburst outer radius value + * @Default {1} + */ + radius?: number; + + /** Sunburst inner radius value + * @Default {0.4} + */ + innerRadius?: number; + + /** Options to customize the Sunburst dataLabel. + */ + dataLabelSettings?: DataLabelSettings; + + /** Options for customizing the title and subtitle of sunburst. + */ + title?: Title; + + /** Options for customizing the appearance of the levels or point while highlighting. + */ + highlightSettings?: HighlightSettings; + + /** Options for customizing the appearance of the levels or data point while selection. + */ + selectionSettings?: SelectionSettings; + + /** Specify levels of sunburst for grouped visualization of data + * @Default {[]} + */ + levels?: Level[]; + + /** Options to customize the legend items and legend title. + */ + legend?: Legend; + + /** Specifies the theme for Sunburst. + * @Default {Flatlight. See Theme} + */ + theme?: ej.datavisualization.Sunburst.SunburstTheme|string; + + /** Options to customize the left, right, top and bottom margins of sunburst area. + */ + margin?: Margin; + + /** Enable/disable the animation for all the levels. + * @Default {false} + */ + enableAnimation?: boolean; + + /** Opacity of the levels. + * @Default {1} + */ + opacity?: number; + + /** Options for enable zooming feature of chart. + */ + zoomSettings?: ZoomSettings; + + /** Animation type of sunburst + * @Default {rotation. See Alignment} + */ + animationType?: ej.datavisualization.Sunburst.Animation|string; + + /** Fires before loading. + */ + load?(e: LoadEventArgs): void; + + /** Fires before rendering sunburst. + */ + preRender?(e: PreRenderEventArgs): void; + + /** Fires after rendering sunburst. + */ + loaded?(e: LoadedEventArgs): void; + + /** Fires before rendering the datalabel + */ + dataLabelRendering?(e: DataLabelRenderingEventArgs): void; + + /** Fires before rendering each segment + */ + segmentRendering?(e: SegmentRenderingEventArgs): void; + + /** Fires before rendering sunburst title. + */ + titleRendering?(e: TitleRenderingEventArgs): void; + + /** Fires during initialization of tooltip. + */ + tooltipInitialize?(e: TooltipInitializeEventArgs): void; + + /** Fires after clicking the point in sunburst + */ + pointRegionClick?(e: PointRegionClickEventArgs): void; - /** Fires when clicking the point to perform drilldown. */ - drillDownClick?(e: DrillDownClickEventArgs): void; + /** Fires while moving the mouse over sunburst points + */ + pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; - /** Fires when resetting drilldown points. */ - drillDownBack?(e: DrillDownBackEventArgs): void; + /** Fires when clicking the point to perform drilldown. + */ + drillDownClick?(e: DrillDownClickEventArgs): void; - /** Fires after resetting the sunburst points */ - drillDownReset?(e: DrillDownResetEventArgs): void; - } + /** Fires when resetting drilldown points. + */ + drillDownBack?(e: DrillDownBackEventArgs): void; - export interface LoadEventArgs { + /** Fires after resetting the sunburst points + */ + drillDownReset?(e: DrillDownResetEventArgs): void; + } - /** Load event data - */ - data?: string; + export interface LoadEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Load event data + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface PreRenderEventArgs { + /** Name of the event + */ + type?: string; + } - /** PreRender event data - */ - data?: string; + export interface PreRenderEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** PreRender event data + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface LoadedEventArgs { + /** Name of the event + */ + type?: string; + } - /** Loaded event data - */ - data?: string; + export interface LoadedEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Loaded event data + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface DataLabelRenderingEventArgs { + /** Name of the event + */ + type?: string; + } - /** Sunburst datalabel data - */ - data?: string; + export interface DataLabelRenderingEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Sunburst datalabel data + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface SegmentRenderingEventArgs { + /** Name of the event + */ + type?: string; + } - /** Sunburst datalabel data - */ - data?: string; + export interface SegmentRenderingEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Sunburst datalabel data + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface TitleRenderingEventArgs { + /** Name of the event + */ + type?: string; + } - /** Sunburst title data - */ - data?: string; + export interface TitleRenderingEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Sunburst title data + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface TooltipInitializeEventArgs { + /** Name of the event + */ + type?: string; + } - /** Sunburst tooltip data - */ - data?: string; + export interface TooltipInitializeEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Sunburst tooltip data + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface PointRegionClickEventArgs { + /** Name of the event + */ + type?: string; + } - /** Includes clicked points region data - */ - data?: string; + export interface PointRegionClickEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Includes clicked points region data + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface PointRegionMouseMoveEventArgs { + /** Name of the event + */ + type?: string; + } - /** Includes data of mouse moved region - */ - data?: string; + export interface PointRegionMouseMoveEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Includes data of mouse moved region + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface DrillDownClickEventArgs { + /** Name of the event + */ + type?: string; + } - /** Clicked point data - */ - data?: string; + export interface DrillDownClickEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Clicked point data + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface DrillDownBackEventArgs { + /** Name of the event + */ + type?: string; + } - /** Drill down data of points - */ - data?: string; + export interface DrillDownBackEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Drill down data of points + */ + data?: string; - /** Instance of the sunburst model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface DrillDownResetEventArgs { - - /** Drill down reset data - */ - data?: string; + /** Name of the event + */ + type?: string; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface Border { - - /** Border color of the sunburst. - * @Default {null} - */ - color?: string; - - /** Width of the Sunburst border. - * @Default {2} - */ - width?: number; - } - - export interface SegmentBorder { - - /** Segment Border color of the sunburst. - * @Default {null} - */ - color?: string; - - /** Width of the Sunburst segment border. - * @Default {2} - */ - width?: number; - } - - export interface Size { - - /** Height of the Sunburst. - * @Default {''} - */ - height?: string; - - /** Width of the Sunburst. - * @Default {''} - */ - width?: string; - } - - export interface TooltipBorder { - - /** Border color of the tooltip. - * @Default {null} - */ - color?: string; - - /** Border width of the tooltip. - * @Default {5} - */ - width?: number; - } - - export interface TooltipFont { - - /** Font color of the text in the tooltip. - * @Default {null} - */ - color?: string; - - /** Font Family for the tooltip. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the font Style for the tooltip. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Specifies the font weight for the tooltip. - * @Default {Regular} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Opacity for text in the tooltip. - * @Default {1} - */ - opacity?: number; - - /** Font size for text in the tooltip. - * @Default {12px} - */ - size?: string; - } - - export interface Tooltip { - - /** tooltip visibility of the Sunburst. - * @Default {true} - */ - visible?: boolean; - - /** Options for customizing the border of the sunburst tooltip. - */ - border?: TooltipBorder; - - /** Fill color for the sunburst tooltip. - * @Default {null} - */ - fill?: string; - - /** Options for customizing the font of the tooltip. - */ - font?: TooltipFont; - - /** Custom template to the tooltip. - * @Default {null} - */ - template?: string; - } - - export interface Points { - - /** Points x value of the sunburst. - * @Default {null} - */ - x?: string; - - /** Points y value of the sunburst. - * @Default {null} - */ - y?: number; - - /** Points text of the sunburst. - * @Default {null} - */ - text?: string; - - /** Points fill color of the sunburst. - * @Default {null} - */ - fill?: string; - } - - export interface DataLabelSettingsFont { - - /** Font family of the data label. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the data label. - * @Default {normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight of the data label. - * @Default {regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Opacity of the text. - * @Default {1} - */ - opacity?: number; - - /** Font color of the data label text. - * @Default {null} - */ - color?: string; - - /** Font size of the data label. - * @Default {12px} - */ - size?: string; - } - - export interface DataLabelSettings { - - /** Datalabel visibility of the Sunburst. - * @Default {false} - */ - visible?: boolean; - - /** Alignment of sunburst datalabel - * @Default {Angle. See DatalabelAlignment} - */ - labelRotationMode?: ej.datavisualization.Sunburst.SunburstLabelRotationMode | string; - - /** Options for customizing the data label font. - */ - font?: DataLabelSettingsFont; - - /** Custom template for datalabel - * @Default {null} - */ - template?: string; - - /** Fill color for the datalabel - * @Default {null} - */ - fill?: string; - - /** Datalabel overflow mode - * @Default {Trim. See LabelOverflowMode} - */ - labelOverflowMode?: ej.datavisualization.Sunburst.SunburstLabelOverflowMode | string; - } - - export interface TitleFont { - - /** Font family for Sunburst title. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for Sunburst title. - * @Default {Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight for Sunburst title. - * @Default {Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Opacity of the Sunburst title. - * @Default {1} - */ - opacity?: number; - - /** Font size for Sunburst title. - * @Default {20px} - */ - size?: string; - } - - export interface TitleSubtitleFont { - - /** Font family of sub title. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for sub title. - * @Default {Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight for sub title. - * @Default {Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Opacity of the sub title. - * @Default {1} - */ - opacity?: number; - - /** Font size for sub title. - * @Default {12px} - */ - size?: string; - } - - export interface TitleSubtitle { - - /** Subtitle text for sunburst - */ - text?: string; - - /** Sub title text visibility for sunburst - * @Default {true} - */ - visible?: string; - - /** Sub title text alignment - * @Default {far. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment | string; - - /** Options for customizing the font of sub title. - */ - font?: TitleSubtitleFont; - } - - export interface Title { - - /** Title text for sunburst - */ - text?: string; - - /** Title text visibility for sunburst - * @Default {true} - */ - visible?: string; - - /** Title text alignment - * @Default {center. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment | string; - - /** Options for customizing the font of sunburst title. - */ - font?: TitleFont; - - /** Options to customize the sub title of Sunburst. - */ - subtitle?: TitleSubtitle; - } - - export interface HighlightSettings { - - /** Enables/disables the ability to highlight the levels or point interactively. - * @Default {false} - */ - enable?: boolean; - - /** Specifies whether the levels or point has to be highlighted. - * @Default {point. See Mode} - */ - mode?: ej.datavisualization.Sunburst.SunburstHighlightMode | string; - - /** Color of the levels/point on highlight. - * @Default {red} - */ - color?: string; - - /** Opacity of the levels/point on highlight. - * @Default {0.5} - */ - opacity?: number; - - /** Specifies whether the levels or data point has to be highlighted. - * @Default {opacity. See Mode} - */ - type?: ej.datavisualization.Sunburst.SunburstHighlightType | string; - } - - export interface SelectionSettings { - - /** Enables/disables the ability to select the levels or data point interactively. - * @Default {false} - */ - enable?: boolean; - - /** Specifies whether the levels or data point has to be selected. - * @Default {point. See Mode} - */ - mode?: ej.datavisualization.Sunburst.SunburstHighlightMode | string; - - /** Color of the levels/point on selection. - * @Default {green} - */ - color?: string; - - /** Opacity of the levels/point on selection. - * @Default {0.5} - */ - opacity?: number; - - /** Specifies whether the levels or data point has to be selected. - * @Default {opacity. See Mode} - */ - type?: ej.datavisualization.Sunburst.SunburstHighlightType | string; - } - - export interface Level { - - /** Specifies the group member path - * @Default {null} - */ - groupMemberPath?: string; - } - - export interface LegendBorder { - - /** Border color of the legend. - * @Default {null} - */ - color?: string; - - /** Border width of the legend. - * @Default {1} - */ - width?: number; - } - - export interface LegendFont { - - /** Font family for legend item text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for legend item text. - * @Default {Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight for legend item text. - * @Default {Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Font size for legend item text. - * @Default {12px} - */ - size?: string; - } - - export interface LegendItemStyle { - - /** Height of the shape in legend items. - * @Default {10} - */ - height?: number; - - /** Width of the shape in legend items. - * @Default {10} - */ - width?: number; - } - - export interface LegendLocation { - - /** X value or horizontal offset to position the legend in chart. - * @Default {0} - */ - x?: number; - - /** Y value or vertical offset to position the legend. - * @Default {0} - */ - y?: number; - } - - export interface LegendSize { - - /** Height of the legend. Height can be specified in either pixel or percentage. - * @Default {null} - */ - height?: string; - - /** Width of the legend. Width can be specified in either pixel or percentage. - * @Default {null} - */ - width?: string; - } - - export interface LegendTitleFont { - - /** Font family for the text in legend title. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for legend title. - * @Default {normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight for legend title. - * @Default {normal. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Font size for legend title. - * @Default {12px} - */ - size?: string; - } - - export interface LegendTitle { - - /** Options to customize the font used for legend title - */ - font?: LegendTitleFont; - - /** Enables or disables the legend title. - * @Default {true} - */ - visible?: string; - - /** Text to be displayed in legend title. - */ - text?: string; - - /** Alignment of the legend title. - * @Default {center. See Alignment} - */ - textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment | string; - } - - export interface Legend { - - /** Visibility of the legend. - * @Default {false} - */ - visible?: boolean; - - /** Interactive action of legend items. - * @Default {toggleSegmentVisibility. See Alignment} - */ - clickAction?: ej.datavisualization.Sunburst.SunburstClickAction | string; - - /** Horizontal alignment of the legend. - * @Default {Center. See Alignment} - */ - alignment?: ej.datavisualization.Sunburst.SunburstAlignment | string; - - /** Options for customizing the legend border. - */ - border?: LegendBorder; - - /** Number of columns to arrange the legend items. - * @Default {null} - */ - columnCount?: number; - - /** Number of rows to arrange the legend items. - * @Default {null} - */ - rowCount?: number; - - /** Options to customize the font used for legend item text. - */ - font?: LegendFont; - - /** Gap or padding between the legend items. - * @Default {10} - */ - itemPadding?: number; - - /** Options to customize the style of legend items. - */ - itemStyle?: LegendItemStyle; - - /** Options to customize the location of sunburst legend. Legend is placed in provided location only when value of position property is custom - */ - location?: LegendLocation; - - /** Places the legend at specified position. Legend can be placed at left, right, top or bottom of the chart area.To manually specify the location of legend, set custom as value to this property. - * @Default {Bottom. See Position} - */ - position?: ej.datavisualization.Sunburst.SunburstLegendPosition | string; - - /** Shape of the legend items. - * @Default {None. See Shape} - */ - shape?: ej.datavisualization.Sunburst.SunburstLegendShape | string; - - /** Options to customize the size of the legend. - */ - size?: LegendSize; - - /** Options to customize the legend title. - */ - title?: LegendTitle; - } - - export interface Margin { - - /** Spacing for the left margin of chart area. Setting positive value decreases the width of the chart area from left side. - * @Default {10} - */ - left?: number; - - /** Spacing for the right margin of chart area. Setting positive value decreases the width of the chart area from right side. - * @Default {10} - */ - right?: number; - - /** Spacing for the top margin of chart area. Setting positive value decreases the height of the chart area from the top. - * @Default {10} - */ - top?: number; - - /** Spacing for the bottom margin of the chart area. Setting positive value decreases the height of the chart area from the bottom. - * @Default {10} - */ - bottom?: number; - } - - export interface ZoomSettings { - - /** Enables or disables zooming. - * @Default {false} - */ - enable?: boolean; - - /** Toolbar horizontal alignment - * @Default {right. See Alignment} - */ - toolbarHorizontalAlignment?: ej.datavisualization.Sunburst.SunburstHorizontalAlignment | string; - - /** Toolbar vertical alignment - * @Default {top. See Alignment} - */ - toolbarVerticalAlignment?: ej.datavisualization.Sunburst.SunburstVerticalAlignment | string; - } - } - namespace Sunburst { - enum FontStyle { - //string - Normal, - //string - Italic, - } - } - namespace Sunburst { - enum FontWeight { - //string - Regular, - //string - Bold, - //string - Lighter, - } - } - namespace Sunburst { - enum SunburstLabelRotationMode { - //string - Angle, - //string - Normal, - } - } - namespace Sunburst { - enum SunburstLabelOverflowMode { - //string - Trim, - //string - Hide, - //string - None, - } - } - namespace Sunburst { - enum SunburstAlignment { - //string - Center, - //string - Near, - //string - Far, - } - } - namespace Sunburst { - enum SunburstHighlightMode { - //string - Point, - //string - Parent, - //string - Child, - //string - All, - } - } - namespace Sunburst { - enum SunburstHighlightType { - //string - Opacity, - //string - Color, - } - } - namespace Sunburst { - enum SunburstClickAction { - //string - None, - //string - ToggleSegmentVisibility, - //string - ToggleSegmentSelection, - } - } - namespace Sunburst { - enum SunburstLegendPosition { - //string - Left, - //string - Right, - //string - Top, - //string - Bottom, - } - } - namespace Sunburst { - enum SunburstLegendShape { - //string - Diamond, - //string - Pentagon, - //string - Rectangle, - //string - Circle, - //string - Cross, - //string - Triangle, - } - } - namespace Sunburst { - enum SunburstTheme { - //string - FlatLight, - //string - FlatDark, - } - } - namespace Sunburst { - enum SunburstHorizontalAlignment { - //string - Center, - //string - Left, - //string - Right, - } - } - namespace Sunburst { - enum SunburstVerticalAlignment { - //string - Top, - //string - Bottom, - //string - Middle, - } - } - namespace Sunburst { - enum Animation { - //string - Rotation, - //string - FadeIn, - } - } - - class PivotGrid extends ej.Widget { - static fn: PivotGrid; - constructor(element: JQuery | Element, options?: PivotGrid.Model); - static Locale: any; - model: PivotGrid.Model; - defaults: PivotGrid.Model; - - /** Performs an asynchronous HTTP (AJAX) request. - * @returns {void} - */ - doAjaxPost(): void; - - /** Performs an asynchronous HTTP (FullPost) submit. - * @returns {void} - */ - doPostBack(): void; - - /** Exports the PivotGrid to the specified format. - * @returns {void} - */ - exportPivotGrid(): void; - - /** This function re-renders the PivotGrid on clicking the navigation buttons on PivotPager. - * @returns {void} - */ - refreshPagedPivotGrid(): void; - - /** This function refreshes the PivotGrid with modified data input in client-mode. - * @returns {void} - */ - refreshPivotGrid(): void; - - /** This function re-renders the control with the report available at that instant. - * @returns {void} - */ - refreshControl(): void; - - /** This function returns the height of all rows and width each and every column. - * @returns {any} - */ - calculateCellWidths(): any; - - /** This function creates the conditional formatting dialog to apply conditional formatting for PivotGrid control. - * @returns {void} - */ - createConditionalDialog(): void; - - /** This function saves the current report to the database/local storage. - * @returns {void} - */ - saveReport(): void; - - /** This function loads the specified report from the database/local storage. - * @returns {void} - */ - loadReport(): void; - - /** This function reconstructs the JSON data formed for rendering PivotGrid in excel-like layout format. - * @returns {void} - */ - excelLikeLayout(): void; - - /** Returns the OlapReport string maintained along with the axis elements information. - * @returns {string} - */ - getOlapReport(): string; - - /** Sets the OlapReport string along with the axis information. - * @returns {void} - */ - setOlapReport(): void; - - /** Returns the JSON records formed to render the control. - * @returns {Array} - */ - getJSONRecords(): any[]; - - /** Sets the JSON records formed to render the control. - * @returns {void} - */ - setJSONRecords(): void; - - /** This function allows user to change the caption of the Pivot Item (name displayed in UI) on-demand for relational datasource in client-mode. - * @returns {void} - */ - refreshFieldCaption(): void; - - /** This function receives the JSON formatted datasource to render the PivotGrid control. - * @returns {void} - */ - renderControlFromJSON(): void; - } - export namespace PivotGrid { - - export interface Model { - - /** Sets the mode for the PivotGrid widget for binding either OLAP or relational data source. - * @Default {ej.Pivot.AnalysisMode.Pivot} - */ - analysisMode?: ej.Pivot.AnalysisMode | string; - - /** Specifies the CSS class to PivotGrid to achieve custom theme. - * @Default {“”} - */ - cssClass?: string; - - /** Connects the PivotSchemaDesigner with the specified ID to the PivotGrid Control. - * @Default {“”} - */ - pivotTableFieldListID?: string; - - /** Initializes the data source for the PivotGrid widget, when it functions completely on client-side. - * @Default {{}} - */ - dataSource?: DataSource; - - /** Holds the neccessary properties for value sorting. - * @Default {{}} - */ - valueSortSettings?: ValueSortSettings; - - /** Object that holds the settings of frozen headers. - * @Default {{}} - */ - frozenHeaderSettings?: FrozenHeaderSettings; - - /** Allows user to display header name in PivotGrid control. - * @Default {{}} - */ - headerSettings?: HeaderSettings; - - /** Allows user to show appropriate unique name on Pivot button. - * @Default {false} - */ - showUniqueNameOnPivotButton?: boolean; - - /** Object utilized to pass additional information between client-end and service-end on operating the control in server mode. - * @Default {null} - */ - customObject?: any; - - /** Allows the user to collapsed the specified members in each field by default. - * @Default {null} - */ - collapsedMembers?: any; - - /** Allows the user to access each cell on mouse right-click. - * @Default {false} - */ - enableCellContext?: boolean; - - /** Enables the cell selection for a specific range of value cells. - * @Default {false} - */ - enableCellSelection?: boolean; - - /** Enables the Drill-Through feature which retrieves the raw items that are used to create the specific cell in PivotGrid. - * @Default {false} - */ - enableDrillThrough?: boolean; - - /** Allows user to get the cell details in JSON format on double clicking the cell. - * @Default {false} - */ - enableCellDoubleClick?: boolean; - - /** Allows user to edit the value cells for write-back support in PivotGrid. This is applicable only for server-mode. - * @Default {false} - */ - enableCellEditing?: boolean; - - /** Collapses the Pivot items along rows and columns by default. It works only for relational data source. - * @Default {false} - */ - enableCollapseByDefault?: boolean; - - /** Enables/Disables the display of grand total for all the columns. - * @Default {true} - */ - enableColumnGrandTotal?: boolean; - - /** Allows the user to format a specific set of cells based on the condition. - * @Default {false} - */ - enableConditionalFormatting?: boolean; - - /** Enables the advanced filtering options Value Filtering, Label Filtering and Sorting for each fields in server mode. - * @Default {false} - */ - enableAdvancedFilter?: boolean; - - /** Allows the user to refresh the control on-demand and not during every UI operation. - * @Default {false} - */ - enableDeferUpdate?: boolean; - - /** Enables the display of GroupingBar allowing you to filter, sort and remove fields obtained from datasource. - * @Default {false} - */ - enableGroupingBar?: boolean; - - /** Enables/Disables the display of grand total for rows and columns. - * @Default {true} - */ - enableGrandTotal?: boolean; - - /** Allows the user to load PivotGrid using JSON data. - * @Default {false} - */ - enableJSONRendering?: boolean; - - /** Enables rendering of PivotGrid widget along with the PivotTable Field List, which allows UI operations. - * @Default {true} - */ - enablePivotFieldList?: boolean; - - /** Enables the display of grand total for all the rows. - * @Default {true} - */ - enableRowGrandTotal?: boolean; - - /** Allows the user to view layout of the PivotGrid from right to left. - * @Default {false} - */ - enableRTL?: boolean; - - /** Allows the user to enable ToolTip option. - * @Default {false} - */ - enableToolTip?: boolean; - - /** Allows the user to enable the animation effects in tooltip. - * @Default {false} - */ - enableToolTipAnimation?: boolean; - - /** Allows the user to adjust the width of the columns dynamically. - * @Default {false} - */ - enableColumnResizing?: boolean; - - /** Allows the user to view large amount of data through virtual scrolling. - * @Default {false} - */ - enableVirtualScrolling?: boolean; - - /** Allows the user to view large amount of data by applying paging. - * @Default {false} - */ - enablePaging?: boolean; - - /** Allows the user to configure hyperlink settings of PivotGrid control. - * @Default {{}} - */ - hyperlinkSettings?: HyperlinkSettings; - - /** Allows the user to enable PivotGrid’s responsiveness in the browser layout. - * @Default {false} - */ - isResponsive?: boolean; + export interface DrillDownResetEventArgs { + + /** Drill down reset data + */ + data?: string; - /** Contains the serialized JSON string which renders PivotGrid. - */ - jsonRecords?: string; - - /** Sets the summary layout for PivotGrid.Following are the ways in which summary can be positioned: normal summary (bottom), top summary, no summary and excel-like summary. - * @Default {ej.PivotGrid.Layout.Normal} - */ - layout?: ej.PivotGrid.Layout | string; + /** Set this option to true to cancel the event + */ + cancel?: boolean; + + /** Instance of the sunburst model object + */ + model?: any; + + /** Name of the event + */ + type?: string; + } + + export interface Border { + + /** Border color of the sunburst. + * @Default {null} + */ + color?: string; + + /** Width of the Sunburst border. + * @Default {2} + */ + width?: number; + } + + export interface SegmentBorder { + + /** Segment Border color of the sunburst. + * @Default {null} + */ + color?: string; + + /** Width of the Sunburst segment border. + * @Default {2} + */ + width?: number; + } + + export interface Size { + + /** Height of the Sunburst. + * @Default {''} + */ + height?: string; + + /** Width of the Sunburst. + * @Default {''} + */ + width?: string; + } + + export interface TooltipBorder { + + /** Border color of the tooltip. + * @Default {null} + */ + color?: string; + + /** Border width of the tooltip. + * @Default {5} + */ + width?: number; + } + + export interface TooltipFont { + + /** Font color of the text in the tooltip. + * @Default {null} + */ + color?: string; + + /** Font Family for the tooltip. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the font Style for the tooltip. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Specifies the font weight for the tooltip. + * @Default {Regular} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Opacity for text in the tooltip. + * @Default {1} + */ + opacity?: number; + + /** Font size for text in the tooltip. + * @Default {12px} + */ + size?: string; + } + + export interface Tooltip { + + /** tooltip visibility of the Sunburst. + * @Default {true} + */ + visible?: boolean; + + /** Options for customizing the border of the sunburst tooltip. + */ + border?: TooltipBorder; + + /** Fill color for the sunburst tooltip. + * @Default {null} + */ + fill?: string; + + /** Options for customizing the font of the tooltip. + */ + font?: TooltipFont; + + /** Custom template to the tooltip. + * @Default {null} + */ + template?: string; + + /** Setting the format for the data displayed in the tooltip + * @Default {#point.x# : #point.y#} + */ + format?: string; + + /** Sets the opacity of the dispalyed tooltip + * @Default {0.95} + */ + opacity?: number; + } + + export interface Points { + + /** Points x value of the sunburst. + * @Default {null} + */ + x?: string; + + /** Points y value of the sunburst. + * @Default {null} + */ + y?: number; + + /** Points text of the sunburst. + * @Default {null} + */ + text?: string; + + /** Points fill color of the sunburst. + * @Default {null} + */ + fill?: string; + } + + export interface DataLabelSettingsFont { + + /** Font family of the data label. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the data label. + * @Default {normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight of the data label. + * @Default {regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Opacity of the text. + * @Default {1} + */ + opacity?: number; + + /** Font color of the data label text. + * @Default {null} + */ + color?: string; + + /** Font size of the data label. + * @Default {12px} + */ + size?: string; + } + + export interface DataLabelSettings { + + /** Datalabel visibility of the Sunburst. + * @Default {false} + */ + visible?: boolean; + + /** Alignment of sunburst datalabel + * @Default {Angle. See DatalabelAlignment} + */ + labelRotationMode?: ej.datavisualization.Sunburst.SunburstLabelRotationMode|string; + + /** Options for customizing the data label font. + */ + font?: DataLabelSettingsFont; + + /** Custom template for datalabel + * @Default {null} + */ + template?: string; + + /** Fill color for the datalabel + * @Default {null} + */ + fill?: string; + + /** Datalabel overflow mode + * @Default {Trim. See LabelOverflowMode} + */ + labelOverflowMode?: ej.datavisualization.Sunburst.SunburstLabelOverflowMode|string; + } + + export interface TitleFont { + + /** Font family for Sunburst title. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for Sunburst title. + * @Default {Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight for Sunburst title. + * @Default {Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Opacity of the Sunburst title. + * @Default {1} + */ + opacity?: number; + + /** Font size for Sunburst title. + * @Default {20px} + */ + size?: string; + } + + export interface TitleSubtitleFont { + + /** Font family of sub title. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for sub title. + * @Default {Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight for sub title. + * @Default {Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Opacity of the sub title. + * @Default {1} + */ + opacity?: number; + + /** Font size for sub title. + * @Default {12px} + */ + size?: string; + } + + export interface TitleSubtitle { + + /** Subtitle text for sunburst + */ + text?: string; + + /** Sub title text visibility for sunburst + * @Default {true} + */ + visible?: string; + + /** Sub title text alignment + * @Default {far. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment|string; + + /** Options for customizing the font of sub title. + */ + font?: TitleSubtitleFont; + } + + export interface Title { + + /** Title text for sunburst + */ + text?: string; + + /** Title text visibility for sunburst + * @Default {true} + */ + visible?: string; + + /** Title text alignment + * @Default {center. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment|string; + + /** Options for customizing the font of sunburst title. + */ + font?: TitleFont; + + /** Options to customize the sub title of Sunburst. + */ + subtitle?: TitleSubtitle; + } + + export interface HighlightSettings { + + /** Enables/disables the ability to highlight the levels or point interactively. + * @Default {false} + */ + enable?: boolean; + + /** Specifies whether the levels or point has to be highlighted. + * @Default {point. See Mode} + */ + mode?: ej.datavisualization.Sunburst.SunburstHighlightMode|string; + + /** Color of the levels/point on highlight. + * @Default {red} + */ + color?: string; + + /** Opacity of the levels/point on highlight. + * @Default {0.5} + */ + opacity?: number; + + /** Specifies whether the levels or data point has to be highlighted. + * @Default {opacity. See Mode} + */ + type?: ej.datavisualization.Sunburst.SunburstHighlightType|string; + } + + export interface SelectionSettings { + + /** Enables/disables the ability to select the levels or data point interactively. + * @Default {false} + */ + enable?: boolean; + + /** Specifies whether the levels or data point has to be selected. + * @Default {point. See Mode} + */ + mode?: ej.datavisualization.Sunburst.SunburstHighlightMode|string; + + /** Color of the levels/point on selection. + * @Default {green} + */ + color?: string; + + /** Opacity of the levels/point on selection. + * @Default {0.5} + */ + opacity?: number; + + /** Specifies whether the levels or data point has to be selected. + * @Default {opacity. See Mode} + */ + type?: ej.datavisualization.Sunburst.SunburstHighlightType|string; + } + + export interface Level { + + /** Specifies the group member path + * @Default {null} + */ + groupMemberPath?: string; + } + + export interface LegendBorder { + + /** Border color of the legend. + * @Default {null} + */ + color?: string; + + /** Border width of the legend. + * @Default {1} + */ + width?: number; + } + + export interface LegendFont { + + /** Font family for legend item text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for legend item text. + * @Default {Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight for legend item text. + * @Default {Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Font size for legend item text. + * @Default {12px} + */ + size?: string; + } + + export interface LegendItemStyle { + + /** Height of the shape in legend items. + * @Default {10} + */ + height?: number; + + /** Width of the shape in legend items. + * @Default {10} + */ + width?: number; + } + + export interface LegendLocation { + + /** X value or horizontal offset to position the legend in chart. + * @Default {0} + */ + x?: number; + + /** Y value or vertical offset to position the legend. + * @Default {0} + */ + y?: number; + } + + export interface LegendSize { + + /** Height of the legend. Height can be specified in either pixel or percentage. + * @Default {null} + */ + height?: string; + + /** Width of the legend. Width can be specified in either pixel or percentage. + * @Default {null} + */ + width?: string; + } + + export interface LegendTitleFont { + + /** Font family for the text in legend title. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for legend title. + * @Default {normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight for legend title. + * @Default {normal. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Font size for legend title. + * @Default {12px} + */ + size?: string; + } + + export interface LegendTitle { + + /** Options to customize the font used for legend title + */ + font?: LegendTitleFont; + + /** Enables or disables the legend title. + * @Default {true} + */ + visible?: string; + + /** Text to be displayed in legend title. + */ + text?: string; + + /** Alignment of the legend title. + * @Default {center. See Alignment} + */ + textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment|string; + } + + export interface Legend { + + /** Visibility of the legend. + * @Default {false} + */ + visible?: boolean; + + /** Interactive action of legend items. + * @Default {toggleSegmentVisibility. See Alignment} + */ + clickAction?: ej.datavisualization.Sunburst.SunburstClickAction|string; + + /** Horizontal alignment of the legend. + * @Default {Center. See Alignment} + */ + alignment?: ej.datavisualization.Sunburst.SunburstAlignment|string; + + /** Options for customizing the legend border. + */ + border?: LegendBorder; + + /** Number of columns to arrange the legend items. + * @Default {null} + */ + columnCount?: number; + + /** Number of rows to arrange the legend items. + * @Default {null} + */ + rowCount?: number; + + /** Options to customize the font used for legend item text. + */ + font?: LegendFont; + + /** Gap or padding between the legend items. + * @Default {10} + */ + itemPadding?: number; + + /** Options to customize the style of legend items. + */ + itemStyle?: LegendItemStyle; + + /** Options to customize the location of sunburst legend. Legend is placed in provided location only when value of position property is custom + */ + location?: LegendLocation; + + /** Places the legend at specified position. Legend can be placed at **left**, **right**, **top** or **bottom** of the chart area. To manually specify the location of legend, set + * **custom** as value to this property. + * @Default {Bottom. See Position} + */ + position?: ej.datavisualization.Sunburst.SunburstLegendPosition|string; + + /** Shape of the legend items. + * @Default {None. See Shape} + */ + shape?: ej.datavisualization.Sunburst.SunburstLegendShape|string; + + /** Options to customize the size of the legend. + */ + size?: LegendSize; + + /** Options to customize the legend title. + */ + title?: LegendTitle; + } + + export interface Margin { + + /** Spacing for the left margin of chart area. Setting positive value decreases the width of the chart area from left side. + * @Default {10} + */ + left?: number; + + /** Spacing for the right margin of chart area. Setting positive value decreases the width of the chart area from right side. + * @Default {10} + */ + right?: number; + + /** Spacing for the top margin of chart area. Setting positive value decreases the height of the chart area from the top. + * @Default {10} + */ + top?: number; + + /** Spacing for the bottom margin of the chart area. Setting positive value decreases the height of the chart area from the bottom. + * @Default {10} + */ + bottom?: number; + } + + export interface ZoomSettings { + + /** Enables or disables zooming. + * @Default {false} + */ + enable?: boolean; + + /** Toolbar horizontal alignment + * @Default {right. See Alignment} + */ + toolbarHorizontalAlignment?: ej.datavisualization.Sunburst.SunburstHorizontalAlignment|string; + + /** Toolbar vertical alignment + * @Default {top. See Alignment} + */ + toolbarVerticalAlignment?: ej.datavisualization.Sunburst.SunburstVerticalAlignment|string; + } + } + namespace Sunburst { + enum FontStyle { + //string + Normal, + //string + Italic, + } + } + namespace Sunburst { + enum FontWeight { + //string + Regular, + //string + Bold, + //string + Lighter, + } + } + namespace Sunburst { + enum SunburstLabelRotationMode { + //string + Angle, + //string + Normal, + } + } + namespace Sunburst { + enum SunburstLabelOverflowMode { + //string + Trim, + //string + Hide, + //string + None, + } + } + namespace Sunburst { + enum SunburstAlignment { + //string + Center, + //string + Near, + //string + Far, + } + } + namespace Sunburst { + enum SunburstHighlightMode { + //string + Point, + //string + Parent, + //string + Child, + //string + All, + } + } + namespace Sunburst { + enum SunburstHighlightType { + //string + Opacity, + //string + Color, + } + } + namespace Sunburst { + enum SunburstClickAction { + //string + None, + //string + ToggleSegmentVisibility, + //string + ToggleSegmentSelection, + } + } + namespace Sunburst { + enum SunburstLegendPosition { + //string + Left, + //string + Right, + //string + Top, + //string + Bottom, + } + } + namespace Sunburst { + enum SunburstLegendShape { + //string + Diamond, + //string + Pentagon, + //string + Rectangle, + //string + Circle, + //string + Cross, + //string + Triangle, + } + } + namespace Sunburst { + enum SunburstTheme { + //string + FlatLight, + //string + FlatDark, + } + } + namespace Sunburst { + enum SunburstHorizontalAlignment { + //string + Center, + //string + Left, + //string + Right, + } + } + namespace Sunburst { + enum SunburstVerticalAlignment { + //string + Top, + //string + Bottom, + //string + Middle, + } + } + namespace Sunburst { + enum Animation { + //string + Rotation, + //string + FadeIn, + } + } + + class PivotGrid extends ej.Widget { + static fn: PivotGrid; + constructor(element: JQuery | Element, options?: PivotGrid.Model); + static Locale: any; + model: PivotGrid.Model; + defaults: PivotGrid.Model; + + /** Performs an asynchronous HTTP (AJAX) request. + * @returns {void} + */ + doAjaxPost(): void; + + /** Performs an asynchronous HTTP (FullPost) submit. + * @returns {void} + */ + doPostBack(): void; + + /** Exports the PivotGrid to the specified format. + * @returns {void} + */ + exportPivotGrid(): void; + + /** This function re-renders the PivotGrid on clicking the navigation buttons on PivotPager. + * @returns {void} + */ + refreshPagedPivotGrid(): void; + + /** This function refreshes the PivotGrid with modified data input in client-mode. + * @returns {void} + */ + refreshPivotGrid(): void; + + /** This function re-renders the control with the report available at that instant. + * @returns {void} + */ + refreshControl(): void; + + /** This function returns the height of all rows and width each and every column. + * @returns {any} + */ + calculateCellWidths(): any; + + /** This function creates the conditional formatting dialog to apply conditional formatting for PivotGrid control. + * @returns {void} + */ + createConditionalDialog(): void; + + /** This function saves the current report to the database/local storage. + * @returns {void} + */ + saveReport(): void; + + /** This function loads the specified report from the database/local storage. + * @returns {void} + */ + loadReport(): void; + + /** This function reconstructs the JSON data formed for rendering PivotGrid in excel-like layout format. + * @returns {void} + */ + excelLikeLayout(): void; + + /** Returns the OlapReport string maintained along with the axis elements information. + * @returns {string} + */ + getOlapReport(): string; + + /** Sets the OlapReport string along with the axis information. + * @returns {void} + */ + setOlapReport(): void; + + /** Returns the JSON records formed to render the control. + * @returns {any[]} + */ + getJSONRecords(): any[]; + + /** Sets the JSON records formed to render the control. + * @returns {void} + */ + setJSONRecords(): void; + + /** This function allows user to change the caption of the Pivot Item (name displayed in UI) on-demand for relational datasource in client-mode. + * @returns {void} + */ + refreshFieldCaption(): void; + + /** This function receives the JSON formatted datasource to render the PivotGrid control. + * @returns {void} + */ + renderControlFromJSON(): void; + } + export namespace PivotGrid { + + export interface Model { + + /** Sets the mode for the PivotGrid widget for binding either OLAP or relational data source. + * @Default {ej.Pivot.AnalysisMode.Pivot} + */ + analysisMode?: ej.Pivot.AnalysisMode|string; + + /** Specifies the CSS class to PivotGrid to achieve custom theme. + * @Default {“”} + */ + cssClass?: string; + + /** Connects the PivotSchemaDesigner with the specified ID to the PivotGrid Control. + * @Default {“”} + */ + pivotTableFieldListID?: string; + + /** Initializes the data source for the PivotGrid widget, when it functions completely on client-side. + * @Default {{}} + */ + dataSource?: DataSource; + + /** Holds the necessary properties for value sorting. + * @Default {{}} + */ + valueSortSettings?: ValueSortSettings; + + /** Object that holds the settings of frozen headers. + * @Default {{}} + */ + frozenHeaderSettings?: FrozenHeaderSettings; + + /** Allows user to display header name in PivotGrid control. + * @Default {{}} + */ + headerSettings?: HeaderSettings; + + /** Allows user to show appropriate unique name on Pivot button. + * @Default {false} + */ + showUniqueNameOnPivotButton?: boolean; + + /** Object utilized to pass additional information between client-end and service-end on operating the control in server mode. + * @Default {null} + */ + customObject?: any; + + /** Allows the user to collapsed the specified members in each field by default. + * @Default {null} + */ + collapsedMembers?: any; + + /** Allows the user to access each cell on mouse right-click. + * @Default {false} + */ + enableCellContext?: boolean; + + /** Enables the cell selection for a specific range of value cells. + * @Default {false} + */ + enableCellSelection?: boolean; + + /** Enables the Drill-Through feature which retrieves the raw items that are used to create the specific cell in PivotGrid. + * @Default {false} + */ + enableDrillThrough?: boolean; + + /** Allows user to get the cell details in JSON format on double clicking the cell. + * @Default {false} + */ + enableCellDoubleClick?: boolean; + + /** Allows user to edit the value cells for write-back support in PivotGrid. This is applicable only for server-mode. + * @Default {false} + */ + enableCellEditing?: boolean; + + /** Collapses the Pivot items along rows and columns by default. It works only for relational data source. + * @Default {false} + */ + enableCollapseByDefault?: boolean; + + /** Enables/Disables the display of grand total for all the columns. + * @Default {true} + */ + enableColumnGrandTotal?: boolean; + + /** Allows the user to format a specific set of cells based on the condition. + * @Default {false} + */ + enableConditionalFormatting?: boolean; + + /** Enables the advanced filtering options Value Filtering, Label Filtering and Sorting for each fields in server mode. + * @Default {false} + */ + enableAdvancedFilter?: boolean; + + /** Allows the user to refresh the control on-demand and not during every UI operation. + * @Default {false} + */ + enableDeferUpdate?: boolean; + + /** Enables the display of GroupingBar allowing you to filter, sort and remove fields obtained from datasource. + * @Default {false} + */ + enableGroupingBar?: boolean; + + /** Enables/Disables paging in Member Editor for viewing the large count of members in pages. + * @Default {false} + */ + enableMemberEditorPaging?: boolean; + + /** Allows the user to set the number of members to be displayed in each page of Member Editor on applying paging in it. + * @Default {100} + */ + memberEditorPageSize?: number; + + /** Enables/Disables the display of grand total for rows and columns. + * @Default {true} + */ + enableGrandTotal?: boolean; + + /** Allows the user to load PivotGrid using JSON data. + * @Default {false} + */ + enableJSONRendering?: boolean; + + /** Enables rendering of PivotGrid widget along with the PivotTable Field List, which allows UI operations. + * @Default {true} + */ + enablePivotFieldList?: boolean; + + /** Enables the display of grand total for all the rows. + * @Default {true} + */ + enableRowGrandTotal?: boolean; + + /** Allows the user to view layout of the PivotGrid from right to left. + * @Default {false} + */ + enableRTL?: boolean; + + /** Allows the user to enable ToolTip option. + * @Default {false} + */ + enableToolTip?: boolean; + + /** Allows the user to enable the animation effects in tooltip. + * @Default {false} + */ + enableToolTipAnimation?: boolean; + + /** Allows the user to adjust the width of the columns dynamically. + * @Default {false} + */ + enableColumnResizing?: boolean; + + /** Allows the user to view large amount of data through virtual scrolling. + * @Default {false} + */ + enableVirtualScrolling?: boolean; + + /** Allows the user to view large amount of data by applying paging. + * @Default {false} + */ + enablePaging?: boolean; + + /** Allows the user to configure hyperlink settings of PivotGrid control. + * @Default {{}} + */ + hyperlinkSettings?: HyperlinkSettings; + + /** Allows the user to enable PivotGrid’s responsiveness in the browser layout. + * @Default {false} + */ + isResponsive?: boolean; + + /** Contains the serialized JSON string which renders PivotGrid. + */ + jsonRecords?: string; + + /** Sets the summary layout for PivotGrid.Following are the ways in which summary can be positioned: normal summary (bottom), top summary, no summary and excel-like summary. + * @Default {ej.PivotGrid.Layout.Normal} + */ + layout?: ej.PivotGrid.Layout|string; + + /** Allows the user to set the localized language for the widget. + * @Default {en-US} + */ + locale?: string; + + /** Sets the mode for the PivotGrid widget for binding data source either in server-side or client-side. + * @Default {ej.Pivot.OperationalMode.ClientMode} + */ + operationalMode?: ej.Pivot.OperationalMode|string; + + /** Allows the user to set custom name for the methods at service-end, communicated during AJAX post. + * @Default {{}} + */ + serviceMethodSettings?: ServiceMethodSettings; + + /** Connects the service using the specified URL for any server updates. + * @Default {“”} + */ + url?: string; + + /** Triggers when it reaches client-side after any AJAX request. + */ + afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; + + /** Triggers before any AJAX request is passed from PivotGrid to service methods. + */ + beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; + + /** Triggers before Pivot Engine starts to populate. + */ + beforePivotEnginePopulate?(e: BeforePivotEnginePopulateEventArgs): void; + + /** Triggers when double click action is performed over a cell. + */ + cellDoubleClick?(e: CellDoubleClickEventArgs): void; + + /** Triggers when right-click action is performed on a cell. + */ + cellContext?(e: CellContextEventArgs): void; + + /** Triggers when a specific range of value cells are selected. + */ + cellSelection?(e: CellSelectionEventArgs): void; + + /** Triggers when the hyperlink of column header is clicked. + */ + columnHeaderHyperlinkClick?(e: ColumnHeaderHyperlinkClickEventArgs): void; + + /** Triggers after performing drill operation in PivotGrid. + */ + drillSuccess?(e: DrillSuccessEventArgs): void; + + /** Triggers while clicking "OK" button in the drill-through dialog. + */ + drillThrough?(e: DrillThroughEventArgs): void; + + /** Triggers when PivotGrid loading is initiated. + */ + load?(e: LoadEventArgs): void; + + /** Triggers when PivotGrid widget completes all operations at client-side after any AJAX request. + */ + renderComplete?(e: RenderCompleteEventArgs): void; + + /** Triggers when any error occurred during AJAX request. + */ + renderFailure?(e: RenderFailureEventArgs): void; + + /** Triggers when PivotGrid successfully reaches client-side after any AJAX request. + */ + renderSuccess?(e: RenderSuccessEventArgs): void; + + /** Triggers when the hyperlink of row header is clicked. + */ + rowHeaderHyperlinkClick?(e: RowHeaderHyperlinkClickEventArgs): void; - /** Allows the user to set the localized language for the widget. - * @Default {en-US} - */ - locale?: string; + /** Triggers when the hyperlink of summary cell is clicked. + */ + summaryCellHyperlinkClick?(e: SummaryCellHyperlinkClickEventArgs): void; - /** Sets the mode for the PivotGrid widget for binding data source either in server-side or client-side. - * @Default {ej.Pivot.OperationalMode.ClientMode} - */ - operationalMode?: ej.Pivot.OperationalMode | string; + /** Triggers when the hyperlink of value cell is clicked. + */ + valueCellHyperlinkClick?(e: ValueCellHyperlinkClickEventArgs): void; - /** Allows the user to set custom name for the methods at service-end, communicated during AJAX post. - * @Default {{}} - */ - serviceMethodSettings?: ServiceMethodSettings; + /** Triggers before saving the current report to database. + */ + saveReport?(e: SaveReportEventArgs): void; - /** Connects the service using the specified URL for any server updates. - * @Default {“”} - */ - url?: string; + /** Triggers before loading a report from database. + */ + loadReport?(e: LoadReportEventArgs): void; - /** Triggers when it reaches client-side after any AJAX request. */ - afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; + /** Triggers before performing exporting in pivot grid. + */ + beforeExport?(e: BeforeExportEventArgs): void; - /** Triggers before any AJAX request is passed from PivotGrid to service methods. */ - beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; + /** Triggers before editing the cells. + */ + cellEdit?(e: CellEditEventArgs): void; + } - /** Triggers before Pivot Engine starts to populate. */ - beforePivotEnginePopulate?(e: BeforePivotEnginePopulateEventArgs): void; + export interface AfterServiceInvokeEventArgs { - /** Triggers when double click action is performed over a cell. */ - cellDoubleClick?(e: CellDoubleClickEventArgs): void; + /** returns the current action of PivotGrid control. + */ + action?: string; - /** Triggers when right-click action is performed on a cell. */ - cellContext?(e: CellContextEventArgs): void; + /** returns the custom object bound with PivotGrid control. + */ + customObject?: any; - /** Triggers when a specific range of value cells are selected. */ - cellSelection?(e: CellSelectionEventArgs): void; + /** returns the HTML element of PivotGrid control. + */ + element?: any; + } - /** Triggers when the hyperlink of column header is clicked. */ - columnHeaderHyperlinkClick?(e: ColumnHeaderHyperlinkClickEventArgs): void; + export interface BeforeServiceInvokeEventArgs { - /** Triggers after performing drill operation in PivotGrid. */ - drillSuccess?(e: DrillSuccessEventArgs): void; + /** returns the current action of PivotGrid control. + */ + action?: string; - /** Triggers while clicking "OK" button in the drill-through dialog. */ - drillThrough?(e: DrillThroughEventArgs): void; + /** returns the custom object bound with PivotGrid control. + */ + customObject?: any; - /** Triggers when PivotGrid loading is initiated. */ - load?(e: LoadEventArgs): void; + /** returns the HTML element of PivotGrid control. + */ + element?: any; + } - /** Triggers when PivotGrid widget completes all operations at client-side after any AJAX request. */ - renderComplete?(e: RenderCompleteEventArgs): void; + export interface BeforePivotEnginePopulateEventArgs { - /** Triggers when any error occurred during AJAX request. */ - renderFailure?(e: RenderFailureEventArgs): void; + /** returns the PivotGrid object + */ + pivotGridObject?: any; + } - /** Triggers when PivotGrid successfully reaches client-side after any AJAX request. */ - renderSuccess?(e: RenderSuccessEventArgs): void; + export interface CellDoubleClickEventArgs { - /** Triggers when the hyperlink of row header is clicked. */ - rowHeaderHyperlinkClick?(e: RowHeaderHyperlinkClickEventArgs): void; + /** returns the JSON details of the double clicked cell. + */ + selectedData?: any[]; - /** Triggers when the hyperlink of summary cell is clicked. */ - summaryCellHyperlinkClick?(e: SummaryCellHyperlinkClickEventArgs): void; + /** returns the custom object bound with PivotGrid control. + */ + customObject?: any; - /** Triggers when the hyperlink of value cell is clicked. */ - valueCellHyperlinkClick?(e: ValueCellHyperlinkClickEventArgs): void; + /** returns the HTML element of PivotGrid control. + */ + element?: any; + } - /** Triggers before saving the current report to database. */ - saveReport?(e: SaveReportEventArgs): void; + export interface CellContextEventArgs { - /** Triggers before loading a report from database. */ - loadReport?(e: LoadReportEventArgs): void; + /** returns the cell position (row index and column index) in table. + */ + cellPosition?: string; - /** Triggers before performing exporting in pivot grid. */ - beforeExport?(e: BeforeExportEventArgs): void; + /** returns the type of the cell. + */ + cellType?: string; - /** Triggers before editing the cells. */ - cellEdit?(e: CellEditEventArgs): void; - } + /** returns the content of the cell. + */ + cellValue?: string; - export interface AfterServiceInvokeEventArgs { + /** returns the unique name of levels/members. + */ + uniqueName?: string; - /** returns the current action of PivotGrid control. - */ - action?: string; + /** returns the role of the cell in PivotGrid. + */ + role?: string; - /** returns the custom object bound with PivotGrid control. - */ - customObject?: any; + /** returns JSON record corresponding to the selected cell. + */ + rawdata?: any; - /** returns the HTML element of PivotGrid control. - */ - element?: any; - } + /** returns the original event object. + */ + args?: any; + } - export interface BeforeServiceInvokeEventArgs { + export interface CellSelectionEventArgs { - /** returns the current action of PivotGrid control. - */ - action?: string; + /** returns the JSON records of the selected range of cells. + */ + JSONRecords?: any; - /** returns the custom object bound with PivotGrid control. - */ - customObject?: any; + /** Returns the row headers corresponding to the selected value cells. + */ + rowheader?: any; - /** returns the HTML element of PivotGrid control. - */ - element?: any; - } + /** Returns the column headers corresponding to the selected value cells. + */ + columnheader?: any; - export interface BeforePivotEnginePopulateEventArgs { + /** Returns the information about the measure associated with the selected cell. + */ + measureCount?: string; + } - /** returns the PivotGrid object - */ - pivotGridObject?: any; - } + export interface ColumnHeaderHyperlinkClickEventArgs { - export interface CellDoubleClickEventArgs { + /** returns the information about the clicked cell + */ + args?: any; - /** returns the JSON details of the double clicked cell. - */ - selectedData?: any[]; + /** returns the HTML element of the control. + */ + element?: any; - /** returns the custom object bound with PivotGrid control. - */ - customObject?: any; + /** returns the custom object bound to the control. + */ + customObject?: any; + } - /** returns the HTML element of PivotGrid control. - */ - element?: any; - } + export interface DrillSuccessEventArgs { - export interface CellContextEventArgs { + /** returns the HTML element of the control. + */ + args?: any; + } - /** returns the cell position (row index and column index) in table. - */ - cellPosition?: string; + export interface DrillThroughEventArgs { - /** returns the type of the cell. - */ - cellType?: string; + /** return the JSON records of the generated cells on drill-through operation. + */ + data?: any; - /** returns the content of the cell. - */ - cellValue?: string; + /** returns the HTML element of PivotGrid control. + */ + element?: any; + } - /** returns the unique name of levels/members. - */ - uniqueName?: string; + export interface LoadEventArgs { - /** returns the role of the cell in PivotGrid. - */ - role?: string; + /** returns the custom object bound with the control. + */ + customObject?: any; - /** returns JSON record corresponding to the selected cell. - */ - rawdata?: any; + /** returns the HTML element of PivotGrid control. + */ + element?: any; + } - /** returns the original event object. - */ - args?: any; - } + export interface RenderCompleteEventArgs { - export interface CellSelectionEventArgs { + /** returns the current action of PivotGrid control. + */ + action?: string; - /** returns the JSON records of the selected range of cells. - */ - JSONRecords?: any; + /** returns the custom object bound with the control. + */ + customObject?: any; - /** Returns the row headers corresponding to the selected value cells. - */ - rowheader?: any; + /** returns the HTML element of PivotGrid control. + */ + element?: any; + } - /** Returns the column headers corresponding to the selected value cells. - */ - columnheader?: any; + export interface RenderFailureEventArgs { - /** Returns the information about the measure associated with the selected cell. - */ - measureCount?: string; - } + /** returns the current action of PivotGrid control. + */ + action?: string; - export interface ColumnHeaderHyperlinkClickEventArgs { + /** returns the custom object bound with the control. + */ + customObject?: any; - /** returns the information about the clicked cell - */ - args?: any; + /** returns the HTML element of PivotGrid control. + */ + element?: any; - /** returns the HTML element of the control. - */ - element?: any; + /** returns the error message with error code. + */ + message?: string; + } - /** returns the custom object bound to the control. - */ - customObject?: any; - } + export interface RenderSuccessEventArgs { - export interface DrillSuccessEventArgs { + /** returns the current action of PivotGrid control. + */ + action?: string; - /** returns the HTML element of the control. - */ - args?: any; - } + /** returns the custom object bound with the control. + */ + customObject?: any; - export interface DrillThroughEventArgs { + /** returns the HTML element of PivotGrid control. + */ + element?: any; + } - /** return the JSON records of the generated cells on drill-through operation. - */ - data?: any; + export interface RowHeaderHyperlinkClickEventArgs { - /** returns the HTML element of PivotGrid control. - */ - element?: any; - } + /** returns the information about the clicked cell + */ + args?: any; - export interface LoadEventArgs { + /** returns the HTML element of the control. + */ + element?: any; - /** returns the custom object bound with the control. - */ - customObject?: any; + /** returns the custom object bound to the control. + */ + customObject?: any; + } - /** returns the HTML element of PivotGrid control. - */ - element?: any; - } + export interface SummaryCellHyperlinkClickEventArgs { - export interface RenderCompleteEventArgs { + /** returns the information about the clicked cell + */ + args?: any; - /** returns the current action of PivotGrid control. - */ - action?: string; + /** returns the HTML element of the control. + */ + element?: any; - /** returns the custom object bound with the control. - */ - customObject?: any; + /** returns the custom object bound to the control. + */ + customObject?: any; + } - /** returns the HTML element of PivotGrid control. - */ - element?: any; - } + export interface ValueCellHyperlinkClickEventArgs { - export interface RenderFailureEventArgs { + /** returns the information about the clicked cell + */ + args?: any; - /** returns the current action of PivotGrid control. - */ - action?: string; + /** returns the HTML element of the control. + */ + element?: any; - /** returns the custom object bound with the control. - */ - customObject?: any; + /** returns the custom object bound to the control. + */ + customObject?: any; + } - /** returns the HTML element of PivotGrid control. - */ - element?: any; + export interface SaveReportEventArgs { - /** returns the error message with error code. - */ - message?: string; - } + /** returns the report to be stored in database. + */ + report?: any; + } - export interface RenderSuccessEventArgs { + export interface LoadReportEventArgs { - /** returns the current action of PivotGrid control. - */ - action?: string; + /** returns the PivotGrid object. + */ + targetControl?: any; - /** returns the custom object bound with the control. - */ - customObject?: any; + /** returns whether the control is bound with OLAP or Relational data source. + */ + dataModel?: string; + } - /** returns the HTML element of PivotGrid control. - */ - element?: any; - } + export interface BeforeExportEventArgs { - export interface RowHeaderHyperlinkClickEventArgs { + /** contains the url of the service responsible for exporting. + */ + url?: string; - /** returns the information about the clicked cell - */ - args?: any; + /** contains the name of the exporting file. + */ + fileName?: string; + } - /** returns the HTML element of the control. - */ - element?: any; + export interface CellEditEventArgs { - /** returns the custom object bound to the control. - */ - customObject?: any; - } + /** contains the array of cells selected for editing. + */ + editCellsInfo?: any[]; + } - export interface SummaryCellHyperlinkClickEventArgs { + export interface DataSourceColumnsAdvancedFilter { - /** returns the information about the clicked cell - */ - args?: any; + /** Allows the user to provide level unique name to perform advanced filtering. + */ + name?: string; - /** returns the HTML element of the control. - */ - element?: any; + /** Allows the user to set the operator to perform Label Filtering. + * @Default {none} + */ + labelFilterOperator?: string; - /** returns the custom object bound to the control. - */ - customObject?: any; - } + /** Allows the user to set the operator to perform Value Filtering. + * @Default {none} + */ + valueFilterOperator?: string; - export interface ValueCellHyperlinkClickEventArgs { + /** Allows the user to set the filtering type while performing advanced filtering. + */ + advancedFilterType?: string; - /** returns the information about the clicked cell - */ - args?: any; + /** In case of value filtering, this property contains the measure name to which the filter is applied. + */ + measure?: string; - /** returns the HTML element of the control. - */ - element?: any; + /** Allows the user to hold the filter operand values in advanced filtering. + */ + values?: any[]; + } - /** returns the custom object bound to the control. - */ - customObject?: any; - } + export interface DataSourceColumnsFilterItems { - export interface SaveReportEventArgs { + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; + + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceColumn { - /** returns the report to be stored in database. - */ - report?: any; - } + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; - export interface LoadReportEventArgs { + /** Allows the user to set the display caption for an item. + */ + fieldCaption?: string; + + /** Allows the user to filter the report by default using advanced filtering (excel-like) option for OLAP data source in client-mode. + * @Default {[]} + */ + advancedFilter?: DataSourceColumnsAdvancedFilter[]; + + /** Allows the user to indicate whether the added item is a named set or not. + * @Default {false} + */ + isNamedSets?: boolean; + + /** Shows/Hides the sub-total of the field in PivotGrid. + * @Default {true} + */ + showSubTotal?: boolean; + + /** Allows to set the format for the column headers. + */ + format?: string; + + /** This property sets type of display of date. + */ + formatString?: string; + + /** Allows to set the custom theme for the column headers. + */ + cssClass?: string; + + /** Allows the user to set the sorting order of the members of the field. + * @Default {ej.PivotAnalysis.SortOrder.Ascending} + */ + sortOrder?: ej.PivotAnalysis.SortOrder|string; + + /** Contains the list of members need to be drilled down by default in the field. + * @Default {[]} + */ + drilledItems?: any[]; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceColumnsFilterItems; + } + + export interface DataSourceRowsAdvancedFilter { + + /** Allows the user to provide level unique name to perform advanced filtering. + */ + name?: string; + + /** Allows the user to set the operator to perform Label Filtering. + * @Default {none} + */ + labelFilterOperator?: string; + + /** Allows the user to set the operator to perform Value Filtering. + * @Default {none} + */ + valueFilterOperator?: string; + + /** Allows the user to set the filtering type while performing advanced filtering. + */ + advancedFilterType?: string; + + /** In case of value filtering, this property contains the measure name to which the filter is applied. + */ + measure?: string; + + /** Allows the user to hold the filter operand values in advanced filtering. + */ + values?: any[]; + } + + export interface DataSourceRowsFilterItems { + + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; + + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceRow { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Allows the user to set the display caption for an item. + */ + fieldCaption?: string; + + /** Allows the user to filter the report by default using advanced filtering (excel-like) option for OLAP data source in client-mode. + * @Default {[]} + */ + advancedFilter?: DataSourceRowsAdvancedFilter[]; + + /** Allows the user to indicate whether the added item is a named set or not. + * @Default {false} + */ + isNamedSets?: boolean; + + /** Shows/Hides the sub-total of the field. + * @Default {true} + */ + showSubTotal?: boolean; + + /** Allows to set the format for the row headers. + */ + format?: string; + + /** This property sets type of display of date. + */ + formatString?: string; + + /** Allows to set the custom theme for the row headers. + */ + cssClass?: string; + + /** Allows the user to set the sorting order of the members of the field. + * @Default {ej.PivotAnalysis.SortOrder.Ascending} + */ + sortOrder?: ej.PivotAnalysis.SortOrder|string; + + /** Contains the list of members need to be drilled down by default in the field. + * @Default {[]} + */ + drilledItems?: any[]; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceRowsFilterItems; + } + + export interface DataSourceValuesMeasure { + + /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. + */ + fieldName?: string; + } + + export interface DataSourceValue { + + /** Allows the user to bind the item by using its unique name as field name for Relational datasource. + */ + fieldName?: string; + + /** Allows the user to set the display caption for an item for Relational datasource. + */ + fieldCaption?: string; + + /** This holds the list of unique names of measures to bind them from the OLAP cube. + * @Default {[]} + */ + measures?: DataSourceValuesMeasure[]; + + /** Allows to set the axis name to place the measures items. + * @Default {rows} + */ + axis?: string; + + /** Indicates whether the field is a calculated field or not with Relational datasource. + * @Default {false} + */ + isCalculatedField?: boolean; + + /** Allows to set the type of PivotGrid summary calculation for the value field with Relational datasource. + * @Default {ej.PivotAnalysis.SummaryType.Sum} + */ + summaryType?: ej.PivotAnalysis.SummaryType|string; + + /** Allows to set the format for the values. + */ + format?: string; + + /** This property sets type of display of date. + */ + formatString?: string; + + /** Allows to set the formula for calculation of values for calculated members in Relational datasource. + */ + formula?: string; + + /** Allows to set the custom theme for the values. + */ + cssClass?: string; + } + + export interface DataSourceFiltersFilterItems { + + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; + + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceFilter { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Allows the user to set the display name for an item. + */ + fieldCaption?: string; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceFiltersFilterItems; + } + + export interface DataSourcePagerOptions { + + /** Allows to set the number of categorical columns to be displayed in each page on applying paging. + * @Default {0} + */ + categoricalPageSize?: number; + + /** Allows to set the number of series rows to be displayed in each page on applying paging. + * @Default {0} + */ + seriesPageSize?: number; + + /** Allows to set the page number in categorical axis to be loaded by default. + * @Default {1} + */ + categoricalCurrentPage?: number; + + /** Allows to set the page number in series axis to be loaded by default. + * @Default {1} + */ + seriesCurrentPage?: number; + } + + export interface DataSource { + + /** Lists out the items to be arranged in columns section of PivotGrid. + * @Default {[]} + */ + columns?: DataSourceColumn[]; + + /** Lists out the items to be arranged in rows section of PivotGrid. + * @Default {[]} + */ + rows?: DataSourceRow[]; + + /** Lists out the items which supports calculation in PivotGrid. + * @Default {[]} + */ + values?: DataSourceValue[]; + + /** Lists out the items which supports filtering of values without displaying the members in UI in PivotGrid. + * @Default {[]} + */ + filters?: DataSourceFilter[]; + + /** Contains the respective cube name from OLAP database as string type. + * @Default {“”} + */ + cube?: string; + + /** To set the data source name to fetch data from that. + * @Default {“”} + */ + sourceInfo?: string; + + /** Set the provider name for PivotGrid to identify whether the provider is SSAS or Mondrian. + * @Default {ssas} + */ + providerName?: string; + + /** Provides the raw data source for the PivotGrid. + * @Default {null} + */ + data?: any; + + /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. + * @Default {“”} + */ + catalog?: string; + + /** Allows user to filter the members (by its name and values) through advanced filtering (excel-like) option for OLAP data source in client-mode. + * @Default {false} + */ + enableAdvancedFilter?: boolean; + + /** Sets a name to the report bound to the control. + */ + reportName?: string; + + /** Allows to set the page size and current page number for each axis on applying paging. + * @Default {{}} + */ + pagerOptions?: DataSourcePagerOptions; + } + + export interface ValueSortSettings { + + /** Contains the headers of the specific column to which value sorting is applied. + */ + headerText?: string; + + /** Allows the user to set the string for separating column headers provided in the above property headerText. + */ + headerDelimiters?: string; + + /** Allows the user to set the sorting order of the values of the field. + * @Default {ej.PivotAnalysis.SortOrder.Ascending} + */ + sortOrder?: ej.PivotAnalysis.SortOrder|string; + } + + export interface FrozenHeaderSettings { + + /** Allows the user to freeze the row headers alone on scrolling the horizontal scroll bar. + * @Default {false} + */ + enableFrozenRowHeaders?: boolean; + + /** Allows the user to freeze the column headers alone on scrolling the vertical scroll bar. + * @Default {false} + */ + enableFrozenColumnHeaders?: boolean; + + /** Allows the user to freeze both the row headers and column headers on scrolling. + * @Default {false} + */ + enableFrozenHeaders?: boolean; + + /** Allows user to set the size of the scrollbar (horizontal and vertical) visible in PivotGrid. + * @Default {18} + */ + scrollerSize?: number; + } + + export interface HeaderSettings { + + /** Allows user to enable/disable row header names in PivotGrid control. + * @Default {false} + */ + showRowItems?: boolean; + + /** Allows user to enable/disable column header names in PivotGrid control. + * @Default {false} + */ + showColumnItems?: boolean; + } + + export interface HyperlinkSettings { + + /** Allows the user to enable/disable hyperlink for column header. + * @Default {false} + */ + enableColumnHeaderHyperlink?: boolean; + + /** Allows the user to enable/disable hyperlink for row header. + * @Default {false} + */ + enableRowHeaderHyperlink?: boolean; + + /** Allows the user to enable/disable hyperlink for summary cells. + * @Default {false} + */ + enableSummaryCellHyperlink?: boolean; + + /** Allows the user to enable/disable hyperlink for value cells. + * @Default {false} + */ + enableValueCellHyperlink?: boolean; + } + + export interface ServiceMethodSettings { + + /** Allows the user to set the custom name for the service method responsible for drill up/down operation in PivotGrid. + * @Default {DrillGrid} + */ + drillDown?: string; + + /** Allows the user to set the custom name for the service method responsible for exporting. + * @Default {Export} + */ + exportPivotGrid?: string; + + /** Allows the user to set the custom name for the service method responsible for performing server-side actions on defer update. + * @Default {DeferUpdate} + */ + deferUpdate?: string; + + /** Allows the user to set the custom name for the service method responsible for getting the values for the tree-view inside filter dialog. + * @Default {FetchMembers} + */ + fetchMembers?: string; + + /** Allows the user to set the custom name for the service method responsible for filtering operation in PivotGrid. + * @Default {Filtering} + */ + filtering?: string; + + /** Allows the user to set the custom name for the service method responsible for initializing PivotGrid. + * @Default {InitializeGrid} + */ + initialize?: string; + + /** Allows the user to set the custom name for the service method responsible for the server-side action, on dropping a node from Field List. + * @Default {NodeDropped} + */ + nodeDropped?: string; + + /** Allows the user to set the custom name for the service method responsible for the server-side action on changing the checked state of a node in Field List. + * @Default {NodeStateModified} + */ + nodeStateModified?: string; + + /** Allows the user to set the custom name for the service method responsible for performing paging operation in PivotGrid. + * @Default {Paging} + */ + paging?: string; + + /** Allows the user to set the custom name for the service method responsible for sorting operation in PivotGrid. + * @Default {Sorting} + */ + sorting?: string; + + /** Allows the user to set the custom name for the service method responsible for expanding members inside member editor. + * @Default {MemberExpanded} + */ + memberExpand?: string; + + /** Allows the user to set the custom name for the service method responsible for editing the cells. + * @Default {CellEditing} + */ + cellEditing?: string; + + /** Allows the user to set the custom name for the service method responsible for saving the current report to database. + * @Default {SaveReport} + */ + saveReport?: string; + + /** Allows the user to set the custom name for the service method responsible for loading a report from database. + * @Default {LoadReportFromDB} + */ + loadReport?: string; + + /** Allows the user to set the custom name for the service method responsible for adding a calculated field to the report. + * @Default {CalculatedField} + */ + calculatedField?: string; + + /** Allows the user to set the custom name for the service method responsible for performing drill through operation. + * @Default {DrillThroughHierarchies} + */ + drillThroughHierarchies?: string; + + /** Allows the user to set the custom name for the service method responsible for performing drill through operation in data table. + * @Default {DrillThroughDataTable} + */ + drillThroughDataTable?: string; + + /** Allows the user to set the custom name for the service method responsible for write-back operation in OLAP Cube. This is only applicable in server-side component. + * @Default {WriteBack} + */ + writeBack?: string; + } + + enum Layout { + + ///To set normal summary layout in PivotGrid. + Normal, + + ///To set layout with summaries at the top in PivotGrid. + NormalTopSummary, + + ///To set layout without summaries in PivotGrid. + NoSummaries, + + ///To set excel-like layout in PivotGrid. + ExcelLikeLayout + } + + } + namespace Pivot { + enum AnalysisMode { + //To bind an OLAP data source to PivotGrid. + OLAP, + //To bind a relational data source to PivotGrid. + Pivot, + } + } + namespace PivotAnalysis { + enum SortOrder { + //Sorts the members of the field in ascending order. + Ascending, + //Sorts the members of the field in descending order. + Descending, + //Displays the members without sorting in any order. + None, + } + } + namespace PivotAnalysis { + enum FilterType { + //Excludes the specified values among the members of the field. + Exclude, + //Includes the specified values alone among the members of the field. + Include, + } + } + namespace PivotAnalysis { + enum SummaryType { + //Calculates the summary as the total of all values. + Sum, + //Displays the average of all values as the summaries. + Average, + //Displays the count of items in summaries. + Count, + //Displays the minimum value of all the items in the summary. + Min, + //Displays the maximum value of all the items in the summary. + Max, + } + } + namespace Pivot { + enum OperationalMode { + //To bind data source completely from client-side. + ClientMode, + //To bind data source completely from server-side. + ServerMode, + } + } + + class PivotSchemaDesigner extends ej.Widget { + static fn: PivotSchemaDesigner; + constructor(element: JQuery | Element, options?: PivotSchemaDesigner.Model); + static Locale: any; + model: PivotSchemaDesigner.Model; + defaults: PivotSchemaDesigner.Model; + + /** Performs an asynchronous HTTP (AJAX) request. + * @returns {void} + */ + doAjaxPost(): void; + + /** Re-renders the control with the data source bound to the pivot control at that instant. + * @returns {void} + */ + refreshControl(): void; + } + export namespace PivotSchemaDesigner { + + export interface Model { + + /** Specifies the CSS class to PivotSchemaDesigner to achieve custom theme. + * @Default {“”} + */ + cssClass?: string; + + /** Object utilized to pass additional information between client-end and service-end. + * @Default {{}} + */ + customObject?: any; + + /** For ASP.NET and MVC Wrapper, PivotSchemaDesigner will be initialized and rendered empty initially. Once the connected pivot control widget is rendered completely, + * PivotSchemaDesigner will just be populated with data source by setting this property to “true”. + * @Default {false} + */ + enableWrapper?: boolean; + + /** Allows the user to view PivotTable Field List from right to left. + * @Default {false} + */ + enableRTL?: boolean; + + /** Sets the visibility of OLAP elements in PivotTable Field List. This is only applicable for OLAP datasource. + * @Default {null} + */ + olap?: Olap; + + /** Allows the user to enable/disable drag and drop operations within the PivotTable Field List. + * @Default {true} + */ + enableDragDrop?: boolean; + + /** Sets the height for PivotSchemaDesigner. + * @Default {“”} + */ + height?: string; + + /** Allows the user to set the localized language for the widget. + * @Default {en-US} + */ + locale?: string; + + /** Sets the Pivot control bound with this PivotSchemaDesigner. + * @Default {null} + */ + pivotControl?: any; + + /** Allows the user to set custom name for the methods at service-end, communicated during AJAX post. + * @Default {{}} + */ + serviceMethod?: ServiceMethod; + + /** Connects the service using the specified URL for any server updates. + * @Default {“”} + */ + url?: string; + + /** Sets the width for PivotSchemaDesigner. + * @Default {“”} + */ + width?: string; + + /** Sets the layout for PivotSchemaDesigner. + * @Default {ej.PivotSchemaDesigner.Layouts.Excel} + */ + layout?: ej.PivotSchemaDesigner.Layouts|string; + + /** Triggers when it reaches client-side after any AJAX request. + */ + afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; + + /** Triggers before any AJAX request is passed from PivotSchemaDesigner to service methods. + */ + beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; + + /** Triggers when we start dragging any field from PivotSchemaDesigner. + */ + dragMove?(e: DragMoveEventArgs): void; + } + + export interface AfterServiceInvokeEventArgs { + + /** returns the current action of PivotSchemaDesigner control. + */ + action?: string; + + /** returns the custom object bound with PivotSchemaDesigner control. + */ + customObject?: any; + + /** returns the HTML element of PivotSchemaDesigner control. + */ + element?: any; + } + + export interface BeforeServiceInvokeEventArgs { + + /** returns the current action of PivotSchemaDesigner control. + */ + action?: string; + + /** returns the custom object bound with PivotSchemaDesigner control. + */ + customObject?: any; + + /** returns the HTML element of PivotSchemaDesigner control. + */ + element?: any; + } + + export interface DragMoveEventArgs { + + /** returns the HTML element of the dragged field from PivotSchemaDesigner. + */ + dragTarget?: any; + + /** return the JSON details of the dragged field. + */ + draggedElementData?: any; + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the PivotSchemaDesigner model + */ + model?: any; + } + + export interface Olap { + + /** Allows the user to view the KPI elements in tree-view inside PivotTable Field List. This is only applicable for OLAP datasource. + * @Default {false} + */ + showKPI?: boolean; + + /** Allows the user to view the named sets in tree-view inside PivotTable Field List. This is only applicable for OLAP datasource. + * @Default {false} + */ + showNamedSets?: boolean; + } + + export interface ServiceMethod { + + /** Allows the user to set the custom name for the service method responsible for getting the values for the tree-view inside filter dialog. + * @Default {FetchMembers} + */ + fetchMembers?: string; + + /** Allows the user to set the custom name for the service method responsible for filtering operation in Field List. + * @Default {Filtering} + */ + filtering?: string; + + /** Allows the user to set the custom name for the service method responsible for the server-side action, on expanding members in Field List. + * @Default {MemberExpanded} + */ + memberExpand?: string; + + /** Allows the user to set the custom name for the service method responsible for the server-side action, on dropping a node into Field List. + * @Default {NodeDropped} + */ + nodeDropped?: string; + + /** Allows the user to set the custom name for the service method responsible for the server-side action on changing the checked state of a node in Field List. + * @Default {NodeStateModified} + */ + nodeStateModified?: string; + + /** Allows the user to set the custom name for the service method responsible for button removing operation in Field List. + * @Default {RemoveButton} + */ + removeButton?: string; + } + + enum Layouts { + + ///To set the layout as same in the Excel. + Excel, + + ///To set normal layout for Field List. + Normal, + + ///To set layout with the axes one above the other. + OneByOne + } + + } + + class PivotPager extends ej.Widget { + static fn: PivotPager; + constructor(element: JQuery | Element, options?: PivotPager.Model); + static Locale: any; + model: PivotPager.Model; + defaults: PivotPager.Model; + + /** This function initializes the page counts and page numbers for the PivotPager. + * @returns {void} + */ + initPagerProperties(): void; + } + export namespace PivotPager { + + export interface Model { + + /** Contains the current page number in categorical axis. + * @Default {1} + */ + categoricalCurrentPage?: number; + + /** Contains the total page count in categorical axis. + * @Default {1} + */ + categoricalPageCount?: number; + + /** Allows the user to set the localized language for the widget. + * @Default {en-US} + */ + locale?: string; + + /** Sets the pager mode (Only Categorical Pager/Only Series Pager/Both) for the PivotPager. + * @Default {ej.PivotPager.Mode.Both} + */ + mode?: ej.PivotPager.Mode|string; + + /** Contains the current page number in series axis. + * @Default {1} + */ + seriesCurrentPage?: number; + + /** Contains the total page count in series axis. + * @Default {1} + */ + seriesPageCount?: number; + + /** Contains the ID of the target element for which paging needs to be done. + * @Default {“”} + */ + targetControlID?: string; + } + + enum Mode { + + ///To set both categorical and series pager for paging. + Both, + + ///To set only categorical pager for paging. + Categorical, + + ///To set only series pager for paging. + Series + } + + } + + class PivotChart extends ej.Widget { + static fn: PivotChart; + constructor(element: JQuery | Element, options?: PivotChart.Model); + static Locale: any; + model: PivotChart.Model; + defaults: PivotChart.Model; + + /** Performs an asynchronous HTTP (AJAX) request. + * @returns {void} + */ + doAjaxPost(): void; + + /** Perform an asynchronous HTTP (FullPost) submit. + * @returns {void} + */ + doPostBack(): void; + + /** Exports the PivotChart to the format specified in the parameter. + * @returns {void} + */ + exportPivotChart(): void; + + /** This function renders the PivotChart control with the JSON formatted datasource. + * @returns {void} + */ + renderChartFromJSON(): void; + + /** This function receives the update from service-end, which would be utilized for rendering the widget. + * @returns {void} + */ + renderControlSuccess(): void; + + /** Returns the OlapReport string maintained along with the axis elements information. + * @returns {string} + */ + getOlapReport(): string; + + /** Sets the OlapReport string along with the axis information and maintains it in a property. + * @returns {void} + */ + setOlapReport(): void; + + /** Returns the JSON records formed to render the control. + * @returns {any[]} + */ + getJSONRecords(): any[]; + + /** Sets the JSON records to render the control. + * @returns {void} + */ + setJSONRecords(): void; + + /** Returns the PivotEngine formed to render the control. + * @returns {any[]} + */ + getPivotEngine(): any[]; + + /** Sets the PivotEngine required to render the control. + * @returns {void} + */ + setPivotEngine(): void; + + /** Re-renders the control with the data source at the instant. + * @returns {void} + */ + refreshControl(): void; + + /** Renders the control with the pivot engine obtained from olap cube. + * @returns {void} + */ + generateJSON(): void; + + /** Navigates to the specified page number in specified axis. + * @returns {void} + */ + refreshPagedPivotChart(): void; + } + export namespace PivotChart { + + export interface Model { + + /** Sets the mode for the PivotChart widget for binding either OLAP or Relational data source. + * @Default {ej.Pivot.AnalysisMode.Pivot} + */ + analysisMode?: ej.Pivot.AnalysisMode|string; + + /** Specifies the CSS class to PivotChart to achieve custom theme. + * @Default {“”} + */ + cssClass?: string; + + /** Options for enabling zooming feature of PivotChart. + * @Default {{}} + */ + zooming?: Zooming; + + /** Options available to configure the properties of entire series. You can also override the options for specific series by using series collection. + * @Default {{}} + */ + commonSeriesOptions?: CommonSeriesOptions; + + /** Initializes the data source for the PivotChart widget, when it functions completely on client-side. + * @Default {{}} + */ + dataSource?: DataSource; + + /** Object utilized to pass additional information between client-end and service-end on operating the control in server mode. + * @Default {{}} + */ + customObject?: any; + + /** Allows the user to enable 3D view of PivotChart. + * @Default {false} + */ + enable3D?: boolean; + + /** Allows the user to view PivotChart from right to left. + * @Default {false} + */ + enableRTL?: boolean; + + /** Allows user to render complete PivotChart on drill operation, that is, when expanding and collapsing members which are shown in multi-level labels. + * @Default {false} + */ + enableMultiLevelLabels?: boolean; + + /** Allows the user to enable PivotChart’s responsiveness in the browser layout. + * @Default {false} + */ + isResponsive?: boolean; + + /** Lets the user to customize the legend items and their labels. + * @Default {{}} + */ + legend?: any; + + /** Allows the user to set the localized language for the widget. + * @Default {en-US} + */ + locale?: string; + + /** Sets the mode for the PivotChart widget for binding data source either in server-side or client-side. + * @Default {ej.Pivot.OperationalMode.ClientMode} + */ + operationalMode?: ej.Pivot.OperationalMode|string; + + /** This is a horizontal axis that contains options to configure axis and it is the primary x axis for all the series in series array. To override x axis for particular series, create + * an axis object by providing unique name by using name property and add it to axes array. Then, assign the name to the series’s xAxisName property to link both axis and series. + * @Default {{}} + */ + primaryXAxis?: any; + + /** This is a vertical axis that contains options to configure axis. This is the primary y axis for all the series in series array. To override y axis for particular series, create an + * axis object by providing unique name by using name property and add it to axes array. Then, assign the name to the series’s yAxisName property to link both axis and series. + * @Default {{}} + */ + primaryYAxis?: any; + + /** Allows the user to rotate the angle of PivotChart in 3D view. + * @Default {0} + */ + rotation?: number; + + /** Allows the user to set custom name for the methods at service-end, communicated on AJAX post. + * @Default {{}} + */ + serviceMethodSettings?: ServiceMethodSettings; + + /** Options to customize the size of the PivotChart control. + * @Default {{}} + */ + size?: any; + + /** Connects the service using the specified URL for any server updates on operating the control in server mode. + * @Default {“”} + */ + url?: string; + + /** Triggers when PivotChart starts to render. + */ + load?(e: LoadEventArgs): void; + + /** Triggers when it reaches client-side after any AJAX request. + */ + afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; + + /** Triggers before any AJAX request is passed from PivotChart to service methods. + */ + beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; + + /** Triggers on performing drill up/down in PivotChart control. + */ + drillSuccess?(e: DrillSuccessEventArgs): void; + + /** Triggers when PivotChart widget completes all operations at client-side after any AJAX request. + */ + renderComplete?(e: RenderCompleteEventArgs): void; + + /** Triggers when any error occurred during AJAX request. + */ + renderFailure?(e: RenderFailureEventArgs): void; + + /** Triggers when PivotChart successfully reaches client-side after any AJAX request. + */ + renderSuccess?(e: RenderSuccessEventArgs): void; + + /** Triggers before performing exporting in pivot chart. + */ + beforeExport?(e: BeforeExportEventArgs): void; + } + + export interface LoadEventArgs { + + /** returns the current action of PivotChart control. + */ + action?: string; + + /** returns the custom object bound with PivotChart control. + */ + customObject?: any; + + /** returns the HTML element of PivotChart control. + */ + element?: any; + } + + export interface AfterServiceInvokeEventArgs { + + /** returns the current action of PivotChart control. + */ + action?: string; + + /** returns the custom object bound with PivotChart control. + */ + customObject?: any; - /** returns the PivotGrid object. - */ - targetControl?: any; + /** returns the HTML element of PivotChart control. + */ + element?: any; + } - /** returns whether the control is bound with OLAP or Relational data source. - */ - dataModel?: string; - } + export interface BeforeServiceInvokeEventArgs { - export interface BeforeExportEventArgs { + /** returns the current action of PivotChart control. + */ + action?: string; - /** contains the url of the service responsible for exporting. - */ - url?: string; + /** returns the custom object bound with PivotChart control. + */ + customObject?: any; - /** contains the name of the exporting file. - */ - fileName?: string; - } + /** returns the HTML element of PivotChart control. + */ + element?: any; + } - export interface CellEditEventArgs { + export interface DrillSuccessEventArgs { - /** contains the array of cells selected for editing. - */ - editCellsInfo?: any[]; - } + /** returns the current instance of PivotChart. + */ + chartObj?: any; - export interface DataSourceColumnsAdvancedFilter { + /** returns the drill action of PivotChart. + */ + drillAction?: string; - /** Allows the user to provide level unique name to perform advanced filtering. - */ - name?: string; + /** contains the name of the member drilled. + */ + drilledMember?: string; - /** Allows the user to set the operator to perform Label Filtering. - * @Default {none} - */ - labelFilterOperator?: string; - - /** Allows the user to set the operator to perform Value Filtering. - * @Default {none} - */ - valueFilterOperator?: string; + /** returns the event object. + */ + event?: any; + } - /** Allows the user to set the filtering type while performing advanced filtering. - */ - advancedFilterType?: string; + export interface RenderCompleteEventArgs { - /** In case of value filtering, this property contains the measure name to which the filter is applied. - */ - measure?: string; - - /** Allows the user to hold the filter operand values in advanced filtering. - */ - values?: any[]; - } + /** returns the current action of PivotChart control. + */ + action?: string; - export interface DataSourceColumnsFilterItems { + /** returns the custom object bound with PivotChart control. + */ + customObject?: any; - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; + /** returns the HTML element of PivotChart control. + */ + element?: any; + } - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceColumn { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Allows the user to set the display caption for an item. - */ - fieldCaption?: string; - - /** Allows the user to filter the report by default using advanced filtering (excel-like) option for OLAP data source in client-mode. - * @Default {[]} - */ - advancedFilter?: DataSourceColumnsAdvancedFilter[]; - - /** Allows the user to indicate whether the added item is a named set or not. - * @Default {false} - */ - isNamedSets?: boolean; - - /** Shows/Hides the sub-total of the field in PivotGrid. - * @Default {true} - */ - showSubTotal?: boolean; - - /** Allows the user to set the sorting order of the members of the field. - * @Default {ej.PivotAnalysis.SortOrder.Ascending} - */ - sortOrder?: ej.PivotAnalysis.SortOrder | string; - - /** Contains the list of members need to be drilled down by default in the field. - * @Default {[]} - */ - drilledItems?: any[]; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceColumnsFilterItems; - } - - export interface DataSourceRowsAdvancedFilter { - - /** Allows the user to provide level unique name to perform advanced filtering. - */ - name?: string; - - /** Allows the user to set the operator to perform Label Filtering. - * @Default {none} - */ - labelFilterOperator?: string; - - /** Allows the user to set the operator to perform Value Filtering. - * @Default {none} - */ - valueFilterOperator?: string; - - /** Allows the user to set the filtering type while performing advanced filtering. - */ - advancedFilterType?: string; - - /** In case of value filtering, this property contains the measure name to which the filter is applied. - */ - measure?: string; - - /** Allows the user to hold the filter operand values in advanced filtering. - */ - values?: any[]; - } - - export interface DataSourceRowsFilterItems { - - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; - - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceRow { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Allows the user to set the display caption for an item. - */ - fieldCaption?: string; - - /** Allows the user to filter the report by default using advanced filtering (excel-like) option for OLAP data source in client-mode. - * @Default {[]} - */ - advancedFilter?: DataSourceRowsAdvancedFilter[]; - - /** Allows the user to indicate whether the added item is a named set or not. - * @Default {false} - */ - isNamedSets?: boolean; - - /** Shows/Hides the sub-total of the field. - * @Default {true} - */ - showSubTotal?: boolean; - - /** Allows the user to set the sorting order of the members of the field. - * @Default {ej.PivotAnalysis.SortOrder.Ascending} - */ - sortOrder?: ej.PivotAnalysis.SortOrder | string; - - /** Contains the list of members need to be drilled down by default in the field. - * @Default {[]} - */ - drilledItems?: any[]; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceRowsFilterItems; - } - - export interface DataSourceValuesMeasure { - - /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. - */ - fieldName?: string; - } - - export interface DataSourceValue { - - /** Allows the user to bind the item by using its unique name as field name for Relational datasource. - */ - fieldName?: string; - - /** Allows the user to set the display caption for an item for Relational datasource. - */ - fieldCaption?: string; - - /** This holds the list of unique names of measures to bind them from the OLAP cube. - * @Default {[]} - */ - measures?: DataSourceValuesMeasure[]; - - /** Allows to set the axis name to place the measures items. - * @Default {rows} - */ - axis?: string; - - /** Indicates whether the field is a calculated field or not with Relational datasource. - * @Default {false} - */ - isCalculatedField?: boolean; - - /** Allows to set the type of PivotGrid summary calculation for the value field with Relational datasource. - * @Default {ej.PivotAnalysis.SummaryType.Sum} - */ - summaryType?: ej.PivotAnalysis.SummaryType | string; - - /** Allows to set the format of the values. - */ - format?: string; - - /** This property sets type of display of date. - */ - formatString?: string; - - /** Allows to set the formula for calculation of values for calculated members in Relational datasource. - */ - formula?: string; - } - - export interface DataSourceFiltersFilterItems { - - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; - - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceFilter { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Allows the user to set the display name for an item. - */ - fieldCaption?: string; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceFiltersFilterItems; - } - - export interface DataSourcePagerOptions { - - /** Allows to set the number of categorical columns to be displayed in each page on applying paging. - * @Default {0} - */ - categoricalPageSize?: number; - - /** Allows to set the number of series rows to be displayed in each page on applying paging. - * @Default {0} - */ - seriesPageSize?: number; - - /** Allows to set the page number in categorical axis to be loaded by default. - * @Default {1} - */ - categoricalCurrentPage?: number; - - /** Allows to set the page number in series axis to be loaded by default. - * @Default {1} - */ - seriesCurrentPage?: number; - } - - export interface DataSource { - - /** Lists out the items to be arranged in columns section of PivotGrid. - * @Default {[]} - */ - columns?: DataSourceColumn[]; - - /** Lists out the items to be arranged in rows section of PivotGrid. - * @Default {[]} - */ - rows?: DataSourceRow[]; - - /** Lists out the items which supports calculation in PivotGrid. - * @Default {[]} - */ - values?: DataSourceValue[]; - - /** Lists out the items which supports filtering of values without displaying the members in UI in PivotGrid. - * @Default {[]} - */ - filters?: DataSourceFilter[]; - - /** Contains the respective cube name from OLAP database as string type. - * @Default {“”} - */ - cube?: string; - - /** Provides the raw data source for the PivotGrid. - * @Default {null} - */ - data?: any; - - /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. - * @Default {“”} - */ - catalog?: string; - - /** Allows user to filter the members (by its name and values) through advanced filtering (excel-like) option for OLAP data source in client-mode. - * @Default {false} - */ - enableAdvancedFilter?: boolean; - - /** Sets a name to the report bound to the control. - */ - reportName?: string; - - /** Allows to set the page size and current page number for each axis on applying paging. - * @Default {{}} - */ - pagerOptions?: DataSourcePagerOptions; - } - - export interface ValueSortSettings { - - /** Contains the headers of the specific column to which value sorting is applied. - */ - headerText?: string; - - /** Allows the user to set the string for separating column headers provided in the above property headerText. - */ - headerDelimiters?: string; - - /** Allows the user to set the sorting order of the values of the field. - * @Default {ej.PivotAnalysis.SortOrder.Ascending} - */ - sortOrder?: ej.PivotAnalysis.SortOrder | string; - } - - export interface FrozenHeaderSettings { - - /** Allows the user to freeze the row headers alone on scrolling the horizontal scroll bar. - * @Default {false} - */ - enableFrozenRowHeaders?: boolean; - - /** Allows the user to freeze the column headers alone on scrolling the vertical scroll bar. - * @Default {false} - */ - enableFrozenColumnHeaders?: boolean; - - /** Allows the user to freeze both the row headers and column headers on scrolling. - * @Default {false} - */ - enableFrozenHeaders?: boolean; - - /** Allows user to set the size of the scrollbar (horizontal and vertical) visible in PivotGrid. - * @Default {18} - */ - scrollerSize?: number; - } - - export interface HeaderSettings { - - /** Allows user to enable/disable row header names in PivotGrid control. - * @Default {false} - */ - showRowItems?: boolean; - - /** Allows user to enable/disable column header names in PivotGrid control. - * @Default {false} - */ - showColumnItems?: boolean; - } - - export interface HyperlinkSettings { - - /** Allows the user to enable/disable hyperlink for column header. - * @Default {false} - */ - enableColumnHeaderHyperlink?: boolean; - - /** Allows the user to enable/disable hyperlink for row header. - * @Default {false} - */ - enableRowHeaderHyperlink?: boolean; - - /** Allows the user to enable/disable hyperlink for summary cells. - * @Default {false} - */ - enableSummaryCellHyperlink?: boolean; - - /** Allows the user to enable/disable hyperlink for value cells. - * @Default {false} - */ - enableValueCellHyperlink?: boolean; - } - - export interface ServiceMethodSettings { - - /** Allows the user to set the custom name for the service method responsible for drill up/down operation in PivotGrid. - * @Default {DrillGrid} - */ - drillDown?: string; - - /** Allows the user to set the custom name for the service method responsible for exporting. - * @Default {Export} - */ - exportPivotGrid?: string; - - /** Allows the user to set the custom name for the service method responsible for performing server-side actions on defer update. - * @Default {DeferUpdate} - */ - deferUpdate?: string; - - /** Allows the user to set the custom name for the service method responsible for getting the values for the tree-view inside filter dialog. - * @Default {FetchMembers} - */ - fetchMembers?: string; - - /** Allows the user to set the custom name for the service method responsible for filtering operation in PivotGrid. - * @Default {Filtering} - */ - filtering?: string; - - /** Allows the user to set the custom name for the service method responsible for initializing PivotGrid. - * @Default {InitializeGrid} - */ - initialize?: string; - - /** Allows the user to set the custom name for the service method responsible for the server-side action, on dropping a node from Field List. - * @Default {NodeDropped} - */ - nodeDropped?: string; - - /** Allows the user to set the custom name for the service method responsible for the server-side action on changing the checked state of a node in Field List. - * @Default {NodeStateModified} - */ - nodeStateModified?: string; - - /** Allows the user to set the custom name for the service method responsible for performing paging operation in PivotGrid. - * @Default {Paging} - */ - paging?: string; - - /** Allows the user to set the custom name for the service method responsible for sorting operation in PivotGrid. - * @Default {Sorting} - */ - sorting?: string; - - /** Allows the user to set the custom name for the service method responsible for expanding members inside member editor. - * @Default {MemberExpanded} - */ - memberExpand?: string; - - /** Allows the user to set the custom name for the service method responsible for editing the cells. - * @Default {CellEditing} - */ - cellEditing?: string; - - /** Allows the user to set the custom name for the service method responsible for saving the current report to database. - * @Default {SaveReport} - */ - saveReport?: string; - - /** Allows the user to set the custom name for the service method responsible for loading a report from database. - * @Default {LoadReportFromDB} - */ - loadReport?: string; - - /** Allows the user to set the custom name for the service method responsible for adding a calculated field to the report. - * @Default {CalculatedField} - */ - calculatedField?: string; - - /** Allows the user to set the custom name for the service method responsible for performing drill through operation. - * @Default {DrillThroughHierarchies} - */ - drillThroughHierarchies?: string; - - /** Allows the user to set the custom name for the service method responsible for performing drill through operation in data table. - * @Default {DrillThroughDataTable} - */ - drillThroughDataTable?: string; - - /** Allows the user to set the custom name for the service method responsible for write-back operation in OLAP Cube. This is only applicable in server-side component. - * @Default {WriteBack} - */ - writeBack?: string; - } - - enum Layout { - - ///To set normal summary layout in PivotGrid. - Normal, - - ///To set layout with summaries at the top in PivotGrid. - NormalTopSummary, - - ///To set layout without summaries in PivotGrid. - NoSummaries, - - ///To set excel-like layout in PivotGrid. - ExcelLikeLayout - } - - } - namespace Pivot { - enum AnalysisMode { - //To bind an OLAP data source to PivotGrid. - OLAP, - //To bind a relational data source to PivotGrid. - Pivot, - } - } - namespace PivotAnalysis { - enum SortOrder { - //Sorts the members of the field in ascending order. - Ascending, - //Sorts the members of the field in descending order. - Descending, - //Displays the members without sorting in any order. - None, - } - } - namespace PivotAnalysis { - enum FilterType { - //Excludes the specified values among the members of the field. - Exclude, - //Includes the specified values alone among the members of the field. - Include, - } - } - namespace PivotAnalysis { - enum SummaryType { - //Calculates the summary as the total of all values. - Sum, - //Displays the average of all values as the summaries. - Average, - //Displays the count of items in summaries. - Count, - //Displays the minimum value of all the items in the summary. - Min, - //Displays the maximum value of all the items in the summary. - Max, - } - } - namespace Pivot { - enum OperationalMode { - //To bind data source completely from client-side. - ClientMode, - //To bind data source completely from server-side. - ServerMode, - } - } - - class PivotSchemaDesigner extends ej.Widget { - static fn: PivotSchemaDesigner; - constructor(element: JQuery | Element, options?: PivotSchemaDesigner.Model); - static Locale: any; - model: PivotSchemaDesigner.Model; - defaults: PivotSchemaDesigner.Model; - - /** Performs an asynchronous HTTP (AJAX) request. - * @returns {void} - */ - doAjaxPost(): void; - - /** Re-renders the control with the data source bound to the pivot control at that instant. - * @returns {void} - */ - refreshControl(): void; - } - export namespace PivotSchemaDesigner { - - export interface Model { - - /** Specifies the CSS class to PivotSchemaDesigner to achieve custom theme. - * @Default {“”} - */ - cssClass?: string; - - /** Object utilized to pass additional information between client-end and service-end. - * @Default {{}} - */ - customObject?: any; - - /** For ASP.NET and MVC Wrapper, PivotSchemaDesigner will be initialized and rendered empty initially. Once the connected pivot control widget is rendered completely, - * PivotSchemaDesigner will just be populated with data source by setting this property to “true”. - * @Default {false} - */ - enableWrapper?: boolean; - - /** Allows the user to view PivotTable Field List from right to left. - * @Default {false} - */ - enableRTL?: boolean; - - /** Sets the visibility of OLAP elements in PivotTable Field List. This is only applicable for OLAP datasource. - * @Default {null} - */ - olap?: Olap; - - /** Allows the user to enable/disable drag and drop operations within the PivotTable Field List. - * @Default {true} - */ - enableDragDrop?: boolean; - - /** Sets the height for PivotSchemaDesigner. - * @Default {“”} - */ - height?: string; - - /** Allows the user to set the localized language for the widget. - * @Default {en-US} - */ - locale?: string; - - /** Sets the Pivot control bound with this PivotSchemaDesigner. - * @Default {null} - */ - pivotControl?: any; - - /** Allows the user to set custom name for the methods at service-end, communicated during AJAX post. - * @Default {{}} - */ - serviceMethod?: ServiceMethod; - - /** Connects the service using the specified URL for any server updates. - * @Default {“”} - */ - url?: string; - - /** Sets the width for PivotSchemaDesigner. - * @Default {“”} - */ - width?: string; - - /** Sets the layout for PivotSchemaDesigner. - * @Default {ej.PivotSchemaDesigner.Layouts.Excel} - */ - layout?: ej.PivotSchemaDesigner.Layouts | string; - - /** Triggers when it reaches client-side after any AJAX request. */ - afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; - - /** Triggers before any AJAX request is passed from PivotSchemaDesigner to service methods. */ - beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; - - /** Triggers when we start dragging any field from PivotSchemaDesigner. */ - dragMove?(e: DragMoveEventArgs): void; - } - - export interface AfterServiceInvokeEventArgs { - - /** returns the current action of PivotSchemaDesigner control. - */ - action?: string; - - /** returns the custom object bound with PivotSchemaDesigner control. - */ - customObject?: any; - - /** returns the HTML element of PivotSchemaDesigner control. - */ - element?: any; - } - - export interface BeforeServiceInvokeEventArgs { - - /** returns the current action of PivotSchemaDesigner control. - */ - action?: string; - - /** returns the custom object bound with PivotSchemaDesigner control. - */ - customObject?: any; - - /** returns the HTML element of PivotSchemaDesigner control. - */ - element?: any; - } - - export interface DragMoveEventArgs { - - /** returns the HTML element of the dragged field from PivotSchemaDesigner. - */ - dragTarget?: any; - - /** return the JSON details of the dragged field. - */ - draggedElementData?: any; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the PivotSchemaDesigner model - */ - model?: any; - } - - export interface Olap { - - /** Allows the user to view the KPI elements in tree-view inside PivotTable Field List. This is only applicable for OLAP datasource. - * @Default {false} - */ - showKPI?: boolean; - - /** Allows the user to view the named sets in tree-view inside PivotTable Field List. This is only applicable for OLAP datasource. - * @Default {false} - */ - showNamedSets?: boolean; - } - - export interface ServiceMethod { - - /** Allows the user to set the custom name for the service method responsible for getting the values for the tree-view inside filter dialog. - * @Default {FetchMembers} - */ - fetchMembers?: string; - - /** Allows the user to set the custom name for the service method responsible for filtering operation in Field List. - * @Default {Filtering} - */ - filtering?: string; - - /** Allows the user to set the custom name for the service method responsible for the server-side action, on expanding members in Field List. - * @Default {MemberExpanded} - */ - memberExpand?: string; - - /** Allows the user to set the custom name for the service method responsible for the server-side action, on dropping a node into Field List. - * @Default {NodeDropped} - */ - nodeDropped?: string; - - /** Allows the user to set the custom name for the service method responsible for the server-side action on changing the checked state of a node in Field List. - * @Default {NodeStateModified} - */ - nodeStateModified?: string; - - /** Allows the user to set the custom name for the service method responsible for button removing operation in Field List. - * @Default {RemoveButton} - */ - removeButton?: string; - } - - enum Layouts { - - ///To set the layout as same in the Excel. - Excel, - - ///To set normal layout for Field List. - Normal, - - ///To set layout with the axes one above the other. - OneByOne - } - - } - - class PivotPager extends ej.Widget { - static fn: PivotPager; - constructor(element: JQuery | Element, options?: PivotPager.Model); - static Locale: any; - model: PivotPager.Model; - defaults: PivotPager.Model; - - /** This function initializes the page counts and page numbers for the PivotPager. - * @returns {void} - */ - initPagerProperties(): void; - } - export namespace PivotPager { - - export interface Model { - - /** Contains the current page number in categorical axis. - * @Default {1} - */ - categoricalCurrentPage?: number; - - /** Contains the total page count in categorical axis. - * @Default {1} - */ - categoricalPageCount?: number; - - /** Allows the user to set the localized language for the widget. - * @Default {en-US} - */ - locale?: string; - - /** Sets the pager mode (Only Categorical Pager/Only Series Pager/Both) for the PivotPager. - * @Default {ej.PivotPager.Mode.Both} - */ - mode?: ej.PivotPager.Mode | string; - - /** Contains the current page number in series axis. - * @Default {1} - */ - seriesCurrentPage?: number; - - /** Contains the total page count in series axis. - * @Default {1} - */ - seriesPageCount?: number; - - /** Contains the ID of the target element for which paging needs to be done. - * @Default {“”} - */ - targetControlID?: string; - } - - enum Mode { - - ///To set both categorical and series pager for paging. - Both, - - ///To set only categorical pager for paging. - Categorical, - - ///To set only series pager for paging. - Series - } - - } - - class PivotChart extends ej.Widget { - static fn: PivotChart; - constructor(element: JQuery | Element, options?: PivotChart.Model); - static Locale: any; - model: PivotChart.Model; - defaults: PivotChart.Model; - - /** Performs an asynchronous HTTP (AJAX) request. - * @returns {void} - */ - doAjaxPost(): void; - - /** Perform an asynchronous HTTP (FullPost) submit. - * @returns {void} - */ - doPostBack(): void; - - /** Exports the PivotChart to the format specified in the parameter. - * @returns {void} - */ - exportPivotChart(): void; - - /** This function renders the PivotChart control with the JSON formatted datasource. - * @returns {void} - */ - renderChartFromJSON(): void; - - /** This function receives the update from service-end, which would be utilized for rendering the widget. - * @returns {void} - */ - renderControlSuccess(): void; - - /** Returns the OlapReport string maintained along with the axis elements information. - * @returns {string} - */ - getOlapReport(): string; - - /** Sets the OlapReport string along with the axis information and maintains it in a property. - * @returns {void} - */ - setOlapReport(): void; - - /** Returns the JSON records formed to render the control. - * @returns {Array} - */ - getJSONRecords(): any[]; - - /** Sets the JSON records to render the control. - * @returns {void} - */ - setJSONRecords(): void; - - /** Returns the PivotEngine formed to render the control. - * @returns {Array} - */ - getPivotEngine(): any[]; - - /** Sets the PivotEngine required to render the control. - * @returns {void} - */ - setPivotEngine(): void; - - /** Re-renders the control with the data source at the instant. - * @returns {void} - */ - refreshControl(): void; - - /** Renders the control with the pivot engine obtained from olap cube. - * @returns {void} - */ - generateJSON(): void; - - /** Navigates to the specified page number in specified axis. - * @returns {void} - */ - refreshPagedPivotChart(): void; - } - export namespace PivotChart { - - export interface Model { - - /** Sets the mode for the PivotChart widget for binding either OLAP or Relational data source. - * @Default {ej.Pivot.AnalysisMode.Pivot} - */ - analysisMode?: ej.Pivot.AnalysisMode | string; - - /** Specifies the CSS class to PivotChart to achieve custom theme. - * @Default {“”} - */ - cssClass?: string; - - /** Options for enabling zooming feature of PivotChart. - * @Default {{}} - */ - zooming?: Zooming; - - /** Options available to configure the properties of entire series. You can also override the options for specific series by using series collection. - * @Default {{}} - */ - commonSeriesOptions?: CommonSeriesOptions; - - /** Initializes the data source for the PivotChart widget, when it functions completely on client-side. - * @Default {{}} - */ - dataSource?: DataSource; - - /** Object utilized to pass additional information between client-end and service-end on operating the control in server mode. - * @Default {{}} - */ - customObject?: any; - - /** Allows the user to enable 3D view of PivotChart. - * @Default {false} - */ - enable3D?: boolean; - - /** Allows the user to view PivotChart from right to left. - * @Default {false} - */ - enableRTL?: boolean; - - /** Allows user to render complete PivotChart on drill operation, that is, when expanding and collapsing members which are shown in multi-level labels. - * @Default {false} - */ - enableMultiLevelLabels?: boolean; - - /** Allows the user to enable PivotChart’s responsiveness in the browser layout. - * @Default {false} - */ - isResponsive?: boolean; - - /** Lets the user to customize the legend items and their labels. - * @Default {{}} - */ - legend?: any; - - /** Allows the user to set the localized language for the widget. - * @Default {en-US} - */ - locale?: string; - - /** Sets the mode for the PivotChart widget for binding data source either in server-side or client-side. - * @Default {ej.Pivot.OperationalMode.ClientMode} - */ - operationalMode?: ej.Pivot.OperationalMode | string; - - /** This is a horizontal axis that contains options to configure axis and it is the primary x axis for all the series in series array. - * To override x axis for particular series, create an axis object by providing unique name by using name property and add it to axes array. - * Then, assign the name to the series’s xAxisName property to link both axis and series. - * @Default {{}} - */ - primaryXAxis?: any; - - /** This is a vertical axis that contains options to configure axis. This is the primary y axis for all the series in series array. - * To override y axis for particular series, create an axis object by providing unique name by using name property and add it to axes array. - * Then, assign the name to the series’s yAxisName property to link both axis and series. - * @Default {{}} - */ - primaryYAxis?: any; - - /** Allows the user to rotate the angle of PivotChart in 3D view. - * @Default {0} - */ - rotation?: number; - - /** Allows the user to set custom name for the methods at service-end, communicated on AJAX post. - * @Default {{}} - */ - serviceMethodSettings?: ServiceMethodSettings; - - /** Options to customize the size of the PivotChart control. - * @Default {{}} - */ - size?: any; - - /** Connects the service using the specified URL for any server updates on operating the control in server mode. - * @Default {“”} - */ - url?: string; - - /** Triggers when PivotChart starts to render. */ - load?(e: LoadEventArgs): void; - - /** Triggers when it reaches client-side after any AJAX request. */ - afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; - - /** Triggers before any AJAX request is passed from PivotChart to service methods. */ - beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; - - /** Triggers on performing drill up/down in PivotChart control. */ - drillSuccess?(e: DrillSuccessEventArgs): void; - - /** Triggers when PivotChart widget completes all operations at client-side after any AJAX request. */ - renderComplete?(e: RenderCompleteEventArgs): void; - - /** Triggers when any error occurred during AJAX request. */ - renderFailure?(e: RenderFailureEventArgs): void; - - /** Triggers when PivotChart successfully reaches client-side after any AJAX request. */ - renderSuccess?(e: RenderSuccessEventArgs): void; - - /** Triggers before performing exporting in pivot chart. */ - beforeExport?(e: BeforeExportEventArgs): void; - } + export interface RenderFailureEventArgs { - export interface LoadEventArgs { - - /** returns the current action of PivotChart control. - */ - action?: string; + /** returns the current action of PivotChart control. + */ + action?: string; - /** returns the custom object bound with PivotChart control. - */ - customObject?: any; + /** returns the custom object bound with PivotChart control. + */ + customObject?: any; - /** returns the HTML element of PivotChart control. - */ - element?: any; - } + /** returns the HTML element of PivotChart control. + */ + element?: any; - export interface AfterServiceInvokeEventArgs { + /** returns the error stack trace of the original exception. + */ + message?: string; + } - /** returns the current action of PivotChart control. - */ - action?: string; + export interface RenderSuccessEventArgs { - /** returns the custom object bound with PivotChart control. - */ - customObject?: any; + /** returns the current instance of PivotChart. + */ + args?: any; + } - /** returns the HTML element of PivotChart control. - */ - element?: any; - } + export interface BeforeExportEventArgs { - export interface BeforeServiceInvokeEventArgs { + /** contains the url of the service responsible for exporting. + */ + url?: string; - /** returns the current action of PivotChart control. - */ - action?: string; + /** contains the name of the exporting file. + */ + fileName?: string; + } - /** returns the custom object bound with PivotChart control. - */ - customObject?: any; + export interface Zooming { - /** returns the HTML element of PivotChart control. - */ - element?: any; - } + /** Enables or disables horizontal scrollbar. + * @Default {false} + */ + enableScrollbar?: boolean; + } - export interface DrillSuccessEventArgs { + export interface CommonSeriesOptions { - /** returns the current instance of PivotChart. - */ - chartObj?: any; + /** Allows the user to set the specific chart type for PivotChart widget. + * @Default {ej.PivotChart.ChartTypes.Column} + */ + type?: ej.PivotChart.ChartTypes|string; + } - /** returns the drill action of PivotChart. - */ - drillAction?: string; + export interface DataSourceColumnsFilterItems { - /** contains the name of the member drilled. - */ - drilledMember?: string; + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; - /** returns the event object. - */ - event?: any; - } + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } - export interface RenderCompleteEventArgs { + export interface DataSourceColumn { - /** returns the current action of PivotChart control. - */ - action?: string; + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; - /** returns the custom object bound with PivotChart control. - */ - customObject?: any; + /** Allows the user to set the display caption for an item. + */ + fieldCaption?: string; - /** returns the HTML element of PivotChart control. - */ - element?: any; - } + /** Allows the user to indicate whether the added item is a named set or not. + * @Default {false} + */ + isNamedSets?: boolean; + + /** Allows the user to set the sorting order of the members of the field. + * @Default {ej.PivotAnalysis.SortOrder.Ascending} + */ + sortOrder?: ej.PivotAnalysis.SortOrder|string; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceColumnsFilterItems; + } + + export interface DataSourceRowsFilterItems { + + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; + + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceRow { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Allows the user to set the display caption for an item. + */ + fieldCaption?: string; + + /** Allows the user to indicate whether the added item is a named set or not. + * @Default {false} + */ + isNamedSets?: boolean; + + /** Allows the user to set the sorting order of the members of the field. + * @Default {ej.PivotAnalysis.SortOrder.Ascending} + */ + sortOrder?: ej.PivotAnalysis.SortOrder|string; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceRowsFilterItems; + } + + export interface DataSourceValuesMeasure { + + /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. + */ + fieldName?: string; + } + + export interface DataSourceValue { + + /** Allows the user to bind the item by using its unique name as field name for Relational datasource. + */ + fieldName?: string; + + /** Allows the user to set the display caption for an item for Relational datasource. + */ + fieldCaption?: string; + + /** This holds the list of unique names of measures to bind them from the OLAP cube. + * @Default {[]} + */ + measures?: DataSourceValuesMeasure[]; + + /** Allows to set the axis name to place the measures items. + * @Default {rows} + */ + axis?: string; + + /** Indicates whether the field is a calculated field or not with Relational datasource. + * @Default {false} + */ + isCalculatedField?: boolean; + + /** Allows to set the formula for calculation of values for calculated members in Relational datasource. + */ + formula?: string; + } + + export interface DataSourceFiltersFilterItems { + + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; + + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceFilter { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceFiltersFilterItems; + } + + export interface DataSource { + + /** Contains the respective cube name from OLAP database as string type. + * @Default {“”} + */ + cube?: string; + + /** To set the data source name to fetch data from that. + * @Default {“”} + */ + sourceInfo?: string; - export interface RenderFailureEventArgs { + /** Set the provider name for PivotChart to identify whether the provider is SSAS or Mondrian. + * @Default {ssas} + */ + providerName?: string; - /** returns the current action of PivotChart control. - */ - action?: string; + /** Provides the raw data source for the PivotChart. + * @Default {null} + */ + data?: any; - /** returns the custom object bound with PivotChart control. - */ - customObject?: any; + /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. + * @Default {“”} + */ + catalog?: string; - /** returns the HTML element of PivotChart control. - */ - element?: any; + /** Lists out the items to be displayed as series of PivotChart. + * @Default {[]} + */ + columns?: DataSourceColumn[]; - /** returns the error stack trace of the original exception. - */ - message?: string; - } + /** Lists out the items to be displayed as segments of PivotChart. + * @Default {[]} + */ + rows?: DataSourceRow[]; - export interface RenderSuccessEventArgs { + /** Lists out the items supports calculation in PivotChart. + * @Default {[]} + */ + values?: DataSourceValue[]; - /** returns the current instance of PivotChart. - */ - args?: any; - } + /** Lists out the items which supports filtering of values without displaying the members in UI in PivotChart. + * @Default {[]} + */ + filters?: DataSourceFilter[]; + } + + export interface ServiceMethodSettings { - export interface BeforeExportEventArgs { + /** Allows the user to set the custom name for the service method responsible for drilling up/down operation in PivotChart. + * @Default {DrillChart} + */ + drillDown?: string; - /** contains the url of the service responsible for exporting. - */ - url?: string; + /** Allows the user to set the custom name for the service method responsible for exporting. + * @Default {Export} + */ + exportPivotChart?: string; - /** contains the name of the exporting file. - */ - fileName?: string; - } + /** Allows the user to set the custom name for the service method responsible for initializing PivotChart. + * @Default {InitializeChart} + */ + initialize?: string; - export interface Zooming { + /** Allows the user to set the custom name for the service method responsible for navigating between pages in paged PivotChart. + * @Default {Paging} + */ + paging?: string; + } + + enum ChartTypes { + + ///To render a Line type PivotChart. + Line, + + ///To render a Spline type PivotChart. + Spline, + + ///To render a Column type PivotChart. + Column, + + ///To render an Area type PivotChart. + Area, + + ///To render a SplineArea type PivotChart. + SplineArea, - /** Enables or disables horizontal scrollbar. - * @Default {false} - */ - enableScrollbar?: boolean; - } + ///To render a StepLine type PivotChart. + StepLine, + + ///To render a StepArea type PivotChart. + StepArea, + + ///To render a Pie type PivotChart. + Pie, + + ///To render a Bar type PivotChart. + Bar, + + ///To render a StackingArea type PivotChart. + StackingArea, + + ///To render a StackingColumn type PivotChart. + StackingColumn, + + ///To render a StackingBar type PivotChart. + StackingBar, + + ///To render a Pyramid type PivotChart. + Pyramid, + + ///To render a Funnel type PivotChart. + Funnel, + + ///To render a Doughnut type PivotChart. + Doughnut, + + ///To render a Scatter type PivotChart. + Scatter, + + ///To render a Bubble type PivotChart. + Bubble + } + + } + + class PivotClient extends ej.Widget { + static fn: PivotClient; + constructor(element: JQuery | Element, options?: PivotClient.Model); + static Locale: any; + model: PivotClient.Model; + defaults: PivotClient.Model; + + /** Performs an asynchronous HTTP (AJAX) request. + * @returns {void} + */ + doAjaxPost(): void; + + /** Performs an asynchronous HTTP (FullPost) submit. + * @returns {void} + */ + doPostBack(): void; + + /** Navigates to the specified page in specified axis. + * @returns {void} + */ + refreshPagedPivotClient(): void; + + /** Updates the PivotClient component with the JSON data fetched from the service on navigating between pages. + * @returns {void} + */ + refreshPagedPivotClientSuccess(): void; + + /** Renders the PivotChart and PivotGrid with the JSON data provided. + * @returns {void} + */ + generateJSON(): void; + + /** Re-renders the control with the report at that instant. + * @returns {void} + */ + refreshControl(): void; + + /** Returns the OlapReport string maintained along with the axis elements information. + * @returns {string} + */ + getOlapReport(): string; + + /** Sets the OlapReport string along with the axis information and maintains it in a property. + * @returns {void} + */ + setOlapReport(): void; + + /** Returns the JSON records formed to render the control. + * @returns {any[]} + */ + getJSONRecords(): any[]; + + /** Sets the JSON records formed to render the control to a property. + * @returns {void} + */ + setJSONRecords(): void; + } + export namespace PivotClient { + + export interface Model { + + /** Sets the mode for the PivotClient widget for binding either OLAP or Relational data source. + * @Default {ej.Pivot.AnalysisMode.Pivot} + */ + analysisMode?: ej.Pivot.AnalysisMode|string; + + /** Allows the user to set the specific chart type for PivotChart inside PivotClient widget. + * @Default {ej.PivotChart.ChartTypes.Column} + */ + chartType?: ej.PivotChart.ChartTypes|string; + + /** Allows the user to set the content on exporting the PivotClient widget. + * @Default {ej.PivotClient.ClientExportMode.ChartAndGrid} + */ + clientExportMode?: ej.PivotClient.ClientExportMode|string; + + /** Specifies the CSS class to PivotClient to achieve custom theme. + * @Default {“”} + */ + cssClass?: string; + + /** Object utilized to pass additional information between client-end and service-end when the control functions in server-mode. + * @Default {{}} + */ + customObject?: any; + + /** Initializes the data source for the PivotClient widget, when it functions completely on client-side. + * @Default {{}} + */ + dataSource?: DataSource; + + /** Allows the user to customize the widget's layout and appearance. + * @Default {{}} + */ + displaySettings?: DisplaySettings; + + /** Allows user to set visibility of icons in toolbar panel. + * @Default {{}} + */ + toolbarIconSettings?: ToolbarIconSettings; + + /** Allows user to show unique name on pivotbutton. + * @Default {false} + */ + showUniqueNameOnPivotButton?: boolean; + + /** Enables the splitter option for resizing the elements inside the control. + * @Default {false} + */ + enableSplitter?: boolean; + + /** Enables the advanced filtering options Value Filtering, Label Filtering and Sorting for each dimensions on binding OLAP data in server mode. + * @Default {false} + */ + enableAdvancedFilter?: boolean; + + /** Allows the user to refresh the control on-demand and not during every UI operation. + * @Default {false} + */ + enableDeferUpdate?: boolean; + + /** Lets the user to save and load reports in a customized way with the help of events. + * @Default {false} + */ + enableLocalStorage?: boolean; + + /** Allows the user to enable paging for both the PivotChart and PivotGrid components for the ease of viewing large data. + * @Default {false} + */ + enablePaging?: boolean; + + /** Allows the user to include the PivotTreeMap component as one of the chart types. + * @Default {false} + */ + enablePivotTreeMap?: boolean; + + /** Allows the user to view the layout of PivotClient from right to left. + * @Default {false} + */ + enableRTL?: boolean; + + /** Enables/disables the visibility of measure group selector drop-down in Cube Browser. + * @Default {false} + */ + enableMeasureGroups?: boolean; + + /** Allows the user to enable virtual scrolling for both the PivotChart and PivotGrid components for the ease of viewing large data. + * @Default {false} + */ + enableVirtualScrolling?: boolean; + + /** Enables/Disables paging in Member Editor for viewing the large count of members in pages. + * @Default {false} + */ + enableMemberEditorPaging?: boolean; + + /** Allows the user to set the number of members to be displayed in each page of Member Editor on applying paging in it. + * @Default {100} + */ + memberEditorPageSize?: number; + + /** Sets the summary layout for PivotGrid. Following are the ways in which summary can be positioned: normal summary (bottom), top summary, no summary and excel-like summary. + * @Default {ej.PivotGrid.Layout.Normal} + */ + gridLayout?: ej.PivotGrid.Layout|string; + + /** Allows the user to hide PivotClient's Cube Browser and Axis Element Builder while initiate the widget. + * @Default {false} + */ + collapseCubeBrowserByDefault?: boolean; + + /** Allows the user to enable PivotClient’s responsiveness in the browser layout. + * @Default {false} + */ + isResponsive?: boolean; + + /** Allows the user to set the localized language for the widget. + * @Default {en-US} + */ + locale?: string; + + /** Sets the mode for the PivotClient widget for binding data source either in server-side or client-side. + * @Default {ej.Pivot.OperationalMode.ClientMode} + */ + operationalMode?: ej.Pivot.OperationalMode|string; + + /** Allows the user to set custom name for the methods at service-end, communicated during AJAX post. + * @Default {{}} + */ + serviceMethodSettings?: ServiceMethodSettings; + + /** Sets the title for PivotClient widget. + */ + title?: string; + + /** Connects the service using the specified URL for any server updates. + */ + url?: string; + + /** Triggers when it reaches client-side after any AJAX request. + */ + afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; + + /** Triggers before any AJAX request is passed from client-side to service methods. + */ + beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; + + /** Triggers before saving the current collection of reports. + */ + saveReport?(e: SaveReportEventArgs): void; + + /** Triggers before loading a saved collection of reports. + */ + loadReport?(e: LoadReportEventArgs): void; + + /** Triggers before fetching the report collection from storage. + */ + fetchReport?(e: FetchReportEventArgs): void; + + /** Triggers before exporting the control. + */ + beforeExport?(e: BeforeExportEventArgs): void; + + /** Triggers before rendering the PivotChart. + */ + chartLoad?(e: ChartLoadEventArgs): void; + + /** Triggers before rendering the PivotTreeMap. + */ + treeMapLoad?(e: TreeMapLoadEventArgs): void; + + /** Triggers while we initiate loading of the widget. + */ + load?(e: LoadEventArgs): void; + + /** Triggers when PivotClient widget completes all operations at client-end after any AJAX request. + */ + renderComplete?(e: RenderCompleteEventArgs): void; - export interface CommonSeriesOptions { + /** Triggers when any error occurred during AJAX request. + */ + renderFailure?(e: RenderFailureEventArgs): void; - /** Allows the user to set the specific chart type for PivotChart widget. - * @Default {ej.PivotChart.ChartTypes.Column} - */ - type?: ej.PivotChart.ChartTypes | string; - } + /** Triggers when PivotClient successfully completes rendering. + */ + renderSuccess?(e: RenderSuccessEventArgs): void; + } - export interface DataSourceColumnsFilterItems { + export interface AfterServiceInvokeEventArgs { - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; + /** returns the current action of PivotClient control. + */ + action?: string; - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } + /** returns the custom object bounds with PivotClient control. + */ + customObject?: any; - export interface DataSourceColumn { + /** returns the HTML element of PivotClient control. + */ + element?: any; + } - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; + export interface BeforeServiceInvokeEventArgs { - /** Allows the user to set the display caption for an item. - */ - fieldCaption?: string; + /** returns the current action of PivotClient control. + */ + action?: string; - /** Allows the user to indicate whether the added item is a named set or not. - * @Default {false} - */ - isNamedSets?: boolean; - - /** Allows the user to set the sorting order of the members of the field. - * @Default {ej.PivotAnalysis.SortOrder.Ascending} - */ - sortOrder?: ej.PivotAnalysis.SortOrder | string; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceColumnsFilterItems; - } - - export interface DataSourceRowsFilterItems { - - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; - - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceRow { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Allows the user to set the display caption for an item. - */ - fieldCaption?: string; - - /** Allows the user to indicate whether the added item is a named set or not. - * @Default {false} - */ - isNamedSets?: boolean; - - /** Allows the user to set the sorting order of the members of the field. - * @Default {ej.PivotAnalysis.SortOrder.Ascending} - */ - sortOrder?: ej.PivotAnalysis.SortOrder | string; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceRowsFilterItems; - } - - export interface DataSourceValuesMeasure { - - /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. - */ - fieldName?: string; - } - - export interface DataSourceValue { - - /** Allows the user to bind the item by using its unique name as field name for Relational datasource. - */ - fieldName?: string; - - /** Allows the user to set the display caption for an item for Relational datasource. - */ - fieldCaption?: string; - - /** This holds the list of unique names of measures to bind them from the OLAP cube. - * @Default {[]} - */ - measures?: DataSourceValuesMeasure[]; - - /** Allows to set the axis name to place the measures items. - * @Default {rows} - */ - axis?: string; - - /** Indicates whether the field is a calculated field or not with Relational datasource. - * @Default {false} - */ - isCalculatedField?: boolean; - - /** Allows to set the formula for calculation of values for calculated members in Relational datasource. - */ - formula?: string; - } - - export interface DataSourceFiltersFilterItems { - - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; - - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceFilter { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceFiltersFilterItems; - } + /** returns the custom object bounds with PivotClient control. + */ + customObject?: any; - export interface DataSource { + /** returns the HTML element of PivotClient control. + */ + element?: any; + } - /** Contains the respective cube name from OLAP database as string type. - * @Default {“”} - */ - cube?: string; + export interface SaveReportEventArgs { - /** Provides the raw data source for the PivotChart. - * @Default {null} - */ - data?: any; + /** returns the current instance of PivotClient control. + */ + targetControl?: any; - /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. - * @Default {“”} - */ - catalog?: string; + /** returns the object which holds the necessary parameters required for saving the report collection. + */ + saveReportSetting?: any; + } - /** Lists out the items to be displayed as series of PivotChart. - * @Default {[]} - */ - columns?: DataSourceColumn[]; + export interface LoadReportEventArgs { - /** Lists out the items to be displayed as segments of PivotChart. - * @Default {[]} - */ - rows?: DataSourceRow[]; + /** returns the current instance of PivotClient control. + */ + targetControl?: any; - /** Lists out the items supports calculation in PivotChart. - * @Default {[]} - */ - values?: DataSourceValue[]; + /** returns the object which holds the necessary parameters required for loading a report collection from database. + */ + loadReportSetting?: any; + } - /** Lists out the items which supports filtering of values without displaying the members in UI in PivotChart. - * @Default {[]} - */ - filters?: DataSourceFilter[]; - } + export interface FetchReportEventArgs { - export interface ServiceMethodSettings { + /** returns the current instance of PivotClient control. + */ + targetControl?: any; - /** Allows the user to set the custom name for the service method responsible for drilling up/down operation in PivotChart. - * @Default {DrillChart} - */ - drillDown?: string; + /** returns the object which holds the necessary parameters required for fetching the report names stored in database. + */ + fetchReportSetting?: any; + } - /** Allows the user to set the custom name for the service method responsible for exporting. - * @Default {Export} - */ - exportPivotChart?: string; + export interface BeforeExportEventArgs { - /** Allows the user to set the custom name for the service method responsible for initializing PivotChart. - * @Default {InitializeChart} - */ - initialize?: string; + /** holds the url of the service method responsible for exporting the PivotClient control. + */ + url?: string; - /** Allows the user to set the custom name for the service method responsible for navigating between pages in paged PivotChart. - * @Default {Paging} - */ - paging?: string; - } - - enum ChartTypes { - - ///To render a Line type PivotChart. - Line, - - ///To render a Spline type PivotChart. - Spline, + /** holds the name of the file to be exported. + */ + fileName?: string; + } - ///To render a Column type PivotChart. - Column, - - ///To render an Area type PivotChart. - Area, - - ///To render a SplineArea type PivotChart. - SplineArea, - - ///To render a StepLine type PivotChart. - StepLine, - - ///To render a StepArea type PivotChart. - StepArea, - - ///To render a Pie type PivotChart. - Pie, - - ///To render a Bar type PivotChart. - Bar, - - ///To render a StackingArea type PivotChart. - StackingArea, - - ///To render a StackingColumn type PivotChart. - StackingColumn, - - ///To render a StackingBar type PivotChart. - StackingBar, - - ///To render a Pyramid type PivotChart. - Pyramid, - - ///To render a Funnel type PivotChart. - Funnel, - - ///To render a Doughnut type PivotChart. - Doughnut, - - ///To render a Scatter type PivotChart. - Scatter, - - ///To render a Bubble type PivotChart. - Bubble - } - - } - - class PivotClient extends ej.Widget { - static fn: PivotClient; - constructor(element: JQuery | Element, options?: PivotClient.Model); - static Locale: any; - model: PivotClient.Model; - defaults: PivotClient.Model; - - /** Performs an asynchronous HTTP (AJAX) request. - * @returns {void} - */ - doAjaxPost(): void; - - /** Performs an asynchronous HTTP (FullPost) submit. - * @returns {void} - */ - doPostBack(): void; - - /** Navigates to the specified page in specified axis. - * @returns {void} - */ - refreshPagedPivotClient(): void; - - /** Updates the PivotClient component with the JSON data fetched from the service on navigating between pages. - * @returns {void} - */ - refreshPagedPivotClientSuccess(): void; - - /** Renders the PivotChart and PivotGrid with the JSON data provided. - * @returns {void} - */ - generateJSON(): void; - - /** Re-renders the control with the report at that instant. - * @returns {void} - */ - refreshControl(): void; - - /** Returns the OlapReport string maintained along with the axis elements information. - * @returns {string} - */ - getOlapReport(): string; - - /** Sets the OlapReport string along with the axis information and maintains it in a property. - * @returns {void} - */ - setOlapReport(): void; - - /** Returns the JSON records formed to render the control. - * @returns {Array} - */ - getJSONRecords(): any[]; - - /** Sets the JSON records formed to render the control to a property. - * @returns {void} - */ - setJSONRecords(): void; - } - export namespace PivotClient { - - export interface Model { - - /** Sets the mode for the PivotClient widget for binding either OLAP or Relational data source. - * @Default {ej.Pivot.AnalysisMode.Pivot} - */ - analysisMode?: ej.Pivot.AnalysisMode | string; - - /** Allows the user to set the specific chart type for PivotChart inside PivotClient widget. - * @Default {ej.PivotChart.ChartTypes.Column} - */ - chartType?: ej.PivotChart.ChartTypes | string; - - /** Allows the user to set the content on exporting the PivotClient widget. - * @Default {ej.PivotClient.ClientExportMode.ChartAndGrid} - */ - clientExportMode?: ej.PivotClient.ClientExportMode | string; - - /** Specifies the CSS class to PivotClient to achieve custom theme. - * @Default {“”} - */ - cssClass?: string; - - /** Object utilized to pass additional information between client-end and service-end when the control functions in server-mode. - * @Default {{}} - */ - customObject?: any; - - /** Initializes the data source for the PivotClient widget, when it functions completely on client-side. - * @Default {{}} - */ - dataSource?: DataSource; - - /** Allows the user to customize the widget's layout and appearance. - * @Default {{}} - */ - displaySettings?: DisplaySettings; - - /** Allows user to set visibility of icons in toolbar panel. - * @Default {{}} - */ - toolbarIconSettings?: ToolbarIconSettings; - - /** Allows user to show unique name on pivotbutton. - * @Default {false} - */ - showUniqueNameOnPivotButton?: boolean; - - /** Enables the splitter option for resizing the elements inside the control. - * @Default {false} - */ - enableSplitter?: boolean; - - /** Enables the advanced filtering options Value Filtering, Label Filtering and Sorting for each dimensions on binding OLAP data in server mode. - * @Default {false} - */ - enableAdvancedFilter?: boolean; - - /** Allows the user to refresh the control on-demand and not during every UI operation. - * @Default {false} - */ - enableDeferUpdate?: boolean; - - /** Lets the user to save and load reports in a customized way with the help of events. - * @Default {false} - */ - enableLocalStorage?: boolean; - - /** Allows the user to enable paging for both the PivotChart and PivotGrid components for the ease of viewing large data. - * @Default {false} - */ - enablePaging?: boolean; - - /** Allows the user to include the PivotTreeMap component as one of the chart types. - * @Default {false} - */ - enablePivotTreeMap?: boolean; - - /** Allows the user to view the layout of PivotClient from right to left. - * @Default {false} - */ - enableRTL?: boolean; - - /** Enables/disables the visibility of measure group selector drop-down in Cube Browser. - * @Default {false} - */ - enableMeasureGroups?: boolean; - - /** Allows the user to enable virtual scrolling for both the PivotChart and PivotGrid components for the ease of viewing large data. - * @Default {false} - */ - enableVirtualScrolling?: boolean; - - /** Enables/Disables paging in Member Editor for viewing the large count of members in pages. - * @Default {false} - */ - enableMemberEditorPaging?: boolean; - - /** Allows the user to set the number of members to be displayed in each page of Member Editor on applying paging in it. - * @Default {100} - */ - memberEditorPageSize?: number; - - /** Sets the summary layout for PivotGrid. Following are the ways in which summary can be positioned: normal summary (bottom), top summary, no summary and excel-like summary. - * @Default {ej.PivotGrid.Layout.Normal} - */ - gridLayout?: ej.PivotGrid.Layout | string; - - /** Allows the user to enable PivotClient’s responsiveness in the browser layout. - * @Default {false} - */ - isResponsive?: boolean; - - /** Allows the user to set the localized language for the widget. - * @Default {en-US} - */ - locale?: string; - - /** Sets the mode for the PivotClient widget for binding data source either in server-side or client-side. - * @Default {ej.Pivot.OperationalMode.ClientMode} - */ - operationalMode?: ej.Pivot.OperationalMode | string; - - /** Allows the user to set custom name for the methods at service-end, communicated during AJAX post. - * @Default {{}} - */ - serviceMethodSettings?: ServiceMethodSettings; + export interface ChartLoadEventArgs { - /** Sets the title for PivotClient widget. - */ - title?: string; + /** returns the current action of PivotChart control. + */ + action?: string; - /** Connects the service using the specified URL for any server updates. - */ - url?: string; + /** returns the custom object bound with PivotChart control. + */ + customObject?: any; - /** Triggers when it reaches client-side after any AJAX request. */ - afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; + /** returns the HTML element of PivotChart control. + */ + element?: any; + } - /** Triggers before any AJAX request is passed from client-side to service methods. */ - beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; + export interface TreeMapLoadEventArgs { - /** Triggers before saving the current collection of reports. */ - saveReport?(e: SaveReportEventArgs): void; + /** returns the current action of PivotTreeMap control. + */ + action?: string; - /** Triggers before loading a saved collection of reports. */ - loadReport?(e: LoadReportEventArgs): void; + /** returns the custom object bound with PivotTreeMap control. + */ + customObject?: any; - /** Triggers before fetching the report collection from storage. */ - fetchReport?(e: FetchReportEventArgs): void; + /** returns the HTML element of PivotTreeMap control. + */ + element?: any; + } - /** Triggers before exporting the control. */ - beforeExport?(e: BeforeExportEventArgs): void; + export interface LoadEventArgs { - /** Triggers before rendering the PivotChart. */ - chartLoad?(e: ChartLoadEventArgs): void; + /** returns the HTML element of PivotClient component. + */ + element?: any; - /** Triggers before rendering the PivotTreeMap. */ - treeMapLoad?(e: TreeMapLoadEventArgs): void; + /** returns the custom object bound with PivotTreeMap control. + */ + customObject?: any; + } - /** Triggers while we initiate loading of the widget. */ - load?(e: LoadEventArgs): void; + export interface RenderCompleteEventArgs { - /** Triggers when PivotClient widget completes all operations at client-end after any AJAX request. */ - renderComplete?(e: RenderCompleteEventArgs): void; + /** returns the HTML element of PivotClient component. + */ + element?: any; - /** Triggers when any error occurred during AJAX request. */ - renderFailure?(e: RenderFailureEventArgs): void; + /** returns the custom object bound with PivotTreeMap control. + */ + customObject?: any; + } - /** Triggers when PivotClient successfully completes rendering. */ - renderSuccess?(e: RenderSuccessEventArgs): void; - } + export interface RenderFailureEventArgs { - export interface AfterServiceInvokeEventArgs { + /** returns the custom object bound with the control. + */ + customObject?: any; - /** returns the current action of PivotClient control. - */ - action?: string; + /** returns the HTML element of PivotClient control. + */ + element?: any; - /** returns the custom object bounds with PivotClient control. - */ - customObject?: any; + /** returns the error message with error code. + */ + message?: string; + } - /** returns the HTML element of PivotClient control. - */ - element?: any; - } + export interface RenderSuccessEventArgs { - export interface BeforeServiceInvokeEventArgs { + /** returns the object of PivotClient control at that instant. + */ + args?: any; + } - /** returns the current action of PivotClient control. - */ - action?: string; + export interface DataSourceColumnsAdvancedFilter { - /** returns the custom object bounds with PivotClient control. - */ - customObject?: any; + /** Allows the user to provide level unique name to perform advanced filtering. + */ + name?: string; - /** returns the HTML element of PivotClient control. - */ - element?: any; - } + /** Allows the user to set the operator to perform Label Filtering. + * @Default {none} + */ + labelFilterOperator?: string; - export interface SaveReportEventArgs { + /** Allows the user to set the operator to perform Value Filtering. + * @Default {none} + */ + valueFilterOperator?: string; - /** returns the current instance of PivotClient control. - */ - targetControl?: any; + /** Allows the user to set the filtering type while performing advanced filtering. + */ + advancedFilterType?: string; - /** returns the object which holds the necessary parameters required for saving the report collection. - */ - saveReportSetting?: any; - } + /** In case of value filtering, this property contains the measure name to which the filter is applied. + */ + measure?: string; - export interface LoadReportEventArgs { + /** Allows the user to hold the filter operand values in advanced filtering. + */ + values?: any[]; + } + + export interface DataSourceColumnsFilterItems { - /** returns the current instance of PivotClient control. - */ - targetControl?: any; + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; + + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceColumn { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Allows the user to set the display caption for an item. + */ + fieldCaption?: string; + + /** Allows the user to filter the report by default using advanced filtering (excel-like) option for OLAP data source in client-mode. + * @Default {[]} + */ + advancedFilter?: DataSourceColumnsAdvancedFilter[]; + + /** Allows the user to indicate whether the added item is a named set or not. + * @Default {false} + */ + isNamedSets?: boolean; + + /** Shows/Hides the sub-total of the field in PivotGrid. + * @Default {true} + */ + showSubTotal?: boolean; + + /** Allows to set the format for the column headers. + */ + format?: string; + + /** This property sets type of display of date. + */ + formatString?: string; + + /** Allows to set the custom theme for the column headers. + */ + cssClass?: string; + + /** Allows the user to set the sorting order of the members of the field. + * @Default {ej.PivotAnalysis.SortOrder.Ascending} + */ + sortOrder?: ej.PivotAnalysis.SortOrder|string; + + /** Contains the list of members need to be drilled down by default in the field. + * @Default {[]} + */ + drilledItems?: any[]; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceColumnsFilterItems; + } + + export interface DataSourceRowsAdvancedFilter { + + /** Allows the user to provide level unique name to perform advanced filtering. + */ + name?: string; + + /** Allows the user to set the operator to perform Label Filtering. + * @Default {none} + */ + labelFilterOperator?: string; + + /** Allows the user to set the operator to perform Value Filtering. + * @Default {none} + */ + valueFilterOperator?: string; + + /** Allows the user to set the filtering type while performing advanced filtering. + */ + advancedFilterType?: string; + + /** In case of value filtering, this property contains the measure name to which the filter is applied. + */ + measure?: string; + + /** Allows the user to hold the filter operand values in advanced filtering. + */ + values?: any[]; + } + + export interface DataSourceRowsFilterItems { + + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; + + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceRow { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Allows the user to set the display caption for an item. + */ + fieldCaption?: string; + + /** Allows the user to filter the report by default using advanced filtering (excel-like) option for OLAP data source in client-mode. + * @Default {[]} + */ + advancedFilter?: DataSourceRowsAdvancedFilter[]; + + /** Allows the user to indicate whether the added item is a named set or not. + * @Default {false} + */ + isNamedSets?: boolean; + + /** Shows/Hides the sub-total of the field. + * @Default {true} + */ + showSubTotal?: boolean; + + /** Allows to set the format for the row headers. + */ + format?: string; + + /** This property sets type of display of date. + */ + formatString?: string; + + /** Allows to set the custom theme for the row headers. + */ + cssClass?: string; + + /** Allows the user to set the sorting order of the members of the field. + * @Default {ej.PivotAnalysis.SortOrder.Ascending} + */ + sortOrder?: ej.PivotAnalysis.SortOrder|string; + + /** Contains the list of members need to be drilled down by default in the field. + * @Default {[]} + */ + drilledItems?: any[]; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceRowsFilterItems; + } + + export interface DataSourceValuesMeasure { + + /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. + */ + fieldName?: string; + } + + export interface DataSourceValue { + + /** Allows the user to bind the item by using its unique name as field name for Relational datasource. + */ + fieldName?: string; + + /** Allows the user to set the display caption for an item for Relational datasource. + */ + fieldCaption?: string; + + /** This holds the list of unique names of measures to bind them from the OLAP cube. + * @Default {[]} + */ + measures?: DataSourceValuesMeasure[]; + + /** Allows to set the axis name to place the measures items. + * @Default {rows} + */ + axis?: string; + + /** Indicates whether the field is a calculated field or not with Relational datasource. + * @Default {false} + */ + isCalculatedField?: boolean; + + /** Allows to set the type of PivotGrid summary calculation for the value field with Relational datasource. + * @Default {ej.PivotAnalysis.SummaryType.Sum} + */ + summaryType?: ej.PivotAnalysis.SummaryType|string; + + /** Allows to set the format of the values. + */ + format?: string; + + /** This property sets type of display of date. + */ + formatString?: string; + + /** Allows to set the custom theme for the values. + */ + cssClass?: string; + + /** Allows to set the formula for calculation of values for calculated members in Relational datasource. + */ + formula?: string; + } + + export interface DataSourceFiltersFilterItems { + + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; + + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceFilter { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Allows the user to set the display name for an item. + */ + fieldCaption?: string; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceFiltersFilterItems; + } + + export interface DataSourcePagerOptions { + + /** Allows to set the number of categorical columns to be displayed in each page on applying paging. + * @Default {0} + */ + categoricalPageSize?: number; + + /** Allows to set the number of series rows to be displayed in each page on applying paging. + * @Default {0} + */ + seriesPageSize?: number; + + /** Allows to set the page number in categorical axis to be loaded by default. + * @Default {1} + */ + categoricalCurrentPage?: number; + + /** Allows to set the page number in series axis to be loaded by default. + * @Default {1} + */ + seriesCurrentPage?: number; + } + + export interface DataSource { + + /** Lists out the items to be arranged in columns section of PivotClient. + * @Default {[]} + */ + columns?: DataSourceColumn[]; + + /** Lists out the items to be arranged in rows section of PivotClient. + * @Default {[]} + */ + rows?: DataSourceRow[]; + + /** Lists out the items which supports calculation in PivotClient. + * @Default {[]} + */ + values?: DataSourceValue[]; + + /** Lists out the items which supports filtering of values without displaying the members in UI in PivotClient. + * @Default {[]} + */ + filters?: DataSourceFilter[]; + + /** Contains the respective cube name from OLAP database as string type. + * @Default {“”} + */ + cube?: string; + + /** To set the data source name to fetch data from that. + * @Default {“”} + */ + sourceInfo?: string; + + /** Set the provider name for PivotClient to identify whether the provider is SSAS or Mondrian. + * @Default {ssas} + */ + providerName?: string; + + /** Provides the raw data source for the PivotClient. + * @Default {null} + */ + data?: any; + + /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. + * @Default {“”} + */ + catalog?: string; + + /** Allows user to filter the members (by its name and values) through advanced filtering (excel-like) option in client-mode. + * @Default {false} + */ + enableAdvancedFilter?: boolean; + + /** Sets a name to the report bound to the control. + */ + reportName?: string; + + /** Allows to set the page size and current page number for each axis on applying paging. + * @Default {{}} + */ + pagerOptions?: DataSourcePagerOptions; + } + + export interface DisplaySettings { + + /** Lets the user to customize the display of PivotChart and PivotGrid widgets, either in tabs or tiles. + * @Default {ej.PivotClient.ControlPlacement.Tab} + */ + controlPlacement?: ej.PivotClient.ControlPlacement|string; + + /** Lets the user to set either Chart or Grid as the start-up widget. + * @Default {ej.PivotClient.DefaultView.Grid} + */ + defaultView?: ej.PivotClient.DefaultView|string; + + /** Lets the user to have an option for switching to full screen view of PivotChart and PivotGrid from default view in PivotClient. + * @Default {false} + */ + enableFullScreen?: boolean; + + /** Enables an option to enhance the space for PivotGrid and PivotChart by hiding Cube Browser and Axis Element Builder. + * @Default {false} + */ + enableTogglePanel?: boolean; + + /** Sets the display mode (Only Chart/Only Grid/Both) in PivotClient. + * @Default {ej.PivotClient.DisplayMode.ChartAndGrid} + */ + mode?: ej.PivotClient.DisplayMode|string; + } + + export interface ToolbarIconSettings { + + /** Allows user to set the visibility of Add Report icon in toolbar panel. + * @Default {true} + */ + enableAddReport?: boolean; + + /** Allows user to set the visibility of New Report icon in toolbar panel. + * @Default {true} + */ + enableNewReport?: boolean; + + /** Allows user to set the visibility of Rename Report icon in toolbar panel. + * @Default {true} + */ + enableRenameReport?: boolean; + + /** Allows user to set the visibility of DB Manipulation icon in toolbar panel. + * @Default {true} + */ + enableDBManipulation?: boolean; + + /** Allows user to set the visibility of Word Export icon in toolbar panel. + * @Default {true} + */ + enableWordExport?: boolean; + + /** Allows user to set the visibility of Excel Export icon in toolbar panel. + * @Default {true} + */ + enableExcelExport?: boolean; + + /** Allows user to set the visibility of PDF Export icon in toolbar panel. + * @Default {true} + */ + enablePdfExport?: boolean; + + /** Allows user to set the visibility of MDX Query icon in toolbar panel. + * @Default {true} + */ + enableMDXQuery?: boolean; + + /** Allows user to set the visibility of Defer Update icon in toolbar panel. + * @Default {false} + */ + enableDeferUpdate?: boolean; + + /** Allows user to set the visibility of Full Screen icon in toolbar panel. + * @Default {false} + */ + enableFullScreen?: boolean; + + /** Allows user to set the visibility of Sort/Filter Column icon in toolbar panel. + * @Default {true} + */ + enableSortOrFilterColumn?: boolean; + + /** Allows user to set the visibility of Sort/Filter Row icon in toolbar panel. + * @Default {true} + */ + enableSortOrFilterRow?: boolean; + + /** Allows user to set the visibility of Toggle Axis icon in toolbar panel. + * @Default {true} + */ + enableToggleAxis?: boolean; + + /** Allows user to set the visibility of Chart Types icon in toolbar panel. + * @Default {true} + */ + enableChartTypes?: boolean; + + /** Allows user to set the visibility of Remove Report icon in toolbar panel. + * @Default {true} + */ + enableRemoveReport?: boolean; + + /** Allows user to set the visibility of Calculated Member icon in toolbar panel. + * @Default {false} + */ + enableCalculatedMember?: boolean; + } + + export interface ServiceMethodSettings { + + /** Allows the user to set the custom name for the service method responsible for updating the entire report and widget, while changing the Cube. + * @Default {CubeChanged} + */ + cubeChanged?: string; + + /** Allows the user to set the custom name for the service method responsible for exporting. + * @Default {Export} + */ + exportPivotClient?: string; + + /** Allows the user to set the custom name for the service method responsible to get the members for the tree-view, inside member-editor dialog. + * @Default {FetchMemberTreeNodes} + */ + fetchMemberTreeNodes?: string; + + /** Allows the user to set the custom name for the service method responsible for fetching the report names from the database. + * @Default {FetchReportListFromDB} + */ + fetchReportList?: string; + + /** Allows the user to set the custom name for the service method responsible for updating report while filtering members. + * @Default {FilterElement} + */ + filterElement?: string; + + /** Allows the user to set the custom name for the service method responsible for initializing PivotClient. + * @Default {InitializeClient} + */ + initialize?: string; + + /** Allows the user to set the custom name for the service method responsible for loading a report collection from the database. + * @Default {LoadReportFromDB} + */ + loadReport?: string; + + /** Allows the user to set the custom name for the service method responsible for retrieving the MDX query for the current report. + * @Default {GetMDXQuery} + */ + mdxQuery?: string; + + /** Allows the user to set the custom name for the service method responsible for updating the tree-view inside Cube Browser, while changing the measure group. + * @Default {MeasureGroupChanged} + */ + measureGroupChanged?: string; + + /** Allows the user to set the custom name for the service method responsible to get the child members, on tree-view node expansion. + * @Default {MemberExpanded} + */ + memberExpand?: string; + + /** Allows the user to set the custom name for the service method responsible for updating report while dropping a node/SplitButton inside Axis Element Builder. + * @Default {NodeDropped} + */ + nodeDropped?: string; + + /** Allows the user to set the custom name for the service method responsible for updating report while removing SplitButton from Axis Element Builder. + * @Default {RemoveSplitButton} + */ + removeSplitButton?: string; + + /** Allows the user to set the custom name for the service method responsible for saving the report collection to database. + * @Default {SaveReportToDB} + */ + saveReport?: string; + + /** Allows the user to set the custom name for the service method responsible for toggling the elements in row and column axes. + * @Default {ToggleAxis} + */ + toggleAxis?: string; + + /** Allows the user to set the custom name for the service method responsible for all the toolbar operations. + * @Default {ToolbarOperations} + */ + toolbarServices?: string; + + /** Allows the user to set the custom name for the service method responsible for updating report collection. + * @Default {UpdateReport} + */ + updateReport?: string; + + /** Allows the user to set the custom name for the service method responsible on navigating between pages in paged PivotClient. + * @Default {Paging} + */ + paging?: string; + + /** Allows the user to set the custom name for the service method responsible for updating report with calculated member. + * @Default {CalculatedMember} + */ + calculatedMember?: string; + } + + enum ClientExportMode { + + ///Exports both the PivotChart and PivotGrid on exporting. + ChartAndGrid, + + ///Exports the PivotChart control alone on exporting. + ChartOnly, + + ///Exports the PivotGrid control alone on exporting. + GridOnly + } + + + enum ControlPlacement { + + ///Displays PivotChart and PivotGrid widgets in separate tabs. + Tab, + + ///Displays PivotChart and PivotGrid widgets one above the other. + Tile + } + + + enum DefaultView { + + ///To set PivotChart as a default control in view. + Chart, + + ///To set PivotGrid as a default control in view. + Grid + } + + + enum DisplayMode { + + ///To display only PivotChart widget. + ChartOnly, + + ///To display only PivotGrid widget. + GridOnly, + + ///To display both PivotChart and PivotGrid widgets. + ChartAndGrid + } + + } + + class PivotGauge extends ej.Widget { + static fn: PivotGauge; + constructor(element: JQuery | Element, options?: PivotGauge.Model); + static Locale: any; + model: PivotGauge.Model; + defaults: PivotGauge.Model; + + /** Performs an asynchronous HTTP (AJAX) request. + * @returns {void} + */ + doAjaxPost(): void; + + /** This function is used to refresh the PivotGauge at client-side itself. + * @returns {void} + */ + refresh(): void; + + /** This function removes the KPI related images from PivotGauge on binding OLAP datasource. + * @returns {void} + */ + removeImg(): void; + + /** This function receives the JSON formatted datasource and renders the PivotGauge control. + * @returns {void} + */ + renderControlFromJSON(): void; + + /** Returns the OlapReport string maintained along with the axis elements information. + * @returns {string} + */ + getOlapReport(): string; + + /** Sets the OlapReport string along with the axis information and maintains it in a property. + * @returns {void} + */ + setOlapReport(): void; + + /** Returns the JSON records formed to render the control. + * @returns {any[]} + */ + getJSONRecords(): any[]; + + /** Sets the JSON records to render the control. + * @returns {void} + */ + setJSONRecords(): void; - /** returns the object which holds the necessary parameters required for loading a report collection from database. - */ - loadReportSetting?: any; - } - - export interface FetchReportEventArgs { - - /** returns the current instance of PivotClient control. - */ - targetControl?: any; - - /** returns the object which holds the necessary parameters required for fetching the report names stored in database. - */ - fetchReportSetting?: any; - } - - export interface BeforeExportEventArgs { - - /** holds the url of the service method responsible for exporting the PivotClient control. - */ - url?: string; - - /** holds the name of the file to be exported. - */ - fileName?: string; - } - - export interface ChartLoadEventArgs { - - /** returns the current action of PivotChart control. - */ - action?: string; - - /** returns the custom object bound with PivotChart control. - */ - customObject?: any; - - /** returns the HTML element of PivotChart control. - */ - element?: any; - } - - export interface TreeMapLoadEventArgs { - - /** returns the current action of PivotTreeMap control. - */ - action?: string; - - /** returns the custom object bound with PivotTreeMap control. - */ - customObject?: any; - - /** returns the HTML element of PivotTreeMap control. - */ - element?: any; - } - - export interface LoadEventArgs { - - /** returns the HTML element of PivotClient component. - */ - element?: any; - - /** returns the custom object bound with PivotTreeMap control. - */ - customObject?: any; - } - - export interface RenderCompleteEventArgs { - - /** returns the HTML element of PivotClient component. - */ - element?: any; - - /** returns the custom object bound with PivotTreeMap control. - */ - customObject?: any; - } - - export interface RenderFailureEventArgs { - - /** returns the custom object bound with the control. - */ - customObject?: any; - - /** returns the HTML element of PivotClient control. - */ - element?: any; - - /** returns the error message with error code. - */ - message?: string; - } - - export interface RenderSuccessEventArgs { - - /** returns the object of PivotClient control at that instant. - */ - args?: any; - } - - export interface DataSourceColumnsAdvancedFilter { - - /** Allows the user to provide level unique name to perform advanced filtering. - */ - name?: string; - - /** Allows the user to set the operator to perform Label Filtering. - * @Default {none} - */ - labelFilterOperator?: string; - - /** Allows the user to set the operator to perform Value Filtering. - * @Default {none} - */ - valueFilterOperator?: string; - - /** Allows the user to set the filtering type while performing advanced filtering. - */ - advancedFilterType?: string; - - /** In case of value filtering, this property contains the measure name to which the filter is applied. - */ - measure?: string; - - /** Allows the user to hold the filter operand values in advanced filtering. - */ - values?: any[]; - } - - export interface DataSourceColumnsFilterItems { - - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; - - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceColumn { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Allows the user to set the display caption for an item. - */ - fieldCaption?: string; - - /** Allows the user to filter the report by default using advanced filtering (excel-like) option for OLAP data source in client-mode. - * @Default {[]} - */ - advancedFilter?: DataSourceColumnsAdvancedFilter[]; - - /** Allows the user to indicate whether the added item is a named set or not. - * @Default {false} - */ - isNamedSets?: boolean; - - /** Shows/Hides the sub-total of the field in PivotGrid. - * @Default {true} - */ - showSubTotal?: boolean; - - /** Allows the user to set the sorting order of the members of the field. - * @Default {ej.PivotAnalysis.SortOrder.Ascending} - */ - sortOrder?: ej.PivotAnalysis.SortOrder | string; - - /** Contains the list of members need to be drilled down by default in the field. - * @Default {[]} - */ - drilledItems?: any[]; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceColumnsFilterItems; - } - - export interface DataSourceRowsAdvancedFilter { - - /** Allows the user to provide level unique name to perform advanced filtering. - */ - name?: string; - - /** Allows the user to set the operator to perform Label Filtering. - * @Default {none} - */ - labelFilterOperator?: string; - - /** Allows the user to set the operator to perform Value Filtering. - * @Default {none} - */ - valueFilterOperator?: string; - - /** Allows the user to set the filtering type while performing advanced filtering. - */ - advancedFilterType?: string; - - /** In case of value filtering, this property contains the measure name to which the filter is applied. - */ - measure?: string; - - /** Allows the user to hold the filter operand values in advanced filtering. - */ - values?: any[]; - } - - export interface DataSourceRowsFilterItems { - - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; - - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceRow { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Allows the user to set the display caption for an item. - */ - fieldCaption?: string; - - /** Allows the user to filter the report by default using advanced filtering (excel-like) option for OLAP data source in client-mode. - * @Default {[]} - */ - advancedFilter?: DataSourceRowsAdvancedFilter[]; - - /** Allows the user to indicate whether the added item is a named set or not. - * @Default {false} - */ - isNamedSets?: boolean; - - /** Shows/Hides the sub-total of the field. - * @Default {true} - */ - showSubTotal?: boolean; - - /** Allows the user to set the sorting order of the members of the field. - * @Default {ej.PivotAnalysis.SortOrder.Ascending} - */ - sortOrder?: ej.PivotAnalysis.SortOrder | string; - - /** Contains the list of members need to be drilled down by default in the field. - * @Default {[]} - */ - drilledItems?: any[]; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceRowsFilterItems; - } - - export interface DataSourceValuesMeasure { - - /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. - */ - fieldName?: string; - } - - export interface DataSourceValue { - - /** Allows the user to bind the item by using its unique name as field name for Relational datasource. - */ - fieldName?: string; - - /** Allows the user to set the display caption for an item for Relational datasource. - */ - fieldCaption?: string; - - /** This holds the list of unique names of measures to bind them from the OLAP cube. - * @Default {[]} - */ - measures?: DataSourceValuesMeasure[]; - - /** Allows to set the axis name to place the measures items. - * @Default {rows} - */ - axis?: string; - - /** Indicates whether the field is a calculated field or not with Relational datasource. - * @Default {false} - */ - isCalculatedField?: boolean; - - /** Allows to set the type of PivotGrid summary calculation for the value field with Relational datasource. - * @Default {ej.PivotAnalysis.SummaryType.Sum} - */ - summaryType?: ej.PivotAnalysis.SummaryType | string; - - /** Allows to set the format of the values. - */ - format?: string; - - /** This property sets type of display of date. - */ - formatString?: string; - - /** Allows to set the formula for calculation of values for calculated members in Relational datasource. - */ - formula?: string; - } - - export interface DataSourceFiltersFilterItems { - - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; - - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceFilter { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Allows the user to set the display name for an item. - */ - fieldCaption?: string; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceFiltersFilterItems; - } - - export interface DataSourcePagerOptions { - - /** Allows to set the number of categorical columns to be displayed in each page on applying paging. - * @Default {0} - */ - categoricalPageSize?: number; - - /** Allows to set the number of series rows to be displayed in each page on applying paging. - * @Default {0} - */ - seriesPageSize?: number; - - /** Allows to set the page number in categorical axis to be loaded by default. - * @Default {1} - */ - categoricalCurrentPage?: number; - - /** Allows to set the page number in series axis to be loaded by default. - * @Default {1} - */ - seriesCurrentPage?: number; - } - - export interface DataSource { - - /** Lists out the items to be arranged in columns section of PivotClient. - * @Default {[]} - */ - columns?: DataSourceColumn[]; - - /** Lists out the items to be arranged in rows section of PivotClient. - * @Default {[]} - */ - rows?: DataSourceRow[]; - - /** Lists out the items which supports calculation in PivotClient. - * @Default {[]} - */ - values?: DataSourceValue[]; - - /** Lists out the items which supports filtering of values without displaying the members in UI in PivotClient. - * @Default {[]} - */ - filters?: DataSourceFilter[]; - - /** Contains the respective cube name from OLAP database as string type. - * @Default {“”} - */ - cube?: string; - - /** Provides the raw data source for the PivotClient. - * @Default {null} - */ - data?: any; - - /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. - * @Default {“”} - */ - catalog?: string; - - /** Allows user to filter the members (by its name and values) through advanced filtering (excel-like) option in client-mode. - * @Default {false} - */ - enableAdvancedFilter?: boolean; - - /** Sets a name to the report bound to the control. - */ - reportName?: string; - - /** Allows to set the page size and current page number for each axis on applying paging. - * @Default {{}} - */ - pagerOptions?: DataSourcePagerOptions; - } - - export interface DisplaySettings { - - /** Lets the user to customize the display of PivotChart and PivotGrid widgets, either in tabs or tiles. - * @Default {ej.PivotClient.ControlPlacement.Tab} - */ - controlPlacement?: ej.PivotClient.ControlPlacement | string; - - /** Lets the user to set either Chart or Grid as the start-up widget. - * @Default {ej.PivotClient.DefaultView.Grid} - */ - defaultView?: ej.PivotClient.DefaultView | string; - - /** Lets the user to have an option for switching to full screen view of PivotChart and PivotGrid from default view in PivotClient. - * @Default {false} - */ - enableFullScreen?: boolean; - - /** Enables an option to enhance the space for PivotGrid and PivotChart by hiding Cube Browser and Axis Element Builder. - * @Default {false} - */ - enableTogglePanel?: boolean; - - /** Sets the display mode (Only Chart/Only Grid/Both) in PivotClient. - * @Default {ej.PivotClient.DisplayMode.ChartAndGrid} - */ - mode?: ej.PivotClient.DisplayMode | string; - } - - export interface ToolbarIconSettings { - - /** Allows user to set the visibility of Add Report icon in toolbar panel. - * @Default {true} - */ - enableAddReport?: boolean; - - /** Allows user to set the visibility of New Report icon in toolbar panel. - * @Default {true} - */ - enableNewReport?: boolean; - - /** Allows user to set the visibility of Rename Report icon in toolbar panel. - * @Default {true} - */ - enableRenameReport?: boolean; - - /** Allows user to set the visibility of DB Manipulation icon in toolbar panel. - * @Default {true} - */ - enableDBManipulation?: boolean; - - /** Allows user to set the visibility of Word Export icon in toolbar panel. - * @Default {true} - */ - enableWordExport?: boolean; - - /** Allows user to set the visibility of Excel Export icon in toolbar panel. - * @Default {true} - */ - enableExcelExport?: boolean; - - /** Allows user to set the visibility of PDF Export icon in toolbar panel. - * @Default {true} - */ - enablePdfExport?: boolean; - - /** Allows user to set the visibility of MDX Query icon in toolbar panel. - * @Default {true} - */ - enableMDXQuery?: boolean; - - /** Allows user to set the visibility of Defer Update icon in toolbar panel. - * @Default {false} - */ - enableDeferUpdate?: boolean; - - /** Allows user to set the visibility of Full Screen icon in toolbar panel. - * @Default {false} - */ - enableFullScreen?: boolean; - - /** Allows user to set the visibility of Sort/Filter Column icon in toolbar panel. - * @Default {true} - */ - enableSortOrFilterColumn?: boolean; - - /** Allows user to set the visibility of Sort/Filter Row icon in toolbar panel. - * @Default {true} - */ - enableSortOrFilterRow?: boolean; - - /** Allows user to set the visibility of Toggle Axis icon in toolbar panel. - * @Default {true} - */ - enableToggleAxis?: boolean; - - /** Allows user to set the visibility of Chart Types icon in toolbar panel. - * @Default {true} - */ - enableChartTypes?: boolean; - - /** Allows user to set the visibility of Remove Report icon in toolbar panel. - * @Default {true} - */ - enableRemoveReport?: boolean; - - /** Allows user to set the visibility of Calculated Member icon in toolbar panel. - * @Default {false} - */ - enableCalculatedMember?: boolean; - } - - export interface ServiceMethodSettings { - - /** Allows the user to set the custom name for the service method responsible for updating the entire report and widget, while changing the Cube. - * @Default {CubeChanged} - */ - cubeChanged?: string; - - /** Allows the user to set the custom name for the service method responsible for exporting. - * @Default {Export} - */ - exportPivotClient?: string; - - /** Allows the user to set the custom name for the service method responsible to get the members for the tree-view, inside member-editor dialog. - * @Default {FetchMemberTreeNodes} - */ - fetchMemberTreeNodes?: string; - - /** Allows the user to set the custom name for the service method responsible for fetching the report names from the database. - * @Default {FetchReportListFromDB} - */ - fetchReportList?: string; - - /** Allows the user to set the custom name for the service method responsible for updating report while filtering members. - * @Default {FilterElement} - */ - filterElement?: string; - - /** Allows the user to set the custom name for the service method responsible for initializing PivotClient. - * @Default {InitializeClient} - */ - initialize?: string; - - /** Allows the user to set the custom name for the service method responsible for loading a report collection from the database. - * @Default {LoadReportFromDB} - */ - loadReport?: string; - - /** Allows the user to set the custom name for the service method responsible for retrieving the MDX query for the current report. - * @Default {GetMDXQuery} - */ - mdxQuery?: string; - - /** Allows the user to set the custom name for the service method responsible for updating the tree-view inside Cube Browser, while changing the measure group. - * @Default {MeasureGroupChanged} - */ - measureGroupChanged?: string; - - /** Allows the user to set the custom name for the service method responsible to get the child members, on tree-view node expansion. - * @Default {MemberExpanded} - */ - memberExpand?: string; - - /** Allows the user to set the custom name for the service method responsible for updating report while dropping a node/SplitButton inside Axis Element Builder. - * @Default {NodeDropped} - */ - nodeDropped?: string; - - /** Allows the user to set the custom name for the service method responsible for updating report while removing SplitButton from Axis Element Builder. - * @Default {RemoveSplitButton} - */ - removeSplitButton?: string; - - /** Allows the user to set the custom name for the service method responsible for saving the report collection to database. - * @Default {SaveReportToDB} - */ - saveReport?: string; - - /** Allows the user to set the custom name for the service method responsible for toggling the elements in row and column axes. - * @Default {ToggleAxis} - */ - toggleAxis?: string; - - /** Allows the user to set the custom name for the service method responsible for all the toolbar operations. - * @Default {ToolbarOperations} - */ - toolbarServices?: string; - - /** Allows the user to set the custom name for the service method responsible for updating report collection. - * @Default {UpdateReport} - */ - updateReport?: string; - - /** Allows the user to set the custom name for the service method responsible on navigating between pages in paged PivotClient. - * @Default {Paging} - */ - paging?: string; - } - - enum ClientExportMode { - - ///Exports both the PivotChart and PivotGrid on exporting. - ChartAndGrid, - - ///Exports the PivotChart control alone on exporting. - ChartOnly, - - ///Exports the PivotGrid control alone on exporting. - GridOnly - } - - - enum ControlPlacement { - - ///Displays PivotChart and PivotGrid widgets in separate tabs. - Tab, - - ///Displays PivotChart and PivotGrid widgets one above the other. - Tile - } - - - enum DefaultView { - - ///To set PivotChart as a default control in view. - Chart, - - ///To set PivotGrid as a default control in view. - Grid - } - - - enum DisplayMode { - - ///To display only PivotChart widget. - ChartOnly, - - ///To display only PivotGrid widget. - GridOnly, - - ///To display both PivotChart and PivotGrid widgets. - ChartAndGrid - } - - } - - class PivotGauge extends ej.Widget { - static fn: PivotGauge; - constructor(element: JQuery | Element, options?: PivotGauge.Model); - static Locale: any; - model: PivotGauge.Model; - defaults: PivotGauge.Model; - - /** Performs an asynchronous HTTP (AJAX) request. - * @returns {void} - */ - doAjaxPost(): void; - - /** This function is used to refresh the PivotGauge at client-side itself. - * @returns {void} - */ - refresh(): void; - - /** This function removes the KPI related images from PivotGauge on binding OLAP datasource. - * @returns {void} - */ - removeImg(): void; - - /** This function receives the JSON formatted datasource and renders the PivotGauge control. - * @returns {void} - */ - renderControlFromJSON(): void; - - /** Returns the OlapReport string maintained along with the axis elements information. - * @returns {string} - */ - getOlapReport(): string; - - /** Sets the OlapReport string along with the axis information and maintains it in a property. - * @returns {void} - */ - setOlapReport(): void; - - /** Returns the JSON records formed to render the control. - * @returns {Array} - */ - getJSONRecords(): any[]; - - /** Sets the JSON records to render the control. - * @returns {void} - */ - setJSONRecords(): void; - - /** Returns the JSON records required to render the PivotGauge on performing any action with OLAP data source. - * @returns {void} - */ - getJSONData(): void; - } - export namespace PivotGauge { - - export interface Model { - - /** Sets the number of columns to arrange the Pivot Gauges. - * @Default {0} - */ - columnsCount?: number; - - /** Specifies the CSS class to PivotGauge to achieve custom theme. - * @Default {“”} - */ - cssClass?: string; - - /** Object utilized to pass additional information between client-end and service-end on operating in server mode. - * @Default {{}} - */ - customObject?: any; - - /** Initializes the data source for the PivotGauge widget, when it functions completely on client-side. - * @Default {{}} - */ - dataSource?: DataSource; - - /** Enables/disables the animation of pointer in PivotGauge. - * @Default {false} - */ - enableAnimation?: boolean; - - /** Enables/disables tooltip visibility in PivotGauge. - * @Default {false} - */ - enableTooltip?: boolean; - - /** Allows the user to view PivotGauge from right to left. - * @Default {false} - */ - enableRTL?: boolean; - - /** Allows the user to enable PivotGauge’s responsiveness in the browser layout. - * @Default {false} - */ - isResponsive?: boolean; - - /** Allows the user to change the format of the label values in PivotGauge. - * @Default {null} - */ - labelFormatSettings?: LabelFormatSettings; - - /** Allows the user to set the localized language for the widget. - * @Default {en-US} - */ - locale?: string; - - /** Sets the number of rows to arrange the Pivot Gauges. - * @Default {0} - */ - rowsCount?: number; - - /** Sets the scale values such as pointers, indicators, etc... for PivotGauge. - * @Default {{}} - */ - scales?: any; - - /** Allows the user to set the custom name for the methods at service-end, communicated during AJAX post. - * @Default {{}} - */ - serviceMethodSettings?: ServiceMethodSettings; - - /** Enables/disables the header labels in PivotGauge. - * @Default {true} - */ - showHeaderLabel?: boolean; + /** Returns the JSON records required to render the PivotGauge on performing any action with OLAP data source. + * @returns {void} + */ + getJSONData(): void; + } + export namespace PivotGauge { + + export interface Model { + + /** Sets the number of columns to arrange the Pivot Gauges. + * @Default {0} + */ + columnsCount?: number; + + /** Specifies the CSS class to PivotGauge to achieve custom theme. + * @Default {“”} + */ + cssClass?: string; + + /** Object utilized to pass additional information between client-end and service-end on operating in server mode. + * @Default {{}} + */ + customObject?: any; + + /** Initializes the data source for the PivotGauge widget, when it functions completely on client-side. + * @Default {{}} + */ + dataSource?: DataSource; + + /** Enables/disables the animation of pointer in PivotGauge. + * @Default {false} + */ + enableAnimation?: boolean; + + /** Enables/disables tooltip visibility in PivotGauge. + * @Default {false} + */ + enableTooltip?: boolean; + + /** Allows the user to view PivotGauge from right to left. + * @Default {false} + */ + enableRTL?: boolean; + + /** Allows the user to enable PivotGauge’s responsiveness in the browser layout. + * @Default {false} + */ + isResponsive?: boolean; + + /** Allows the user to change the format of the label values in PivotGauge. + * @Default {null} + */ + labelFormatSettings?: LabelFormatSettings; + + /** Allows the user to set the localized language for the widget. + * @Default {en-US} + */ + locale?: string; + + /** Sets the number of rows to arrange the Pivot Gauges. + * @Default {0} + */ + rowsCount?: number; + + /** Sets the scale values such as pointers, indicators, etc... for PivotGauge. + * @Default {{}} + */ + scales?: any; + + /** Allows the user to set the custom name for the methods at service-end, communicated during AJAX post. + * @Default {{}} + */ + serviceMethodSettings?: ServiceMethodSettings; + + /** Enables/disables the header labels in PivotGauge. + * @Default {true} + */ + showHeaderLabel?: boolean; /** Connects the service using the specified URL for any server updates on server mode operation. * @Default {“”} */ - url?: string; + url?: string; - /** Sets the mode for the PivotGauge widget for binding either OLAP or Relational data source. - * @Default {ej.Pivot.AnalysisMode.Pivot} - */ - analysisMode?: ej.Pivot.AnalysisMode | string; + /** Sets the mode for the PivotGauge widget for binding either OLAP or Relational data source. + * @Default {ej.Pivot.AnalysisMode.Pivot} + */ + analysisMode?: ej.Pivot.AnalysisMode|string; - /** Sets the mode for the PivotGauge widget for binding data source either in server-side or client-side. - * @Default {ej.Pivot.OperationalMode.ClientMode} - */ - operationalMode?: ej.Pivot.OperationalMode | string; + /** Sets the mode for the PivotGauge widget for binding data source either in server-side or client-side. + * @Default {ej.Pivot.OperationalMode.ClientMode} + */ + operationalMode?: ej.Pivot.OperationalMode|string; - /** Triggers when it reaches client-side after any AJAX request. */ - afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; + /** Triggers when it reaches client-side after any AJAX request. + */ + afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; - /** Triggers before any AJAX request is passed from PivotGauge to service methods. */ - beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; + /** Triggers before any AJAX request is passed from PivotGauge to service methods. + */ + beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; - /** Triggers before populating the pivot engine on operating in client mode. */ - beforePivotEnginePopulate?(e: BeforePivotEnginePopulateEventArgs): void; + /** Triggers before populating the pivot engine on operating in client mode. + */ + beforePivotEnginePopulate?(e: BeforePivotEnginePopulateEventArgs): void; - /** Triggers when PivotGauge started loading at client-side. */ - load?(e: LoadEventArgs): void; + /** Triggers when PivotGauge started loading at client-side. + */ + load?(e: LoadEventArgs): void; - /** Triggers when PivotGauge widget completes all operations at client-side after any AJAX request. */ - renderComplete?(e: RenderCompleteEventArgs): void; + /** Triggers when PivotGauge widget completes all operations at client-side after any AJAX request. + */ + renderComplete?(e: RenderCompleteEventArgs): void; - /** Triggers when any error occurred during AJAX request. */ - renderFailure?(e: RenderFailureEventArgs): void; + /** Triggers when any error occurred during AJAX request. + */ + renderFailure?(e: RenderFailureEventArgs): void; - /** Triggers when PivotGauge successfully reaches client-side after any AJAX request. */ - renderSuccess?(e: RenderSuccessEventArgs): void; - } + /** Triggers when PivotGauge successfully reaches client-side after any AJAX request. + */ + renderSuccess?(e: RenderSuccessEventArgs): void; + } - export interface AfterServiceInvokeEventArgs { + export interface AfterServiceInvokeEventArgs { - /** returns the custom object bound with PivotGauge control. - */ - customObject?: any; + /** returns the custom object bound with PivotGauge control. + */ + customObject?: any; - /** returns the HTML element of PivotGauge control. - */ - element?: any; - } + /** returns the HTML element of PivotGauge control. + */ + element?: any; + } - export interface BeforeServiceInvokeEventArgs { + export interface BeforeServiceInvokeEventArgs { - /** returns the custom object bound with PivotGauge control. - */ - customObject?: any; + /** returns the custom object bound with PivotGauge control. + */ + customObject?: any; - /** returns the HTML element of PivotGauge control. - */ - element?: any; - } + /** returns the HTML element of PivotGauge control. + */ + element?: any; + } - export interface BeforePivotEnginePopulateEventArgs { + export interface BeforePivotEnginePopulateEventArgs { - /** returns the current instance of PivotGauge control. - */ - gaugeObject?: any; - } + /** returns the current instance of PivotGauge control. + */ + gaugeObject?: any; + } - export interface LoadEventArgs { + export interface LoadEventArgs { - /** returns the current action of PivotGauge control. - */ - action?: string; + /** returns the current action of PivotGauge control. + */ + action?: string; - /** returns the model of PivotGauge control. - */ - model?: any; + /** returns the model of PivotGauge control. + */ + model?: any; - /** returns the HTML element of the widget. - */ - element?: any; + /** returns the HTML element of the widget. + */ + element?: any; - /** returns the custom object bound to the control. - */ - customObject?: any; - } + /** returns the custom object bound to the control. + */ + customObject?: any; + } - export interface RenderCompleteEventArgs { + export interface RenderCompleteEventArgs { - /** returns the custom object bound with PivotGauge control. - */ - customObject?: any; + /** returns the custom object bound with PivotGauge control. + */ + customObject?: any; - /** returns the HTML element of PivotGauge control. - */ - element?: any; - } + /** returns the HTML element of PivotGauge control. + */ + element?: any; + } - export interface RenderFailureEventArgs { + export interface RenderFailureEventArgs { - /** returns the HTML element of PivotGauge control. - */ - element?: any; + /** returns the HTML element of PivotGauge control. + */ + element?: any; - /** returns the custom object bound with the control. - */ - customObject?: any; + /** returns the custom object bound with the control. + */ + customObject?: any; - /** returns the error message with error code. - */ - message?: string; - } + /** returns the error message with error code. + */ + message?: string; + } - export interface RenderSuccessEventArgs { + export interface RenderSuccessEventArgs { - /** returns the HTML element of PivotGauge control. - */ - element?: any; + /** returns the HTML element of PivotGauge control. + */ + element?: any; - /** returns the custom object bound with the control. - */ - customObject?: any; - } + /** returns the custom object bound with the control. + */ + customObject?: any; + } - export interface DataSourceColumnsFilterItems { + export interface DataSourceColumnsFilterItems { - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } - export interface DataSourceColumn { + export interface DataSourceColumn { - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceColumnsFilterItems; - } + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceColumnsFilterItems; + } - export interface DataSourceRowsFilterItems { + export interface DataSourceRowsFilterItems { - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceRow { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceRow { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceRowsFilterItems; - } - - export interface DataSourceValuesMeasure { - - /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. - */ - fieldName?: string; - } - - export interface DataSourceValue { - - /** Allows the user to bind the item by using its unique name as field name for Relational datasource. - */ - fieldName?: string; - - /** Allows the user to set the display caption for an item for Relational datasource. - */ - fieldCaption?: string; - - /** This holds the list of unique names of measures to bind them from the OLAP cube. - * @Default {[]} - */ - measures?: DataSourceValuesMeasure[]; - - /** Allows to set the axis name to place the measures items. - * @Default {rows} - */ - axis?: string; - - /** Indicates whether the field is a calculated field or not with Relational datasource. - * @Default {false} - */ - isCalculatedField?: boolean; - - /** Allows to set the formula for calculation of values for calculated members in Relational datasource. - */ - formula?: string; - } - - export interface DataSourceFiltersFilterItems { - - /** Sets the type of filter whether to include/exclude the mentioned values. - * @Default {ej.PivotAnalysis.FilterType.Exclude} - */ - filterType?: ej.PivotAnalysis.FilterType | string; - - /** Contains the collection of items to be included/excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceRowsFilterItems; + } + + export interface DataSourceValuesMeasure { + + /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. + */ + fieldName?: string; + } + + export interface DataSourceValue { + + /** Allows the user to bind the item by using its unique name as field name for Relational datasource. + */ + fieldName?: string; + + /** Allows the user to set the display caption for an item for Relational datasource. + */ + fieldCaption?: string; + + /** This holds the list of unique names of measures to bind them from the OLAP cube. + * @Default {[]} + */ + measures?: DataSourceValuesMeasure[]; + + /** Allows to set the axis name to place the measures items. + * @Default {rows} + */ + axis?: string; + + /** Indicates whether the field is a calculated field or not with Relational datasource. + * @Default {false} + */ + isCalculatedField?: boolean; + + /** Allows to set the formula for calculation of values for calculated members in Relational datasource. + */ + formula?: string; + } + + export interface DataSourceFiltersFilterItems { + + /** Sets the type of filter whether to include/exclude the mentioned values. + * @Default {ej.PivotAnalysis.FilterType.Exclude} + */ + filterType?: ej.PivotAnalysis.FilterType|string; + + /** Contains the collection of items to be included/excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceFilter { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceFiltersFilterItems; + } + + export interface DataSource { + + /** Contains the respective cube name from OLAP database as string type. + * @Default {“”} + */ + cube?: string; + + /** To set the data source name to fetch data from that. + * @Default {“”} + */ + sourceInfo?: string; + + /** Set the provider name for PivotGauge to identify whether the provider is SSAS or Mondrian. + * @Default {ssas} + */ + providerName?: string; + + /** Provides the raw data source for the PivotGauge. + * @Default {null} + */ + data?: any; + + /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. + * @Default {“”} + */ + catalog?: string; + + /** Lists out the items to bind in columns section. + * @Default {[]} + */ + columns?: DataSourceColumn[]; + + /** Lists out the items to bind in rows section. + * @Default {[]} + */ + rows?: DataSourceRow[]; + + /** Lists out the items supports calculation in PivotGauge. + * @Default {[]} + */ + values?: DataSourceValue[]; + + /** Lists out the items which supports filtering of values without displaying the members in UI in PivotGauge. + * @Default {[]} + */ + filters?: DataSourceFilter[]; + } + + export interface LabelFormatSettings { + + /** Allows the user to change the number format of the label values in PivotGauge. + * @Default {ej.PivotGauge.NumberFormat.Default} + */ + numberFormat?: ej.PivotGauge.NumberFormat|string; + + /** Allows you to set the number of digits displayed after decimal point. + * @Default {5} + */ + decimalPlaces?: number; + + /** Allows you to add a text at the beginning of the label. + */ + prefixText?: string; + + /** Allows you to add text at the end of the label. + */ + suffixText?: string; + } + + export interface ServiceMethodSettings { + + /** Allows the user to set the custom name for the service method responsible for initializing PivotGauge. + * @Default {InitializeGauge} + */ + initialize?: string; + } + + enum NumberFormat { + + ///To set default format for label values. + Default, + + ///To set currency format for label values. + Currency, + + ///To set percentage format for label values. + Percentage, + + ///To set fraction format for label values. + Fraction, + + ///To set scientific format for label values. + Scientific, + + ///To set text format for label values. + Text, + + ///To set notation format for label values. + Notation + } + + } + + class PivotTreeMap extends ej.Widget { + static fn: PivotTreeMap; + constructor(element: JQuery | Element, options?: PivotTreeMap.Model); + static Locale: any; + model: PivotTreeMap.Model; + defaults: PivotTreeMap.Model; + + /** Performs an asynchronous HTTP (AJAX) request. + * @returns {void} + */ + doAjaxPost(): void; + + /** Returns the OlapReport string maintained along with the axis elements information. + * @returns {string} + */ + getOlapReport(): string; + + /** Sets the OlapReport string along with the axis information and maintains it in a property. + * @returns {void} + */ + setOlapReport(): void; + + /** Returns the JSON records formed to render the control. + * @returns {any[]} + */ + getJSONRecords(): any[]; + + /** Sets the JSON records to render the control. + * @returns {void} + */ + setJSONRecords(): void; + + /** Renders the control with the pivot engine obtained from OLAP cube. + * @returns {void} + */ + generateJSON(): void; + + /** This function receives the JSON formatted datasource to render the PivotTreeMap control. + * @returns {void} + */ + renderTreeMapFromJSON(): void; + + /** This function receives the update from service-end, which would be utilized for rendering the widget. + * @returns {void} + */ + renderControlSuccess(): void; + } + export namespace PivotTreeMap { + + export interface Model { + + /** Specifies the CSS class to PivotTreeMap to achieve custom theme. + * @Default {“”} + */ + cssClass?: string; + + /** Initializes the data source for the PivotTreeMap widget, when it functions completely on client-side. + * @Default {{}} + */ + dataSource?: DataSource; + + /** Object utilized to pass additional information between client-end and service-end. + * @Default {{}} + */ + customObject?: any; + + /** Allows the user to enable PivotTreeMap’s responsiveness in the browser layout. + * @Default {false} + */ + isResponsive?: boolean; + + /** Allows the user to set the localized language for the widget. + * @Default {en-US} + */ + locale?: string; + + /** Sets the mode for the PivotTreeMap widget for binding data source either in server-side or client-side. + * @Default {ej.Pivot.OperationalMode.ClientMode} + */ + operationalMode?: ej.Pivot.OperationalMode|string; + + /** Allows the user to set custom name for the methods at service-end, communicated on AJAX post. + * @Default {{}} + */ + serviceMethodSettings?: ServiceMethodSettings; + + /** Connects the service using the specified URL for any server updates. + * @Default {“”} + */ + url?: string; + + /** Triggers when it reaches client-side after any AJAX request. + */ + afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; + + /** Triggers before any AJAX request is passed from PivotTreeMap to service methods. + */ + beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; + + /** Triggers when PivotTreeMap starts to render. + */ + load?(e: LoadEventArgs): void; + + /** Triggers before populating the pivot engine from datasource. + */ + beforePivotEnginePopulate?(e: BeforePivotEnginePopulateEventArgs): void; + + /** Triggers when drill up/down happens in PivotTreeMap control. And it returns the outer HTML of PivotTreeMap control. + */ + drillSuccess?(e: DrillSuccessEventArgs): void; + + /** Triggers when PivotTreeMap widget completes all operations at client-side after any AJAX request. + */ + renderComplete?(e: RenderCompleteEventArgs): void; + + /** Triggers when any error occurred during AJAX request. + */ + renderFailure?(e: RenderFailureEventArgs): void; + + /** Triggers when PivotTreeMap successfully reaches client-side after any AJAX request. + */ + renderSuccess?(e: RenderSuccessEventArgs): void; + } + + export interface AfterServiceInvokeEventArgs { + + /** returns the current action of PivotTreeMap control. + */ + action?: string; + + /** returns the custom object bound with PivotTreeMap control. + */ + customObject?: any; - export interface DataSourceFilter { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; + /** returns the HTML element of PivotTreeMap control. + */ + element?: any; + } + + export interface BeforeServiceInvokeEventArgs { - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceFiltersFilterItems; - } + /** returns the current action of PivotTreeMap control. + */ + action?: string; - export interface DataSource { - - /** Contains the respective cube name from OLAP database as string type. - * @Default {“”} - */ - cube?: string; - - /** Provides the raw data source for the PivotGauge. - * @Default {null} - */ - data?: any; - - /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. - * @Default {“”} - */ - catalog?: string; - - /** Lists out the items to bind in columns section. - * @Default {[]} - */ - columns?: DataSourceColumn[]; - - /** Lists out the items to bind in rows section. - * @Default {[]} - */ - rows?: DataSourceRow[]; - - /** Lists out the items supports calculation in PivotGauge. - * @Default {[]} - */ - values?: DataSourceValue[]; - - /** Lists out the items which supports filtering of values without displaying the members in UI in PivotGauge. - * @Default {[]} - */ - filters?: DataSourceFilter[]; - } - - export interface LabelFormatSettings { - - /** Allows the user to change the number format of the label values in PivotGauge. - * @Default {ej.PivotGauge.NumberFormat.Default} - */ - numberFormat?: ej.PivotGauge.NumberFormat | string; - - /** Allows you to set the number of digits displayed after decimal point. - * @Default {5} - */ - decimalPlaces?: number; - - /** Allows you to add a text at the beginning of the label. - */ - prefixText?: string; - - /** Allows you to add text at the end of the label. - */ - suffixText?: string; - } - - export interface ServiceMethodSettings { - - /** Allows the user to set the custom name for the service method responsible for initializing PivotGauge. - * @Default {InitializeGauge} - */ - initialize?: string; - } - - enum NumberFormat { - - ///To set default format for label values. - Default, - - ///To set currency format for label values. - Currency, - - ///To set percentage format for label values. - Percentage, - - ///To set fraction format for label values. - Fraction, - - ///To set scientific format for label values. - Scientific, - - ///To set text format for label values. - Text, - - ///To set notation format for label values. - Notation - } - - } - - class PivotTreeMap extends ej.Widget { - static fn: PivotTreeMap; - constructor(element: JQuery | Element, options?: PivotTreeMap.Model); - static Locale: any; - model: PivotTreeMap.Model; - defaults: PivotTreeMap.Model; - - /** Performs an asynchronous HTTP (AJAX) request. - * @returns {void} - */ - doAjaxPost(): void; - - /** Returns the OlapReport string maintained along with the axis elements information. - * @returns {string} - */ - getOlapReport(): string; - - /** Sets the OlapReport string along with the axis information and maintains it in a property. - * @returns {void} - */ - setOlapReport(): void; - - /** Returns the JSON records formed to render the control. - * @returns {Array} - */ - getJSONRecords(): any[]; - - /** Sets the JSON records to render the control. - * @returns {void} - */ - setJSONRecords(): void; - - /** Renders the control with the pivot engine obtained from OLAP cube. - * @returns {void} - */ - generateJSON(): void; + /** returns the custom object bound with PivotTreeMap control. + */ + customObject?: any; - /** This function receives the JSON formatted datasource to render the PivotTreeMap control. - * @returns {void} - */ - renderTreeMapFromJSON(): void; + /** returns the HTML element of PivotTreeMap control. + */ + element?: any; + } - /** This function receives the update from service-end, which would be utilized for rendering the widget. - * @returns {void} - */ - renderControlSuccess(): void; - } - export namespace PivotTreeMap { + export interface LoadEventArgs { - export interface Model { + /** returns the current action of PivotTreeMap control. + */ + action?: string; - /** Specifies the CSS class to PivotTreeMap to achieve custom theme. - * @Default {“”} - */ - cssClass?: string; + /** returns the custom object bound with PivotTreeMap control. + */ + customObject?: any; - /** Initializes the data source for the PivotTreeMap widget, when it functions completely on client-side. - * @Default {{}} - */ - dataSource?: DataSource; + /** returns the HTML element of PivotTreeMap control. + */ + element?: any; + } - /** Object utilized to pass additional information between client-end and service-end. - * @Default {{}} - */ - customObject?: any; + export interface BeforePivotEnginePopulateEventArgs { - /** Allows the user to enable PivotTreeMap’s responsiveness in the browser layout. - * @Default {false} - */ - isResponsive?: boolean; + /** returns the current instance of PivotTreeMap control. + */ + treeMapObject?: any; + } - /** Allows the user to set the localized language for the widget. - * @Default {en-US} - */ - locale?: string; + export interface DrillSuccessEventArgs { - /** Sets the mode for the PivotTreeMap widget for binding data source either in server-side or client-side. - * @Default {ej.Pivot.OperationalMode.ClientMode} - */ - operationalMode?: ej.Pivot.OperationalMode | string; + /** return the HTML element of PivotTreeMap control. + */ + element?: any; + } - /** Allows the user to set custom name for the methods at service-end, communicated on AJAX post. - * @Default {{}} - */ - serviceMethodSettings?: ServiceMethodSettings; + export interface RenderCompleteEventArgs { - /** Connects the service using the specified URL for any server updates. - * @Default {“”} - */ - url?: string; + /** returns the current action of PivotTreeMap control. + */ + action?: string; - /** Triggers when it reaches client-side after any AJAX request. */ - afterServiceInvoke?(e: AfterServiceInvokeEventArgs): void; + /** returns the custom object bound with PivotTreeMap control. + */ + customObject?: any; - /** Triggers before any AJAX request is passed from PivotTreeMap to service methods. */ - beforeServiceInvoke?(e: BeforeServiceInvokeEventArgs): void; + /** returns the HTML element of PivotTreeMap control. + */ + element?: any; + } - /** Triggers when PivotTreeMap starts to render. */ - load?(e: LoadEventArgs): void; + export interface RenderFailureEventArgs { - /** Triggers before populating the pivot engine from datasource. */ - beforePivotEnginePopulate?(e: BeforePivotEnginePopulateEventArgs): void; - - /** Triggers when drill up/down happens in PivotTreeMap control. And it returns the outer HTML of PivotTreeMap control. */ - drillSuccess?(e: DrillSuccessEventArgs): void; + /** returns the current action of PivotTreeMap control. + */ + action?: string; - /** Triggers when PivotTreeMap widget completes all operations at client-side after any AJAX request. */ - renderComplete?(e: RenderCompleteEventArgs): void; + /** returns the custom object bound with PivotTreeMap control. + */ + customObject?: any; - /** Triggers when any error occurred during AJAX request. */ - renderFailure?(e: RenderFailureEventArgs): void; + /** returns the HTML element of PivotTreeMap control. + */ + element?: any; - /** Triggers when PivotTreeMap successfully reaches client-side after any AJAX request. */ - renderSuccess?(e: RenderSuccessEventArgs): void; - } + /** returns the error stack trace of the original exception. + */ + message?: string; + } - export interface AfterServiceInvokeEventArgs { + export interface RenderSuccessEventArgs { - /** returns the current action of PivotTreeMap control. - */ - action?: string; + /** returns the current action of PivotTreeMap control. + */ + action?: string; - /** returns the custom object bound with PivotTreeMap control. - */ - customObject?: any; + /** returns the custom object bound with PivotTreeMap control. + */ + customObject?: any; - /** returns the HTML element of PivotTreeMap control. - */ - element?: any; - } + /** returns the HTML element of PivotTreeMap control. + */ + element?: any; + } - export interface BeforeServiceInvokeEventArgs { + export interface DataSourceColumnsFilterItems { - /** returns the current action of PivotTreeMap control. - */ - action?: string; + /** Contains the collection of items to be excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } - /** returns the custom object bound with PivotTreeMap control. - */ - customObject?: any; + export interface DataSourceColumn { - /** returns the HTML element of PivotTreeMap control. - */ - element?: any; - } + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; - export interface LoadEventArgs { + /** Allows the user to indicate whether the added item is a named set or not. + * @Default {false} + */ + isNamedSets?: boolean; - /** returns the current action of PivotTreeMap control. - */ - action?: string; + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceColumnsFilterItems; + } + + export interface DataSourceRowsFilterItems { + + /** Contains the collection of items to be excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceRow { - /** returns the custom object bound with PivotTreeMap control. - */ - customObject?: any; + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Allows the user to indicate whether the added item is a named set or not. + * @Default {false} + */ + isNamedSets?: boolean; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceRowsFilterItems; + } + + export interface DataSourceValuesMeasure { + + /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. + */ + fieldName?: string; + } + + export interface DataSourceValue { + + /** This holds the list of unique names of measures to bind them from the OLAP cube. + * @Default {[]} + */ + measures?: DataSourceValuesMeasure[]; + + /** Allows to set the axis name to place the measures items. + * @Default {rows} + */ + axis?: string; + } + + export interface DataSourceFiltersFilterItems { + + /** Contains the collection of items to be excluded among the field members. + * @Default {[]} + */ + values?: any[]; + } + + export interface DataSourceFilter { + + /** Allows the user to bind the item by using its unique name as field name. + */ + fieldName?: string; + + /** Applies filter to the field members. + * @Default {null} + */ + filterItems?: DataSourceFiltersFilterItems; + } + + export interface DataSource { + + /** Provides the raw data source for the PivotTreeMap. + * @Default {null} + */ + data?: any; + + /** Contains the respective cube name from OLAP database as string type. + * @Default {“”} + */ + cube?: string; + + /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. + * @Default {“”} + */ + catalog?: string; + + /** Lists out the items to be displayed as series of PivotTreeMap. + * @Default {[]} + */ + columns?: DataSourceColumn[]; + + /** Lists out the items to be displayed as segments of PivotTreeMap. + * @Default {[]} + */ + rows?: DataSourceRow[]; + + /** Lists out the items supports calculation in PivotTreeMap. + * @Default {[]} + */ + values?: DataSourceValue[]; + + /** Lists out the items which supports filtering of values without displaying the members in UI in PivotTreeMap. + * @Default {[]} + */ + filters?: DataSourceFilter[]; + } + + export interface ServiceMethodSettings { + + /** Allows the user to set the custom name for the service method responsible for initializing PivotTreeMap. + * @Default {InitializeTreemap} + */ + initialize?: string; + + /** Allows the user to set the custom name for the service method responsible for drilling up/down operation in PivotTreeMap. + * @Default {DrillTreeMap} + */ + drillDown?: string; + } + } + + class Schedule extends ej.Widget { + static fn: Schedule; + constructor(element: JQuery | Element, options?: Schedule.Model); + static Locale: any; + model: Schedule.Model; + defaults: Schedule.Model; + + /** This method is used to delete the appointment based on the guid value or the appointment data passed to it. + * @param {string|any} GUID value of an appointment element or an appointment object + * @returns {void} + */ + deleteAppointment(data: string|any): void; + + /** Destroys the Schedule widget. All the events bound using this._on are unbound automatically and the control is moved to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** Exports the appointments from the Schedule control. + * @param {string} It refers the controller action name to redirect. (For MVC) + * @param {string} It refers the server event name.(For ASP) + * @param {string|number} Pass the id of an appointment, in case if a single appointment needs to be exported. Otherwise, it takes the null value. + * @returns {void} + */ + exportSchedule(action: string, serverEvent: string, id: string|number): void; + + /** Searches and filters the appointments from appointment list of Schedule control. + * @param {any[]} Holds array of one or more conditional objects for filtering the appointments based on it. + * @returns {any[]} + */ + filterAppointments(filterConditions: any[]): any[]; + + /** Gets the complete appointment list of Schedule control. + * @returns {any[]} + */ + getAppointments(): any[]; + + /** Prints the entire Scheduler or a single appointment based on the appointment data passed as an argument to it. Simply calling the print() method, without passing any argument will + * print the entire Scheduler. + * @param {any} Either accepts no arguments at all or else accepts an appointment object. + * @returns {void} + */ + print(data: any): void; + + /** Refreshes the Scroller of Scheduler while using it within some other controls or application. + * @returns {void} + */ + refreshScroller(): void; + + /** It is used to save the appointment. The appointment object is based on the argument passed to this method. + * @param {any} appointment object which includes appointment details + * @returns {void} + */ + saveAppointment(appointmentObject: any): void; + + /** Generate the recurrence rule as a string, based on the repeat options selected. + * @returns {string} + */ + getRecurrenceRule(): string; + + /** Retrieves the time slot information (start/end time and resource details) of the given element. The parameter is optional - as when no element is passed to it, the currently + * selected cell information will be retrieved. When multiple cells are selected in the Scheduler, it is not necessary to provide the parameter. + * @param {any} TD element object rendered as Scheduler work cell + * @returns {any} + */ + getSlotByElement(element: any): any; + + /** Searches the appointments from the appointment list of Schedule control based on the provided search string in its argument list. + * @param {any|string} Defines the search word or the filter condition, based on which the appointments are filtered from the list. + * @param {string} Defines the field name on which the search is to be made. + * @param {ej.FilterOperators|string} Defines the filterOperator value for the search operation. + * @param {boolean} Defines the ignoreCase value for performing the search operation. + * @returns {any[]} + */ + searchAppointments(searchString: any|string, field: string, operator: ej.FilterOperators|string, ignoreCase: boolean): any[]; + + /** Refreshes the entire Schedule control. + * @returns {void} + */ + refresh(): void; + + /** Refreshes only the appointment elements within the Schedule control. + * @returns {void} + */ + refreshAppointments(): void; + + /** Passes the server-side action and data to the client-side for rendering the modified appointment list on the Schedule control. + * @returns {void} + */ + notifyChanges(): void; + } + export namespace Schedule { + + export interface Model { + + /** When set to true, Schedule allows the appointments to be dragged and dropped at required time. + * @Default {true} + */ + allowDragAndDrop?: boolean; + + /** When set to true, allows the user to create/edit appointments inline - simply through a single click made either on the Scheduler cells or on the existing appointment’s Subject + * text respectively. Pressing enter key after the new Subject text typed onto the inline created text box, will save/update the appointments appropriately. + * @Default {false} + */ + allowInline?: boolean; + + /** When set to true, Scheduler allows interaction through keyboard shortcut keys. + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** It includes the dataSource option and the fields related to Schedule appointments. The appointment fields within the appointmentSettings can accept both string and object type + * values. To apply validation rules on the appointment window fields, then the appointment fields needs to be defined with object type values. + */ + appointmentSettings?: AppointmentSettings; + + /** Template design that applies on the Schedule appointments. All the field names that are mapped from dataSource to the appropriate field properties within the appointmentSettings + * can be used within the template. + * @Default {null} + */ + appointmentTemplateId?: string; + + /** Accepts the custom CSS class name that defines specific user-defined styles and themes to be applied for partial or complete elements of the Schedule. + */ + cssClass?: string; + + /** Sets various categorize colors to the Schedule appointments to differentiate it. + */ + categorizeSettings?: CategorizeSettings; + + /** Sets the height for Schedule cells. + * @Default {20px} + */ + cellHeight?: string; + + /** Sets the width for Schedule cells. + */ + cellWidth?: string; + + /** Holds all options related to the context menu settings of Scheduler. + */ + contextMenuSettings?: ContextMenuSettings; + + /** Sets current date of the Schedule. The Schedule displays initially with the date that is provided here. + * @Default {new Date()} + */ + currentDate?: any; + + /** Sets current view of the Schedule. Schedule renders initially with the view that is specified here. The available views are day, week, workweek, month, agenda and custom view - + * from which any one of the required view can be set to the Schedule. It accepts both string or enum values. The enum values that are accepted by + * currentView(ej.Schedule.CurrentView) are as follows, + * @Default {ej.Schedule.CurrentView.Week} + */ + currentView?: string|ej.Schedule.CurrentView; + + /** Sets the date format for Schedule. + */ + dateFormat?: string; + + /** When set to true, shows the previous/next appointment navigator button on the Scheduler. + * @Default {true} + */ + showAppointmentNavigator?: boolean; + + /** When set to true, enables the resize behavior of appointments within the Schedule. + * @Default {true} + */ + enableAppointmentResize?: boolean; + + /** When set to true, enables the loading of Schedule appointments based on your demand. With this load on demand concept, the data consumption of the Schedule can be limited. + * @Default {false} + */ + enableLoadOnDemand?: boolean; + + /** Saves the current model value to browser cookies for state maintenance. When the page gets refreshed, Schedule control values are retained. + * @Default {false} + */ + enablePersistence?: boolean; + + /** When set to true, the Schedule layout and behavior changes as per the common RTL conventions. + * @Default {false} + */ + enableRTL?: boolean; + + /** Sets the end hour time limit to be displayed on the Schedule. + * @Default {24} + */ + endHour?: number; + + /** To configure resource grouping on the Schedule. + */ + group?: Group; + + /** Sets the height of the Schedule. Accepts both pixel and percentage values. + * @Default {1120px} + */ + height?: string; + + /** To define the work hours within the Schedule control. + */ + workHours?: WorkHours; + + /** When set to true, enables the Schedule to observe Daylight Saving Time for supported timezones. + * @Default {false} + */ + isDST?: boolean; + + /** When set to true, adapts the Schedule layout to fit the screen size of devices on which it renders. + * @Default {true} + */ + isResponsive?: boolean; + + /** Sets the specific culture to the Schedule. + * @Default {en-US} + */ + locale?: string; + + /** Sets the maximum date limit to display on the Schedule. Setting maxDate with specific date value disallows the Schedule to navigate beyond that date. + * @Default {new Date(2099, 12, 31)} + */ + maxDate?: any; + + /** Sets the minimum date limit to display on the Schedule. Setting minDate with specific date value disallows the Schedule to navigate beyond that date. + * @Default {new Date(1900, 01, 01)} + */ + minDate?: any; + + /** Sets the mode of Schedule rendering either in a vertical or horizontal direction. It accepts either string("vertical" or "horizontal") or enum values. The enum + * values that are accepted by orientation(ej.Schedule.Orientation) are as follows, + * @Default {ej.Schedule.Orientation.Vertical} + */ + orientation?: string|ej.Schedule.Orientation; + + /** Holds all the options related to priority settings of the Schedule. + */ + prioritySettings?: PrioritySettings; + + /** When set to true, disables the interaction with the Schedule appointments, simply allowing the date and view navigation to occur. + * @Default {false} + */ + readOnly?: boolean; + + /** Holds all the options related to reminder settings of the Schedule. + */ + reminderSettings?: ReminderSettings; + + /** Defines the specific start and end dates to be rendered in the Schedule control. To render such user-specified custom date ranges in the Schedule control, set the currentView + * property to ej.Schedule.CurrentView.CustomView. + * @Default {null} + */ + renderDates?: RenderDates; + + /** Template design that applies on the Schedule resource header. + * @Default {null} + */ + resourceHeaderTemplateId?: string; + + /** Holds all the options related to the resources settings of the Schedule. It is a collection of one or more resource objects, where the levels of resources are rendered on the + * Schedule based on the order of the resource data provided within this collection. + * @Default {null} + */ + resources?: Resource[]; + + /** When set to true, displays the all-day row cells on the Schedule. + * @Default {true} + */ + showAllDayRow?: boolean; + + /** When set to false, hides the weekend days on all the Scheduler views. + * @Default {true} + */ + showWeekend?: boolean; + + /** When set to true, displays the current time indicator on the Schedule. + * @Default {true} + */ + showCurrentTimeIndicator?: boolean; + + /** When set to true, displays the header bar on the Schedule. + * @Default {true} + */ + showHeaderBar?: boolean; + + /** When set to true, displays the location field additionally on Schedule appointment window. + * @Default {false} + */ + showLocationField?: boolean; + + /** When set to false, doesn't render the start and end timezone fields on the Schedule appointment window. + * @Default {true} + */ + showTimeZoneFields?: boolean; + + /** When set to true, displays the quick window for every single click made on the Schedule cells or appointments. + * @Default {true} + */ + showQuickWindow?: boolean; + + /** Sets the start hour time range to be displayed on the Schedule. + * @Default {0} + */ + startHour?: number; + + /** Sets either 12 or 24 hour time mode on the Schedule. It accepts either the string value("12" or "24") or the below mentioned enum values. The enum values that + * are accepted by timeMode(ej.Schedule.TimeMode) are as follows, + * @Default {null} + */ + timeMode?: string|ej.Schedule.TimeMode; + + /** Sets the timezone for the Schedule. + * @Default {null} + */ + timeZone?: string; + + /** Sets the collection of timezone items to be bound to the Schedule. Only the items bound to this property gets listed out in the timezone field of the appointment window. + */ + timeZoneCollection?: TimeZoneCollection; + + /** Defines the view collection to be displayed on the Schedule. By default, it displays all the views namely, Day, Week, WorkWeek and Month. + * @Default {[Day, Week, WorkWeek, Month, Agenda]} + */ + views?: any[]; + + /** Sets the width of the Schedule. Accepts both pixel and percentage values. + * @Default {100%} + */ + width?: string; + + /** When set to true, Schedule allows the validation of recurrence pattern to take place before it is being assigned to the appointments. For example, when one of the instance of + * recurrence appointment is dragged beyond the next or previous instance of the same recurrence appointment, a pop-up is displayed with the validation message disallowing the drag + * functionality. + * @Default {true} + */ + enableRecurrenceValidation?: boolean; + + /** Sets the week to display more than one week appointment summary. + */ + agendaViewSettings?: AgendaViewSettings; + + /** Sets specific day as the starting day of the week. + * @Default {null} + */ + firstDayOfWeek?: string; + + /** Sets different day collection within workWeek view. + * @Default {[Monday, Tuesday, Wednesday, Thursday, Friday]} + */ + workWeek?: any[]; + + /** Allows to pop-up appointment details in a tooltip while hovering over the appointments. + */ + tooltipSettings?: TooltipSettings; + + /** Holds all the options related to the time scale of Scheduler. The timeslots either major or minor slots can be customized with this property. + */ + timeScale?: TimeScale; + + /** When set to true, shows the delete confirmation dialog before deleting an appointment. + * @Default {true} + */ + showDeleteConfirmationDialog?: boolean; + + /** Accepts the id value of the template layout defined for the all-day cells and customizes it. + * @Default {null} + */ + allDayCellsTemplateId?: string; + + /** Accepts the id value of the template layout defined for the work cells and month cells. + * @Default {null} + */ + workCellsTemplateId?: string; + + /** Accepts the id value of the template layout defined for the date header cells and customizes it. + * @Default {null} + */ + dateHeaderTemplateId?: string; + + /** when set to false, allows the height of the work-cells to adjust automatically (either expand or collapse) based on the number of appointment count it has. + * @Default {true} + */ + showOverflowButton?: boolean; + + /** Allows setting draggable area for the Scheduler appointments. Also, turns on the external drag and drop, when set with some specific external drag area name. + */ + appointmentDragArea?: string; + + /** When set to true, displays the other months days from the current month on the Schedule. + * @Default {true} + */ + showNextPrevMonth?: boolean; + + /** Blocks the user-specific time interval on the Scheduler, so that no appointments can be created on that particular time slots. It includes the dataSource option and also the + * fields related to block intervals. + */ + blockoutSettings?: BlockoutSettings; + + /** Triggers on the beginning of every action that starts within the Schedule. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Triggers after the completion of every action within the Schedule. + */ + actionComplete?(e: ActionCompleteEventArgs): void; + + /** Triggers after an appointment is clicked. + */ + appointmentClick?(e: AppointmentClickEventArgs): void; + + /** Triggers before the appointment is being removed from the Scheduler. + */ + beforeAppointmentRemove?(e: BeforeAppointmentRemoveEventArgs): void; + + /** Triggers before the edited appointment is being saved. + */ + beforeAppointmentChange?(e: BeforeAppointmentChangeEventArgs): void; + + /** Triggers on hovering the mouse over the appointments. + */ + appointmentHover?(e: AppointmentHoverEventArgs): void; + + /** Triggers before the new appointment gets saved. + */ + beforeAppointmentCreate?(e: BeforeAppointmentCreateEventArgs): void; + + /** Triggers before the appointment window opens. + */ + appointmentWindowOpen?(e: AppointmentWindowOpenEventArgs): void; + + /** Triggers before the context menu opens. + */ + beforeContextMenuOpen?(e: BeforeContextMenuOpenEventArgs): void; + + /** Triggers after the cell is clicked. + */ + cellClick?(e: CellClickEventArgs): void; + + /** Triggers after the cell is clicked twice. + */ + cellDoubleClick?(e: CellDoubleClickEventArgs): void; + + /** Triggers on hovering the mouse overs the cells. + */ + cellHover?(e: CellHoverEventArgs): void; + + /** Triggers when the Scheduler completely renders on the page. + */ + create?(e: CreateEventArgs): void; + + /** Triggers when the Scheduler and all its sub-components gets destroyed. + */ + destroy?(e: DestroyEventArgs): void; + + /** Triggers while the appointment is being dragged over the work cells. + */ + drag?(e: DragEventArgs): void; + + /** Triggers when the appointment dragging begins. + */ + dragStart?(e: DragStartEventArgs): void; + + /** Triggers when the appointment is dropped. + */ + dragStop?(e: DragStopEventArgs): void; + + /** Triggers after the menu/sub-menu items within the context menu is clicked. + */ + menuItemClick?(e: MenuItemClickEventArgs): void; + + /** Triggers after the Schedule view or date is navigated. + */ + navigation?(e: NavigationEventArgs): void; - /** returns the HTML element of PivotTreeMap control. - */ - element?: any; - } + /** Triggers every time before the elements of the scheduler such as work cells, time cells or header cells and so on renders or re-renders on a page. + */ + queryCellInfo?(e: QueryCellInfoEventArgs): void; - export interface BeforePivotEnginePopulateEventArgs { + /** Triggers when the reminder is raised for an appointment based on the alertBefore value. + */ + reminder?(e: ReminderEventArgs): void; - /** returns the current instance of PivotTreeMap control. - */ - treeMapObject?: any; - } + /** Triggers while resizing the appointment. + */ + resize?(e: ResizeEventArgs): void; - export interface DrillSuccessEventArgs { + /** Triggers when the appointment resizing begins. + */ + resizeStart?(e: ResizeStartEventArgs): void; - /** return the HTML element of PivotTreeMap control. - */ - element?: any; - } + /** Triggers when an appointment resizing stops. + */ + resizeStop?(e: ResizeStopEventArgs): void; - export interface RenderCompleteEventArgs { + /** Triggers when the overflow button is clicked. + */ + overflowButtonClick?(e: OverflowButtonClickEventArgs): void; - /** returns the current action of PivotTreeMap control. - */ - action?: string; + /** Triggers while mouse hovering on the overflow button. + */ + overflowButtonHover?(e: OverflowButtonHoverEventArgs): void; - /** returns the custom object bound with PivotTreeMap control. - */ - customObject?: any; + /** Triggers when any of the keyboard keys are pressed. + */ + keyDown?(e: KeyDownEventArgs): void; - /** returns the HTML element of PivotTreeMap control. - */ - element?: any; - } + /** Triggers after the new appointment is saved. + */ + appointmentCreated?(e: AppointmentCreatedEventArgs): void; - export interface RenderFailureEventArgs { + /** Triggers after an existing appointment is edited. + */ + appointmentChanged?(e: AppointmentChangedEventArgs): void; - /** returns the current action of PivotTreeMap control. - */ - action?: string; + /** Triggers after the appointment is deleted. + */ + appointmentRemoved?(e: AppointmentRemovedEventArgs): void; + } - /** returns the custom object bound with PivotTreeMap control. - */ - customObject?: any; + export interface ActionBeginEventArgs { - /** returns the HTML element of PivotTreeMap control. - */ - element?: any; + /** Returns the current date value. + */ + currentDate?: any; - /** returns the error stack trace of the original exception. - */ - message?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface RenderSuccessEventArgs { + /** Returns the current view value. + */ + currentView?: string; - /** returns the current action of PivotTreeMap control. - */ - action?: string; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** returns the custom object bound with PivotTreeMap control. - */ - customObject?: any; + /** Returns the action begin request type. + */ + requestType?: string; - /** returns the HTML element of PivotTreeMap control. - */ - element?: any; - } + /** Returns the target of the click. + */ + target?: any; - export interface DataSourceColumnsFilterItems { + /** Returns the name of the event. + */ + type?: string; - /** Contains the collection of items to be excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } + /** Returns the save appointment value. + */ + data?: any; - export interface DataSourceColumn { + /** Returns the id of delete appointment. + */ + id?: number; + } - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; + export interface ActionCompleteEventArgs { - /** Allows the user to indicate whether the added item is a named set or not. - * @Default {false} - */ - isNamedSets?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceColumnsFilterItems; - } - - export interface DataSourceRowsFilterItems { - - /** Contains the collection of items to be excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceRow { + /** Returns the data about view change action. + */ + data?: any; - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Allows the user to indicate whether the added item is a named set or not. - * @Default {false} - */ - isNamedSets?: boolean; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceRowsFilterItems; - } - - export interface DataSourceValuesMeasure { - - /** Allows the user to bind the measure from OLAP datasource by using its unique name as field name. - */ - fieldName?: string; - } - - export interface DataSourceValue { - - /** This holds the list of unique names of measures to bind them from the OLAP cube. - * @Default {[]} - */ - measures?: DataSourceValuesMeasure[]; - - /** Allows to set the axis name to place the measures items. - * @Default {rows} - */ - axis?: string; - } - - export interface DataSourceFiltersFilterItems { - - /** Contains the collection of items to be excluded among the field members. - * @Default {[]} - */ - values?: any[]; - } - - export interface DataSourceFilter { - - /** Allows the user to bind the item by using its unique name as field name. - */ - fieldName?: string; - - /** Applies filter to the field members. - * @Default {null} - */ - filterItems?: DataSourceFiltersFilterItems; - } - - export interface DataSource { - - /** Provides the raw data source for the PivotTreeMap. - * @Default {null} - */ - data?: any; - - /** Contains the respective cube name from OLAP database as string type. - * @Default {“”} - */ - cube?: string; - - /** In connection with an OLAP database, this property contains the database name as string to fetch the data from the given connection string. - * @Default {“”} - */ - catalog?: string; - - /** Lists out the items to be displayed as series of PivotTreeMap. - * @Default {[]} - */ - columns?: DataSourceColumn[]; - - /** Lists out the items to be displayed as segments of PivotTreeMap. - * @Default {[]} - */ - rows?: DataSourceRow[]; - - /** Lists out the items supports calculation in PivotTreeMap. - * @Default {[]} - */ - values?: DataSourceValue[]; - - /** Lists out the items which supports filtering of values without displaying the members in UI in PivotTreeMap. - * @Default {[]} - */ - filters?: DataSourceFilter[]; - } - - export interface ServiceMethodSettings { - - /** Allows the user to set the custom name for the service method responsible for initializing PivotTreeMap. - * @Default {InitializeTreemap} - */ - initialize?: string; - - /** Allows the user to set the custom name for the service method responsible for drilling up/down operation in PivotTreeMap. - * @Default {DrillTreeMap} - */ - drillDown?: string; - } - } - - class Schedule extends ej.Widget { - static fn: Schedule; - constructor(element: JQuery | Element, options?: Schedule.Model); - static Locale: any; - model: Schedule.Model; - defaults: Schedule.Model; - - /** This method is used to delete the appointment based on the guid value or the appointment data passed to it. - * @param {string|any} GUID value of an appointment element or an appointment object - * @returns {void} - */ - deleteAppointment(data: string | any): void; - - /** Destroys the Schedule widget. All the events bound using this._on are unbound automatically and the control is moved to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** Exports the appointments from the Schedule control. - * @param {string} It refers the controller action name to redirect. (For MVC) - * @param {string} It refers the server event name.(For ASP) - * @param {string|number} Pass the id of an appointment, in case if a single appointment needs to be exported. Otherwise, it takes the null value. - * @returns {void} - */ - exportSchedule(action: string, serverEvent: string, id: string | number): void; - - /** Searches and filters the appointments from appointment list of Schedule control. - * @param {Array} Holds array of one or more conditional objects for filtering the appointments based on it. - * @returns {Array} - */ - filterAppointments(filterConditions: any[]): any[]; - - /** Gets the complete appointment list of Schedule control. - * @returns {Array} - */ - getAppointments(): any[]; - - /** Prints the entire Scheduler or a single appointment based on the appointment data passed as an argument to it. Simply calling the print() method, - * without passing any argument will print the entire Scheduler. - * @param {any} Either accepts no arguments at all or else accepts an appointment object. - * @returns {void} - */ - print(data: any): void; - - /** Refreshes the Scroller of Scheduler while using it within some other controls or application. - * @returns {void} - */ - refreshScroller(): void; - - /** It is used to save the appointment. The appointment object is based on the argument passed to this method. - * @param {any} appointment object which includes appointment details - * @returns {void} - */ - saveAppointment(appointmentObject: any): void; - - /** Generate the recurrence rule as a string, based on the repeat options selected. - * @returns {string} - */ - getRecurrenceRule(): string; - - /** Retrieves the time slot information (start/end time and resource details) of the given element. - * The parameter is optional - as when no element is passed to it, the currently selected cell information will be retrieved. When multiple cells are selected in the Scheduler, - * it is not necessary to provide the parameter. - * @param {any} TD element object rendered as Scheduler work cell - * @returns {any} - */ - getSlotByElement(element: any): any; - - /** Searches the appointments from the appointment list of Schedule control based on the provided search string in its argument list. - * @param {any|string} Defines the search word or the filter condition, based on which the appointments are filtered from the list. - * @param {string} Defines the field name on which the search is to be made. - * @param {ej.FilterOperators|string} Defines the filterOperator value for the search operation. - * @param {boolean} Defines the ignoreCase value for performing the search operation. - * @returns {Array} - */ - searchAppointments(searchString: any | string, field: string, operator: ej.FilterOperators | string, ignoreCase: boolean): any[]; - - /** Refreshes the entire Schedule control. - * @returns {void} - */ - refresh(): void; - - /** Refreshes only the appointment elements within the Schedule control. - * @returns {void} - */ - refreshAppointments(): void; - - /** Passes the server-side action and data to the client-side for rendering the modified appointment list on the Schedule control. - * @returns {void} - */ - notifyChanges(): void; - } - export namespace Schedule { - - export interface Model { - - /** When set to true, Schedule allows the appointments to be dragged and dropped at required time. - * @Default {true} - */ - allowDragAndDrop?: boolean; - - /** When set to true, Scheduler allows interaction through keyboard shortcut keys. - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** It includes the dataSource option and the fields related to Schedule appointments. The appointment fields within the appointmentSettings can accept both string and object type values. - * To apply validation rules on the appointment window fields, then the appointment fields needs to be defined with object type values. - */ - appointmentSettings?: AppointmentSettings; - - /** Template design that applies on the Schedule appointments. All the field names that are mapped from dataSource - * to the appropriate field properties within the appointmentSettings can be used within the template. - * @Default {null} - */ - appointmentTemplateId?: string; - - /** Accepts the custom CSS class name that defines specific user-defined styles and themes to be applied for partial or complete elements of the Schedule. - */ - cssClass?: string; - - /** Sets various categorize colors to the Schedule appointments to differentiate it. - */ - categorizeSettings?: CategorizeSettings; - - /** Sets the height for Schedule cells. - * @Default {20px} - */ - cellHeight?: string; - - /** Sets the width for Schedule cells. - */ - cellWidth?: string; - - /** Holds all options related to the context menu settings of Scheduler. - */ - contextMenuSettings?: ContextMenuSettings; - - /** Sets current date of the Schedule. The Schedule displays initially with the date that is provided here. - * @Default {new Date()} - */ - currentDate?: any; - - /** Sets current view of the Schedule. Schedule renders initially with the view that is specified here. The available views are day, week, workweek, month, agenda and - * custom view - from which any one of the required view can be set to the Schedule. It accepts both string or enum values. The enum values that are accepted - * by currentView(ej.Schedule.CurrentView) are as follows, - * @Default {ej.Schedule.CurrentView.Week} - */ - currentView?: string | ej.Schedule.CurrentView; - - /** Sets the date format for Schedule. - */ - dateFormat?: string; - - /** When set to true, shows the previous/next appointment navigator button on the Scheduler. - * @Default {true} - */ - showAppointmentNavigator?: boolean; - - /** When set to true, enables the resize behavior of appointments within the Schedule. - * @Default {true} - */ - enableAppointmentResize?: boolean; - - /** When set to true, enables the loading of Schedule appointments based on your demand. With this load on demand concept, the data consumption of the Schedule can be limited. - * @Default {false} - */ - enableLoadOnDemand?: boolean; - - /** Saves the current model value to browser cookies for state maintenance. When the page gets refreshed, Schedule control values are retained. - * @Default {false} - */ - enablePersistence?: boolean; - - /** When set to true, the Schedule layout and behavior changes as per the common RTL conventions. - * @Default {false} - */ - enableRTL?: boolean; - - /** Sets the end hour time limit to be displayed on the Schedule. - * @Default {24} - */ - endHour?: number; - - /** To configure resource grouping on the Schedule. - */ - group?: Group; - - /** Sets the height of the Schedule. Accepts both pixel and percentage values. - * @Default {1120px} - */ - height?: string; - - /** To define the work hours within the Schedule control. - */ - workHours?: WorkHours; - - /** When set to true, enables the Schedule to observe Daylight Saving Time for supported timezones. - * @Default {false} - */ - isDST?: boolean; - - /** When set to true, adapts the Schedule layout to fit the screen size of devices on which it renders. - * @Default {true} - */ - isResponsive?: boolean; - - /** Sets the specific culture to the Schedule. - * @Default {en-US} - */ - locale?: string; - - /** Sets the maximum date limit to display on the Schedule. Setting maxDate with specific date value disallows the Schedule to navigate beyond that date. - * @Default {new Date(2099, 12, 31)} - */ - maxDate?: any; - - /** Sets the minimum date limit to display on the Schedule. Setting minDate with specific date value disallows the Schedule to navigate beyond that date. - * @Default {new Date(1900, 01, 01)} - */ - minDate?: any; - - /** Sets the mode of Schedule rendering either in a vertical or horizontal direction. It accepts either string("vertical" or "horizontal") or enum values. - * The enum values that are accepted by orientation(ej.Schedule.Orientation) are as follows, - * @Default {ej.Schedule.Orientation.Vertical} - */ - orientation?: string | ej.Schedule.Orientation; - - /** Holds all the options related to priority settings of the Schedule. - */ - prioritySettings?: PrioritySettings; - - /** When set to true, disables the interaction with the Schedule appointments, simply allowing the date and view navigation to occur. - * @Default {false} - */ - readOnly?: boolean; - - /** Holds all the options related to reminder settings of the Schedule. - */ - reminderSettings?: ReminderSettings; - - /** Defines the specific start and end dates to be rendered in the Schedule control. To render such user-specified custom date ranges in the Schedule control, - * set the currentView property to ej.Schedule.CurrentView.CustomView. - * @Default {null} - */ - renderDates?: RenderDates; - - /** Template design that applies on the Schedule resource header. - * @Default {null} - */ - resourceHeaderTemplateId?: string; - - /** Holds all the options related to the resources settings of the Schedule. It is a collection of one or more resource objects, where the levels of resources are rendered on the Schedule - * based on the order of the resource data provided within this collection. - * @Default {null} - */ - resources?: Resource[]; - - /** When set to true, displays the all-day row cells on the Schedule. - * @Default {true} - */ - showAllDayRow?: boolean; - - /** When set to false, hides the weekend days on all the Scheduler views. - * @Default {true} - */ - showWeekend?: boolean; - - /** When set to true, displays the current time indicator on the Schedule. - * @Default {true} - */ - showCurrentTimeIndicator?: boolean; - - /** When set to true, displays the header bar on the Schedule. - * @Default {true} - */ - showHeaderBar?: boolean; - - /** When set to true, displays the location field additionally on Schedule appointment window. - * @Default {false} - */ - showLocationField?: boolean; - - /** When set to false, doesn't render the start and end timezone fields on the Schedule appointment window. - * @Default {true} - */ - showTimeZoneFields?: boolean; - - /** When set to true, displays the quick window for every single click made on the Schedule cells or appointments. - * @Default {true} - */ - showQuickWindow?: boolean; - - /** Sets the start hour time range to be displayed on the Schedule. - * @Default {0} - */ - startHour?: number; - - /** Sets either 12 or 24 hour time mode on the Schedule. It accepts either the string value("12" or "24") or the below mentioned enum values. - * The enum values that are accepted by timeMode(ej.Schedule.TimeMode) are as follows, - * @Default {null} - */ - timeMode?: string | ej.Schedule.TimeMode; - - /** Sets the timezone for the Schedule. - * @Default {null} - */ - timeZone?: string; - - /** Sets the collection of timezone items to be bound to the Schedule. Only the items bound to this property gets listed out in the timezone field of the appointment window. - */ - timeZoneCollection?: TimeZoneCollection; - - /** Defines the view collection to be displayed on the Schedule. By default, it displays all the views namely, Day, Week, WorkWeek and Month. - * @Default {[Day, Week, WorkWeek, Month, Agenda]} - */ - views?: any[]; - - /** Sets the width of the Schedule. Accepts both pixel and percentage values. - * @Default {100%} - */ - width?: string; - - /** When set to true, Schedule allows the validation of recurrence pattern to take place before it is being assigned to the appointments. For example, when one of the instance of - * recurrence appointment is dragged beyond the next or previous instance of the same recurrence appointment, a pop-up is displayed with the validation message disallowing the drag functionality. - * @Default {true} - */ - enableRecurrenceValidation?: boolean; - - /** Sets the week to display more than one week appointment summary. - */ - agendaViewSettings?: AgendaViewSettings; - - /** Sets specific day as the starting day of the week. - * @Default {null} - */ - firstDayOfWeek?: string; - - /** Sets different day collection within workWeek view. - * @Default {[Monday, Tuesday, Wednesday, Thursday, Friday]} - */ - workWeek?: any[]; - - /** Allows to pop-up appointment details in a tooltip while hovering over the appointments. - */ - tooltipSettings?: TooltipSettings; - - /** Holds all the options related to the time scale of Scheduler. The timeslots either major or minor slots can be customized with this property. - */ - timeScale?: TimeScale; - - /** When set to true, shows the delete confirmation dialog before deleting an appointment. - * @Default {true} - */ - showDeleteConfirmationDialog?: boolean; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Accepts the id value of the template layout defined for the all-day cells and customizes it. - * @Default {null} - */ - allDayCellsTemplateId?: string; + /** Returns the action complete request type. + */ + requestType?: string; - /** Accepts the id value of the template layout defined for the work cells and month cells. - * @Default {null} - */ - workCellsTemplateId?: string; + /** Returns the name of the event. + */ + type?: string; - /** Accepts the id value of the template layout defined for the date header cells and customizes it. - * @Default {null} - */ - dateHeaderTemplateId?: string; + /** Returns the appointment data dropped. + */ + appointment?: any; + } - /** when set to false, allows the height of the work-cells to adjust automatically (either expand or collapse) based on the number of appointment count it has. - * @Default {true} - */ - showOverflowButton?: boolean; + export interface AppointmentClickEventArgs { - /** Allows setting draggable area for the Scheduler appointments. Also, turns on the external drag and drop, when set with some specific external drag area name. - */ - appointmentDragArea?: string; + /** Returns the object of appointmentClick event. + */ + object?: any; - /** When set to true, displays the other months days from the current month on the Schedule. - * @Default {true} - */ - showNextPrevMonth?: boolean; + /** Returns the clicked appointment object. + */ + appointment?: any; - /** Blocks the user-specific time interval on the Scheduler, so that no appointments can be created on that particular time slots. - * It includes the dataSource option and also the fields related to block intervals. - */ - blockoutSettings?: BlockoutSettings; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggers on the beginning of every action that starts within the Schedule. */ - actionBegin?(e: ActionBeginEventArgs): void; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Triggers after the completion of every action within the Schedule. */ - actionComplete?(e: ActionCompleteEventArgs): void; + /** Returns the name of the event. + */ + type?: string; + } - /** Triggers after an appointment is clicked. */ - appointmentClick?(e: AppointmentClickEventArgs): void; + export interface BeforeAppointmentRemoveEventArgs { - /** Triggers before the appointment is being removed from the Scheduler. */ - beforeAppointmentRemove?(e: BeforeAppointmentRemoveEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggers before the edited appointment is being saved. */ - beforeAppointmentChange?(e: BeforeAppointmentChangeEventArgs): void; + /** Returns the deleted appointment object. + */ + appointment?: any; - /** Triggers on hovering the mouse over the appointments. */ - appointmentHover?(e: AppointmentHoverEventArgs): void; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Triggers before the new appointment gets saved. */ - beforeAppointmentCreate?(e: BeforeAppointmentCreateEventArgs): void; + /** Returns the name of the Scheduler event. + */ + type?: string; + } - /** Triggers before the appointment window opens. */ - appointmentWindowOpen?(e: AppointmentWindowOpenEventArgs): void; + export interface BeforeAppointmentChangeEventArgs { - /** Triggers before the context menu opens. */ - beforeContextMenuOpen?(e: BeforeContextMenuOpenEventArgs): void; + /** Returns the edited appointment object. + */ + appointment?: any; - /** Triggers after the cell is clicked. */ - cellClick?(e: CellClickEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggers after the cell is clicked twice. */ - cellDoubleClick?(e: CellDoubleClickEventArgs): void; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Triggers on hovering the mouse overs the cells. */ - cellHover?(e: CellHoverEventArgs): void; + /** Returns the name of the Scheduler event. + */ + type?: string; + } - /** Triggers when the Scheduler completely renders on the page. */ - create?(e: CreateEventArgs): void; + export interface AppointmentHoverEventArgs { - /** Triggers when the Scheduler and all its sub-components gets destroyed. */ - destroy?(e: DestroyEventArgs): void; + /** Returns the object of appointmentHover event. + */ + object?: any; - /** Triggers while the appointment is being dragged over the work cells. */ - drag?(e: DragEventArgs): void; + /** Returns the hovered appointment object. + */ + appointment?: any; - /** Triggers when the appointment dragging begins. */ - dragStart?(e: DragStartEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggers when the appointment is dropped. */ - dragStop?(e: DragStopEventArgs): void; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Triggers after the menu/sub-menu items within the context menu is clicked. */ - menuItemClick?(e: MenuItemClickEventArgs): void; + /** Returns the name of the event. + */ + type?: string; + } - /** Triggers after the Schedule view or date is navigated. */ - navigation?(e: NavigationEventArgs): void; + export interface BeforeAppointmentCreateEventArgs { - /** Triggers every time before the elements of the scheduler such as work cells, time cells or header cells and so on renders or re-renders on a page. */ - queryCellInfo?(e: QueryCellInfoEventArgs): void; + /** Returns the appointment object. + */ + appointment?: any; - /** Triggers when the reminder is raised for an appointment based on the alertBefore value. */ - reminder?(e: ReminderEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggers while resizing the appointment. */ - resize?(e: ResizeEventArgs): void; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Triggers when the appointment resizing begins. */ - resizeStart?(e: ResizeStartEventArgs): void; + /** Returns the name of the Scheduler event. + */ + type?: string; + } - /** Triggers when an appointment resizing stops. */ - resizeStop?(e: ResizeStopEventArgs): void; + export interface AppointmentWindowOpenEventArgs { - /** Triggers when the overflow button is clicked. */ - overflowButtonClick?(e: OverflowButtonClickEventArgs): void; + /** returns the object of appointmentWindowOpen event while selecting the detail option from quick window or edit appointment or edit series option. + */ + object?: any; - /** Triggers while mouse hovering on the overflow button. */ - overflowButtonHover?(e: OverflowButtonHoverEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggers when any of the keyboard keys are pressed. */ - keyDown?(e: KeyDownEventArgs): void; + /** Returns the end time of the double clicked cell. + */ + endTime?: any; - /** Triggers after the new appointment is saved. */ - appointmentCreated?(e: AppointmentCreatedEventArgs): void; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Triggers after an existing appointment is edited. */ - appointmentChanged?(e: AppointmentChangedEventArgs): void; + /** Returns the action name that triggers window open. + */ + originalEventType?: string; - /** Triggers after the appointment is deleted. */ - appointmentRemoved?(e: AppointmentRemovedEventArgs): void; - } + /** Returns the start time of the double clicked cell. + */ + startTime?: any; - export interface ActionBeginEventArgs { + /** Returns the target of the double clicked cell. + */ + target?: any; - /** Returns the current date value. - */ - currentDate?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the edit appointment object. + */ + appointment?: any; - /** Returns the current view value. - */ - currentView?: string; + /** Returns the edit occurrence option value. + */ + edit?: boolean; + } - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + export interface BeforeContextMenuOpenEventArgs { - /** Returns the action begin request type. - */ - requestType?: string; + /** Returns the object of beforeContextMenuOpen event. + */ + object?: any; - /** Returns the target of the click. - */ - target?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; + /** Returns the current cell index value. + */ + cellIndex?: number; - /** Returns the save appointment value. - */ - data?: any; + /** Returns the current date value. + */ + currentDate?: any; - /** Returns the id of delete appointment. - */ - id?: number; - } + /** Returns the current resource details, when multiple resources are present, otherwise returns null. + */ + resources?: any; - export interface ActionCompleteEventArgs { + /** Returns the current appointment details while opening the menu from appointment. + */ + appointment?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the object of before opening menu target. + */ + events?: any; - /** Returns the data about view change action. - */ - data?: any; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the action complete request type. - */ - requestType?: string; + export interface CellClickEventArgs { - /** Returns the name of the event. - */ - type?: string; + /** Returns the object of cellClick event. + */ + object?: any; - /** Returns the appointment data dropped. - */ - appointment?: any; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface AppointmentClickEventArgs { + /** Returns the end time of the clicked cell. + */ + endTime?: any; - /** Returns the object of appointmentClick event. - */ - object?: any; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the clicked appointment object. - */ - appointment?: any; + /** Returns the start time of the clicked cell. + */ + startTime?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the target of the clicked cell. + */ + target?: any; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface CellDoubleClickEventArgs { - export interface BeforeAppointmentRemoveEventArgs { + /** Returns the object of cellDoubleClick event. + */ + object?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the deleted appointment object. - */ - appointment?: any; + /** Returns the end time of the double clicked cell. + */ + endTime?: any; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the name of the Scheduler event. - */ - type?: string; - } + /** Returns the start time of the double clicked cell. + */ + startTime?: any; - export interface BeforeAppointmentChangeEventArgs { + /** Returns the target of the double clicked cell. + */ + target?: any; - /** Returns the edited appointment object. - */ - appointment?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface CellHoverEventArgs { - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the object of cellHover event. + */ + object?: any; - /** Returns the name of the Scheduler event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface AppointmentHoverEventArgs { + /** Returns the index of the hovered cell. + */ + cellIndex?: any; - /** Returns the object of appointmentHover event. - */ - object?: any; + /** Returns the current date of the hovered cell. + */ + currentDate?: any; - /** Returns the hovered appointment object. - */ - appointment?: any; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the target of the clicked cell. + */ + target?: any; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface CreateEventArgs { - export interface BeforeAppointmentCreateEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the appointment object. - */ - appointment?: any; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the name of the Scheduler event. + */ + type?: string; + } - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + export interface DestroyEventArgs { - /** Returns the name of the Scheduler event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface AppointmentWindowOpenEventArgs { + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** returns the object of appointmentWindowOpen event while selecting the detail option from quick window or edit appointment or edit series option. - */ - object?: any; + /** Returns the name of the Scheduler event. + */ + type?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface DragEventArgs { - /** Returns the end time of the double clicked cell. - */ - endTime?: any; + /** Returns the object of dragOver event. + */ + object?: any; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the action name that triggers window open. - */ - originalEventType?: string; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the start time of the double clicked cell. - */ - startTime?: any; + /** Returns the target of the drag over appointment. + */ + target?: any; - /** Returns the target of the double clicked cell. - */ - target?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; + export interface DragStartEventArgs { - /** Returns the edit appointment object. - */ - appointment?: any; + /** Returns the object of dragStart event. + */ + object?: any; - /** Returns the edit occurrence option value. - */ - edit?: boolean; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface BeforeContextMenuOpenEventArgs { + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the object of beforeContextMenuOpen event. - */ - object?: any; + /** Returns the target of the dragging appointment. + */ + target?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the current cell index value. - */ - cellIndex?: number; + export interface DragStopEventArgs { - /** Returns the current date value. - */ - currentDate?: any; + /** Returns the object of dragDrop event. + */ + object?: any; - /** Returns the current resource details, when multiple resources are present, otherwise returns null. - */ - resources?: any; + /** Returns the dropped appointment object. + */ + appointment?: any; - /** Returns the current appointment details while opening the menu from appointment. - */ - appointment?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the object of before opening menu target. - */ - events?: any; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface MenuItemClickEventArgs { - export interface CellClickEventArgs { + /** Returns the object of menuItemClick event. + */ + object?: any; - /** Returns the object of cellClick event. - */ - object?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the object of menu item event. + */ + events?: any; - /** Returns the end time of the clicked cell. - */ - endTime?: any; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the start time of the clicked cell. - */ - startTime?: any; + export interface NavigationEventArgs { - /** Returns the target of the clicked cell. - */ - target?: any; + /** Returns the current date object. + */ + currentDate?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface CellDoubleClickEventArgs { + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the object of cellDoubleClick event. - */ - object?: any; + /** Returns the current view value. + */ + currentView?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the previous view value. + */ + previousView?: string; - /** Returns the end time of the double clicked cell. - */ - endTime?: any; + /** Returns the target of the action. + */ + target?: any; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; - /** Returns the start time of the double clicked cell. - */ - startTime?: any; + /** Returns the previous date of the Schedule. + */ + previousDate?: any; + } - /** Returns the target of the double clicked cell. - */ - target?: any; + export interface QueryCellInfoEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface CellHoverEventArgs { + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the object of cellHover event. - */ - object?: any; + /** Returns the current appointment data. + */ + appointment?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the currently rendering DOM element. + */ + element?: any; - /** Returns the index of the hovered cell. - */ - cellIndex?: any; + /** Returns the name of the currently rendering element on the scheduler. + */ + requestType?: string; - /** Returns the current date of the hovered cell. - */ - currentDate?: any; + /** Returns the cell type which is currently rendering on the Scheduler. + */ + cellType?: string; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the start date of the currently rendering appointment. + */ + currentAppointmentDate?: any; - /** Returns the target of the clicked cell. - */ - target?: any; + /** Returns the currently rendering cell information. + */ + cell?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the currently rendering resource details. + */ + resource?: any; - export interface CreateEventArgs { + /** Returns the currently rendering date information. + */ + currentDay?: any; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface ReminderEventArgs { - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the Scheduler event. - */ - type?: string; - } + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - export interface DestroyEventArgs { + /** Returns the name of the event. + */ + type?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the appointment object for which the reminder is raised. + */ + reminderAppointment?: any; + } - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + export interface ResizeEventArgs { - /** Returns the name of the Scheduler event. - */ - type?: string; - } + /** Returns the object of resizing event. + */ + object?: any; - export interface DragEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the object of dragOver event. - */ - object?: any; + /** Returns the resize element value. + */ + element?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the target of the drag over appointment. - */ - target?: any; + export interface ResizeStartEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the object of resizeStart event. + */ + object?: any; - export interface DragStartEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the object of dragStart event. - */ - object?: any; + /** Returns the resize element value. + */ + element?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the target of the dragging appointment. - */ - target?: any; + export interface ResizeStopEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the object of resizeStop event. + */ + object?: any; - export interface DragStopEventArgs { + /** Returns the resized appointment value. + */ + appointment?: any; - /** Returns the object of dragDrop event. - */ - object?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the dropped appointment object. - */ - appointment?: any; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the target of the resized appointment. + */ + target?: any; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface OverflowButtonClickEventArgs { - export interface MenuItemClickEventArgs { + /** Returns the object consisting of start time, end time and resource value of the underlying cell on which the clicked overflow button is present. + */ + object?: any; - /** Returns the object of menuItemClick event. - */ - object?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the object of menu item event. + */ + events?: any; - /** Returns the object of menu item event. - */ - events?: any; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface OverflowButtonHoverEventArgs { - export interface NavigationEventArgs { + /** Returns the object consisting of start time, end time and resource value of the underlying cell on which the overflow button is currently hovered. + */ + object?: any; - /** Returns the current date object. - */ - currentDate?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the object of menu item event. + */ + events?: any; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the current view value. - */ - currentView?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the previous view value. - */ - previousView?: string; + export interface KeyDownEventArgs { - /** Returns the target of the action. - */ - target?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; + /** Returns the object of menu item event. + */ + events?: any; - /** Returns the previous date of the Schedule. - */ - previousDate?: any; - } + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - export interface QueryCellInfoEventArgs { + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface AppointmentCreatedEventArgs { - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the appointment object. + */ + appointment?: any; - /** Returns the current appointment data. - */ - appointment?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the currently rendering DOM element. - */ - element?: any; + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; - /** Returns the name of the currently rendering element on the scheduler. - */ - requestType?: string; + /** Returns the name of the Scheduler event. + */ + type?: string; + } + + export interface AppointmentChangedEventArgs { + + /** Returns the edited appointment object. + */ + appointment?: any; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; + + /** Returns the name of the Scheduler event. + */ + type?: string; + } + + export interface AppointmentRemovedEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the deleted appointment object. + */ + appointment?: any; + + /** Returns the Schedule model. + */ + model?: ej.Schedule.Model; + + /** Returns the name of the Scheduler event. + */ + type?: string; + } + + export interface AppointmentSettings { + + /** The dataSource option accepts either JSON object collection or DataManager (ej.DataManager) instance that contains Schedule appointments. + * @Default {[]} + */ + dataSource?: any|any[]; + + /** It holds either the ej.Query() object or simply the query string that retrieves the specified records from the table. + * @Default {null} + */ + query?: string; + + /** Assign the table name from where the records are to be fetched for the Schedule. + * @Default {null} + */ + tableName?: string; + + /** When set to false, doesn't consider the time difference offset calculation on appointment time. + * @Default {true} + */ + applyTimeOffset?: boolean; + + /** When set to true, introduces a new option to edit only the future occurrences of the appointments in a recurrence series from the currently selected appointment's date. + * @Default {false} + */ + editFutureEventsOnly?: boolean; + + /** Binds the id field name in dataSource to the id of Schedule appointments. It denotes the unique id assigned to appointments. + * @Default {null} + */ + id?: string; + + /** Binds the name of startTime field in the dataSource with start time of the Schedule appointments. It indicates the date and Time when Schedule appointment actually starts. + * @Default {null} + */ + startTime?: string; + + /** Binds the name of endTime field in dataSource with the end time of Schedule appointments. It indicates the date and time when Schedule appointment actually ends. + * @Default {null} + */ + endTime?: string; + + /** Binds the name of subject field in the dataSource to appointment Subject. Indicates the Subject or title that gets displayed on Schedule appointments. + * @Default {null} + */ + subject?: string; + + /** Binds the description field name in dataSource. It indicates the appointment description. + * @Default {null} + */ + description?: string; + + /** Binds the name of recurrence field in dataSource. It indicates whether the appointment is a recurrence appointment or not. + * @Default {null} + */ + recurrence?: string; + + /** Binds the name of recurrenceRule field in dataSource. It indicates the recurrence pattern associated with appointments. + * @Default {null} + */ + recurrenceRule?: string; + + /** Binds the name of allDay field in dataSource. It indicates whether the appointment is an all-day appointment or not. + * @Default {null} + */ + allDay?: string; + + /** Binds one or more fields in resource collection dataSource. It maps the resource field names with appointments denoting the resource of appointments actually belongs. + * @Default {null} + */ + resourceFields?: string; + + /** Binds the name of categorize field in dataSource. It indicates the categorize value, red categorize, green, yellow and so on applied to the appointments. + * @Default {null} + */ + categorize?: string; + + /** Binds the name of location field in dataSource. It indicates the appointment location. + * @Default {null} + */ + location?: string; + + /** Binds the name of the priority field in dataSource. It indicates the priority, high, low, medium and none of the appointments. + * @Default {null} + */ + priority?: string; + + /** Binds the name of start timezone field in dataSource. It indicates the timezone of appointment start date. When startTimeZone field is not mentioned, the appointment uses the + * Schedule timeZone or System timeZone. + * @Default {null} + */ + startTimeZone?: string; + + /** Binds the name of end timezone field in dataSource. It indicates the timezone of appointment end date. When the endTimeZone field is not mentioned, the appointment uses the + * Schedule timeZone or System timeZone. + * @Default {null} + */ + endTimeZone?: string; + } + + export interface CategorizeSettings { + + /** When set to true, enables the multiple selection of categories to be applied for the appointments. + * @Default {false} + */ + allowMultiple?: boolean; + + /** When set to true, enables the categories option to be applied for the appointments. + * @Default {false} + */ + enable?: boolean; + + /** The dataSource option accepts either the JSON object collection or DataManager [ej.DataManager] instance that contains the categorize data. + */ + dataSource?: any[]|any; + + /** Binds id field name in the dataSource to id of category data. + * @Default {id} + */ + id?: string; + + /** Binds text field name in the dataSource to category text. + * @Default {text} + */ + text?: string; + + /** Binds color field name in the dataSource to category color. + * @Default {color} + */ + color?: string; + + /** Binds fontColor field name in the dataSource to category font. + * @Default {fontColor} + */ + fontColor?: string; + } + + export interface ContextMenuSettingsMenuItems { + + /** All the appointment related context menu items are grouped under this appointment menu collection. + */ + appointment?: any[]; + + /** All the Scheduler cell related context menu items are grouped under this cells menu item collection. + */ + cells?: any[]; + } + + export interface ContextMenuSettings { + + /** When set to true, enables the context menu options available for the Schedule cells and appointments. + * @Default {false} + */ + enable?: boolean; + + /** Contains all the default context menu options that are applicable for both Schedule cells and appointments. It also supports adding custom menu items to cells or appointment + * collection. + */ + menuItems?: ContextMenuSettingsMenuItems; + } + + export interface Group { + + /** Holds the array of resource names to be grouped on the Schedule. + */ + resources?: any[]; + } + + export interface WorkHours { + + /** When set to true, highlights the work hours of the Schedule. + * @Default {true} + */ + highlight?: boolean; + + /** Sets the start time to depict the start of working or business hour in a day. + * @Default {9} + */ + start?: number; + + /** Sets the end time to depict the end of working or business hour in a day. + * @Default {18} + */ + end?: number; + } + + export interface PrioritySettings { + + /** When set to true, enables the priority options available for the Schedule appointments. + * @Default {false} + */ + enable?: boolean; + + /** The dataSource option can accept the JSON object collection that contains the priority related data. + * @Default {{% highlight js%}[{ text: None, value: none },{ text: High, value: high },{ text: Medium, value: medium },{ text: Low, value: low }]{% endhighlight %}} + */ + dataSource?: any|any[]; + + /** Binds text field name in the dataSource to prioritySettings text. These text gets listed out in priority field of the appointment window. + * @Default {text} + */ + text?: string; + + /** Binds value field name in the dataSource to prioritySettings value. These field names usually accepts four priority values by default, high, low, medium and none. + * @Default {value} + */ + value?: string; + + /** Allows priority field customization in the appointment window to add custom icons denoting the priority level for the appointments. + * @Default {null} + */ + template?: string; + } + + export interface ReminderSettings { + + /** When set to true, enables the reminder option available for the Schedule appointments. + * @Default {false} + */ + enable?: boolean; + + /** Sets the timing, when the reminders are to be alerted for the Schedule appointments. + * @Default {5} + */ + alertBefore?: number; + } + + export interface RenderDates { + + /** Sets the start of custom date range to be rendered in the Schedule. + * @Default {null} + */ + start?: any; + + /** Sets the end limit of the custom date range. + * @Default {null} + */ + end?: any; + } + + export interface ResourcesResourceSettings { + + /** The dataSource option accepts either JSON object collection or DataManager (ejDataManager) instance that contains the resources related data. + * @Default {[]} + */ + dataSource?: any|any[]; + + /** Binds text field name in the dataSource to resourceSettings text. These text gets listed out in resources field of the appointment window. + * @Default {null} + */ + text?: string; + + /** Binds id field name in the dataSource to resourceSettings id. + * @Default {null} + */ + id?: string; + + /** Binds groupId field name in the dataSource to resourceSettings groupId. + * @Default {null} + */ + groupId?: string; + + /** Binds color field name in the dataSource to resourceSettings color. The color specified here gets applied to the Schedule appointments denoting to the resource it belongs. + * @Default {null} + */ + color?: string; + + /** Binds the starting work hour field name in the dataSource. It's optional, but providing it with some numeric value will set the starting work hour for specific resources. + * @Default {null} + */ + start?: string; + + /** Binds the end work hour field name in the dataSource. It's optional, but providing it with some numeric value will set the end work hour for specific resources. + * @Default {null} + */ + end?: string; + + /** Binds the resources working days field name in the dataSource. It's optional, and accepts the array of strings (week day names). When provided with specific collection of days + * (array of day names), only those days will render for the specific resources. + * @Default {null} + */ + workWeek?: string; + + /** Binds appointmentClass field name in the dataSource. It applies custom CSS class name to appointments depicting to the resource it belongs. + * @Default {null} + */ + appointmentClass?: string; + } + + export interface Resource { + + /** It holds the name of the resource field to be bound to the Schedule appointments that contains the resource Id. + * @Default {null} + */ + field?: string; + + /** It holds the title name of the resource field to be displayed on the Schedule appointment window. + * @Default {null} + */ + title?: string; + + /** A unique resource name that is used for differentiating various resource objects while grouping it in various levels. + * @Default {null} + */ + name?: string; + + /** When set to true, allows multiple selection of resource names, thus creating multiple instances of same appointment for the selected resources. + * @Default {false} + */ + allowMultiple?: boolean; + + /** It holds the field names of the resources to be bound to the Schedule and also the dataSource. + */ + resourceSettings?: ResourcesResourceSettings; + } + + export interface TimeZoneCollection { + + /** Sets the collection of timezone items to the dataSource that accepts either JSON object collection or DataManager (ej.DataManager) instance that contains Schedule timezones. + */ + dataSource?: any; + + /** Binds text field name in the dataSource to timeZoneCollection text. These text gets listed out in the timezone fields of the appointment window. + * @Default {text} + */ + text?: string; + + /** Binds id field name in the dataSource to timeZoneCollection id. + * @Default {id} + */ + id?: string; + + /** Binds value field name in the dataSource to timeZoneCollection value. + * @Default {value} + */ + value?: string; + } + + export interface AgendaViewSettings { + + /** You can display the summary of multiple week's appointment by setting this value. + * @Default {7} + */ + daysInAgenda?: number; + + /** You can customize the Date column display based on the requirement. + * @Default {null} + */ + dateColumnTemplateId?: string; + + /** You can customize the time column display based on the requirement. + * @Default {null} + */ + timeColumnTemplateId?: string; + } + + export interface TooltipSettings { + + /** Enables or disables the tooltip display. + * @Default {false} + */ + enable?: boolean; + + /** Template design that customizes the tooltip. All the field names that are mapped from dataSource to the appropriate field properties within the appointmentSettings can be accessed + * within the template. + * @Default {null} + */ + templateId?: string; + } + + export interface TimeScale { + + /** When set to true, displays the time slots on the Scheduler. + * @Default {true} + */ + enable?: boolean; + + /** When set with some specific value, defines the number of time divisions split per hour(as per value given for the majorTimeSlot). Those time divisions are meant to be the minor + * slots. + * @Default {2} + */ + minorSlotCount?: number; + + /** Accepts the value in minutes. When provided with specific value, displays the appropriate time interval on the Scheduler + * @Default {60} + */ + majorSlot?: number; + + /** Template design that customizes the timecells (minor slots) that are partitioned based on minorSlotCount. Accepts id value of the template defined for minor time slots. + * @Default {null} + */ + minorSlotTemplateId?: string; + + /** Template design that customizes the timecells (major slots). Accepts id value of the template defined for major time slots. + * @Default {null} + */ + majorSlotTemplateId?: string; + } + + export interface BlockoutSettings { + + /** When set to true, enables the blockout option to be applied on the Scheduler cells. + * @Default {false} + */ + enable?: boolean; + + /** Template design that applies on the Schedule block intervals. All the field names that are mapped from dataSource to the appropriate field properties within the blockoutSettings + * can be used within the template. + * @Default {null} + */ + templateId?: string; + + /** The dataSource option accepts either JSON object collection or DataManager (ej.DataManager) instance that contains Schedule block intervals. + * @Default {[]} + */ + dataSource?: any|any[]; + + /** It holds either the ej.Query() object or simply the query string that retrieves the specified records from the table. + * @Default {null} + */ + query?: string; + + /** Assign the table name from where the records are to be fetched for the Schedule. + * @Default {null} + */ + tableName?: string; + + /** Binds the id field name in dataSource to the id of block time interval. It denotes the unique id assigned to each of the block records. + * @Default {null} + */ + id?: string; + + /** Binds the name of startTime field in the dataSource with start time of block time interval. It indicates the date and time, when the block interval actually starts in the + * Scheduler. + * @Default {null} + */ + startTime?: string; + + /** Binds the name of endTime field in dataSource with the end time of block time interval. It indicates the date and time, when the block interval actually ends in the Scheduler. + * @Default {null} + */ + endTime?: string; + + /** Binds the name of subject field in the dataSource to block time Subject. Indicates the Subject or title that gets displayed on the Schedule block intervals. + * @Default {null} + */ + subject?: string; + + /** Binds the name of isBlockAppointment field in dataSource. When set to true, disables the appointments that lies on the blocked area and restrict to perform CRUD operations in it. + * @Default {null} + */ + isBlockAppointment?: string; + + /** Binds the name of isAllDay field in dataSource. It indicates whether an entire day is blocked or not. + * @Default {null} + */ + isAllDay?: string; + + /** Binds the name of resourceId field in dataSource. Specifies the id of the resources, to which the time intervals are needed to be blocked. + * @Default {null} + */ + resourceId?: string; + + /** Binds the name of groupId field in dataSource. Specifies the id of the resource group, to which the time intervals are needed to be blocked. + * @Default {null} + */ + groupId?: string; + + /** Binds the name of customStyle field in dataSource. It applies the custom CSS to the block intervals. + * @Default {null} + */ + customStyle?: string; + } + + enum CurrentView { + + ///Sets currentView of the Scheduler as Day + Day, + + ///Sets currentView of the Scheduler as Week + Week, + + ///Sets currentView of the Scheduler as WorkWeek + Workweek, + + ///Sets currentView of the Scheduler as Month + Month, + + ///Sets currentView of the Scheduler as Agenda + Agenda, + + ///Sets currentView of the Scheduler as CustomView with user-specified date range. + CustomView + } + + + enum Orientation { + + ///Set orientation as vertical to Scheduler + Vertical, + + ///Set orientation as horizontal to Scheduler + Horizontal + } + + + enum TimeMode { + + ///Sets 12 hour time mode to Scheduler + Hour12, + + ///Sets 24 hour time mode to Scheduler + Hour24 + } + + } + + class RecurrenceEditor extends ej.Widget { + static fn: RecurrenceEditor; + constructor(element: JQuery | Element, options?: RecurrenceEditor.Model); + static Locale: any; + model: RecurrenceEditor.Model; + defaults: RecurrenceEditor.Model; + + /** Generates the recurrence rule with the options selected within the Recurrence Editor. + * @returns {string} + */ + getRecurrenceRule(): string; + + /** Generates the collection of date, that lies within the selected recurrence start and end date for which the recurrence pattern applies. + * @param {string} It refers the recurrence rule. + * @param {any} It refers the start date of the recurrence. + * @returns {any} + */ + recurrenceDateGenerator(recurrenceString: string, startDate: any): any; + + /** It splits and returns the recurrence rule string into object collection. + * @param {string} It refers the recurrence rule string. + * @param {any} It refers the appointment dates (ExDate) to be excluded + * @returns {any} + */ + recurrenceRuleSplit(recurrenceRule: string, exDate: any): any; + } + export namespace RecurrenceEditor { + + export interface Model { + + /** Defines the collection of recurrence frequencies within Recurrence Editor such as Never, Daily, Weekly, Monthly, Yearly and Every Weekday. + * @Default {[never, daily, weekly, monthly, yearly, everyweekday]} + */ + frequencies?: any[]; + + /** Sets the starting day of the week. + * @Default {null} + */ + firstDayOfWeek?: string; + + /** When set to true, enables the spin button of numeric textboxes within the Recurrence Editor. + * @Default {true} + */ + enableSpinners?: boolean; + + /** Sets the start date of the recurrence. The Recurrence Editor initially displays the current date as its start date. + * @Default {new Date()} + */ + startDate?: any; + + /** Sets the specific culture to the Recurrence Editor. + * @Default {en-US} + */ + locale?: string; + + /** Sets the date format for the datepickers available within the Recurrence Editor. + */ + dateFormat?: string; + + /** When set to true, renders the Recurrence Editor options from Right-to-Left direction. + * @Default {false} + */ + enableRTL?: boolean; + + /** Sets the active/current repeat type(frequency) on Recurrence Editor based on the index value provided. For example, setting the value 1 will initially set the repeat type as Daily + * and display its related options. + * @Default {0} + */ + selectedRecurrenceType?: number; + + /** Sets the minimum date limit to display on the datepickers defined within the Recurrence Editor. Setting minDate with specific date value disallows the datepickers within + * Recurrence Editor to navigate beyond that date. + * @Default {new Date(1900, 01, 01)} + */ + minDate?: any; + + /** Sets the maximum date limit to display on the datepickers used within the Recurrence Editor. Setting maxDate with specific date value disallows the datepickers within the + * Recurrence Editor to navigate beyond that date. + * @Default {new Date(2099, 12, 31)} + */ + maxDate?: any; + + /** Accepts the custom CSS class name, that defines user-defined styles and themes to be applied on partial or complete elements of the Recurrence Editor. + */ + cssClass?: string; + + /** Triggers whenever any of the Recurrence Editor's value is changed. + */ + change?(e: ChangeEventArgs): void; + } + + export interface ChangeEventArgs { + + /** When set to true, event gets canceled. + */ + cancel?: boolean; + + /** Returns the Recurrence Editor model + */ + model?: ej.RecurrenceEditor.Model; + + /** Returns the name of the event + */ + type?: string; + + /** Returns the recurrence rule value. + */ + recurrenceRule?: string; + } + } + + class Gantt extends ej.Widget { + static fn: Gantt; + constructor(element: JQuery | Element, options?: Gantt.Model); + static Locale: any; + model: Gantt.Model; + defaults: Gantt.Model; + + /** To add a new item in Gantt + * @param {any} Item to add in Gantt row. + * @param {string} Defines in which position the row wants to add + * @returns {void} + */ + addRecord(data: any, rowPosition: string): void; + + /** To select cell based on the cell and row index dynamically. + * @param {any[]} array of cell indexes to be select + * @param {boolean} Defines that we need to preserve the previously selected cells of not + * @returns {void} + */ + selectCells(Indexes: any[], preservePreviousSelectedCell: boolean): void; + + /** Positions the splitter by the specified column index. + * @param {number} Set the splitter position based on column index. + * @returns {void} + */ + setSplitterIndex(index: number): void; + + /** To sort the column in required direction + * @param {string} Defines the column's mapping name in which sorting have to be performed + * @param {string} Defines the sort direction whether the column has to sorted in ascending/descending order. By default it is sorting in an ascending order + * @returns {void} + */ + sortColumn(mappingName: string, columnSortDirection: string): void; + + /** To cancel the edited state of an item in Gantt + * @returns {void} + */ + cancelEdit(): void; + + /** To collapse all the parent items in Gantt + * @returns {void} + */ + collapseAllItems(): void; + + /** To delete a selected item in Gantt + * @returns {void} + */ + deleteItem(): void; + + /** destroy the Gantt widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** To Expand all the parent items in Gantt + * @returns {void} + */ + expandAllItems(): void; + + /** To expand and collapse an item in Gantt using item's ID + * @param {number} Expand or Collapse a record based on task id. + * @returns {void} + */ + expandCollapseRecord(taskId: number): void; + + /** Export the Gantt content to excel or PDF document. + * @param {string} Pass the controller action name corresponding to exporting + * @param {string} optionalASP server event name corresponding to exporting + * @param {boolean} optionalPass the multiple exporting value as true/false + * @returns {void} + */ + export(action: string, serverEvent?: string, multipleExport?: boolean): void; + + /** To hide the column by using header text + * @param {string} you can pass a header text of a column to hide + * @returns {void} + */ + hideColumn(headerText: string): void; + + /** To indent a selected item in Gantt + * @returns {void} + */ + indentItem(): void; + + /** To Open the dialog to add new task to the Gantt + * @returns {void} + */ + openAddDialog(): void; + + /** To Open the dialog to edit existing task to the Gantt + * @returns {void} + */ + openEditDialog(): void; + + /** To outdent a selected item in Gantt + * @returns {void} + */ + outdentItem(): void; + + /** To save the edited state of an item in Gantt + * @returns {void} + */ + saveEdit(): void; + + /** To search an item with search string provided at the run time + * @param {string} you can pass a text to search in Gantt Control. + * @returns {void} + */ + searchItem(searchString: string): void; + + /** To set the grid width in Gantt + * @param {string} you can give either percentage or pixels value + * @returns {void} + */ + setSplitterPosition(width: string): void; + + /** To show the column by using header text + * @param {string} you can pass a header text of a column to show + * @returns {void} + */ + showColumn(headerText: string): void; + } + export namespace Gantt { + + export interface Model { + + /** Specifies the fields to be included in the add dialog in Gantt + * @Default {[]} + */ + addDialogFields?: AddDialogField[]; + + /** Enables or disables the ability to resize column. + * @Default {false} + */ + allowColumnResize?: boolean; + + /** Enables or Disables Gantt chart editing in Gantt + * @Default {true} + */ + allowGanttChartEditing?: boolean; + + /** Enables or Disables Keyboard navigation in Gantt + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** Specifies enabling or disabling multiple sorting for Gantt columns + * @Default {false} + */ + allowMultiSorting?: boolean; + + /** Enables or disables the option for multiple exporting + * @Default {false} + */ + allowMultipleExporting?: boolean; + + /** Enables or disables the interactive selection of a row. + * @Default {true} + */ + allowSelection?: boolean; + + /** Enables or disables sorting. When enabled, we can sort the column by clicking on the column. + * @Default {false} + */ + allowSorting?: boolean; + + /** Enables or disables the ability to drag and drop the row interactively to reorder the rows + * @Default {false} + */ + allowDragAndDrop?: boolean; + + /** Enable or disable predecessor validation. When it is true, all the task's start and end dates are aligned based on its predecessors start and end dates. + * @Default {true} + */ + enablePredecessorValidation?: boolean; + + /** Specifies the baseline background color in Gantt + * @Default {#fba41c} + */ + baselineColor?: string; + + /** Specifies the mapping property path for the work field of a task in the data source. When it is mapped the end date and duration for a task will be calculated automatically. + */ + workMapping?: string; + + /** Specifies the mapping property path for the expand status of a record in data source. + */ + expandStateMapping?: string; + + /** Specifies the mapping property path for baseline end date in datasource + */ + baselineEndDateMapping?: string; + + /** Specifies the mapping property path for baseline start date of a task in datasource + */ + baselineStartDateMapping?: string; + + /** Specifies the mapping property path for sub tasks in datasource + */ + childMapping?: string; + + /** To Specify the column fields to be displayed in the dialog while inserting a column using column menu. + * @Default {[]} + */ + columnDialogFields?: any[]; + + /** Specifies the background of connector lines in Gantt + */ + connectorLineBackground?: string; + + /** Specifies the width of the connector lines in Gantt + * @Default {1} + */ + connectorlineWidth?: number; + + /** Specify the CSS class for Gantt to achieve custom theme. + */ + cssClass?: string; + + /** Specifies the template for cell tooltip + * @Default {null} + */ + cellTooltipTemplate?: string; + + /** Option for customizing the drag tooltip while reordering the rows. + */ + dragTooltip?: DragTooltip; + + /** Collection of data or hierarchical data to represent in Gantt + * @Default {null} + */ + dataSource?: any[]; + + /** Specifies the dateFormat for Gantt , given format is displayed in tooltip , Grid . + * @Default {MM/dd/yyyy} + */ + dateFormat?: string; + + /** Specifies the customized working time for tasks in Gantt + * @Default {[{ from: 08:00 AM, to: 12:00 PM }, { from: 01:00 PM, to: 05:00 PM }]} + */ + dayWorkingTime?: any[]; + + /** Specifies the mapping property path for duration of a task in datasource + */ + durationMapping?: string; + + /** Specifies the duration unit for each tasks whether days or hours or minutes + * @Default {ej.Gantt.DurationUnit.Day} + */ + durationUnit?: ej.Gantt.DurationUnit|string; + + /** Specifies the fields to be included in the edit dialog in Gantt + * @Default {[]} + */ + editDialogFields?: EditDialogField[]; + + /** Enables or disables the responsiveness of Gantt + * @Default {false} + */ + isResponsive?: boolean; + + /** Option to configure the splitter position. + */ + splitterSettings?: SplitterSettings; + + /** Specifies the editSettings options in Gantt. + */ + editSettings?: EditSettings; + + /** Enables or Disables enableAltRow row effect in Gantt + * @Default {true} + */ + enableAltRow?: boolean; + + /** Enables/disables work breakdown structure column. + * @Default {false} + */ + enableWBS?: boolean; + + /** Enables/disables WBS predecessor column. + * @Default {false} + */ + enableWBSPredecessor?: boolean; + + /** Enables or disables the collapse all records when loading the Gantt. + * @Default {false} + */ + enableCollapseAll?: boolean; + + /** Specifies the data source field name to be displayed as left task label + */ + leftTaskLabelMapping?: string; + + /** Specifies the data source field name to be displayed as right task label + */ + rightTaskLabelMapping?: string; + + /** Specifies the template for left task label + */ + leftTaskLabelTemplate?: string; + + /** Specifies the template for right task label + */ + rightTaskLabelTemplate?: string; + + /** Enables or disables the contextmenu for Gantt , when enabled contextmenu appears on right clicking Gantt + * @Default {false} + */ + enableContextMenu?: boolean; + + /** Indicates whether we can edit the progress of a task interactively in Gantt. + * @Default {true} + */ + enableProgressBarResizing?: boolean; + + /** Enables or disables the option for dynamically updating the Gantt size on window resizing + * @Default {false} + */ + enableResize?: boolean; + + /** Enables or disables tooltip while editing (dragging/resizing) the taskbar. + * @Default {true} + */ + enableTaskbarDragTooltip?: boolean; + + /** Enables or disables tooltip for taskbar. + * @Default {true} + */ + enableTaskbarTooltip?: boolean; + + /** Enables/Disables virtualization for rendering Gantt items. + * @Default {false} + */ + enableVirtualization?: boolean; + + /** Specifies the mapping property path for end Date of a task in datasource + */ + endDateMapping?: string; + + /** Specifies whether to highlight the weekends in Gantt . + * @Default {true} + */ + highlightWeekends?: boolean; + + /** Collection of holidays with date, background and label information to be displayed in Gantt. + * @Default {[]} + */ + holidays?: Holiday[]; + + /** Specifies whether to include weekends while calculating the duration of a task. + * @Default {true} + */ + includeWeekend?: boolean; + + /** Specify the locale for Gantt + * @Default {en-US} + */ + locale?: string; + + /** Specifies the mapping property path for milestone in datasource + */ + milestoneMapping?: string; + + /** Enables/disables the options for inserting , deleting and renaming columns. + * @Default {false} + */ + showColumnOptions?: boolean; + + /** Specifies the template for parent taskbar + */ + parentTaskbarTemplate?: string; + + /** Specifies the nature of a task for calculating the work, and it can fixed duration, fixed work and fixed resource unit + * @Default {ej.Gantt.TaskType.FixedUnit} + */ + taskType?: ej.Gantt.TaskType|string; + + /** Specifies the unit for the work involved in a task and it can be day, hour or minute + * @Default {ej.Gantt.WorkUnit.Hour} + */ + workUnit?: ej.Gantt.WorkUnit|string; + + /** Specifies the task scheduling mode for a project and this will be set to all the tasks available in the project + * @Default {ej.Gantt.TaskSchedulingMode.Auto} + */ + taskSchedulingMode?: ej.Gantt.TaskSchedulingMode|string; + + /** Specifies the row selection type. + * @Default {ej.Gantt.SelectionType.Single} + */ + selectionType?: ej.Gantt.SelectionType|string; + + /** Specifies the background of parent progressbar in Gantt + */ + parentProgressbarBackground?: string; + + /** Specifies the mapping property path for resource's percent effort involved in a task in datasource + */ + resourceUnitMapping?: string; + + /** Specifies the mapping property path for the task description in datasource + */ + notesMapping?: string; + + /** Specifies the mapping property path for the task scheduling mode for a task in datasource + * @Default {auto} + */ + taskSchedulingModeMapping?: string; + + /** Specifies the mapping property path for task duration unit in datasource + */ + durationUnitMapping?: string; + + /** Specifies the background of parent taskbar in Gantt + */ + parentTaskbarBackground?: string; + + /** Specifies the mapping property path for parent task Id in self reference datasource + */ + parentTaskIdMapping?: string; + + /** Specifies the mapping property path for predecessors of a task in datasource + */ + predecessorMapping?: string; + + /** Specifies the background of progressbar in Gantt + */ + progressbarBackground?: string; + + /** Specified the height of the progressbar in taskbar + * @Default {100} + */ + progressbarHeight?: number; + + /** Specifies the template for tooltip on resizing progressbar + * @Default {null} + */ + progressbarTooltipTemplate?: string; + + /** Specifies the template ID for customized tooltip for progressbar editing in Gantt + * @Default {null} + */ + progressbarTooltipTemplateId?: string; + + /** Specifies the mapping property path for progress percentage of a task in datasource + */ + progressMapping?: string; + + /** It receives query to retrieve data from the table (query is same as SQL). + * @Default {null} + */ + query?: any; + + /** Enables or Disables rendering baselines in Gantt , when enabled baseline is rendered in Gantt + * @Default {false} + */ + renderBaseline?: boolean; + + /** Specifies the mapping property name for resource ID in resource Collection in Gantt + */ + resourceIdMapping?: string; + + /** Specifies the mapping property path for resources of a task in datasource + */ + resourceInfoMapping?: string; + + /** Specifies the mapping property path for resource name of a task in Gantt + */ + resourceNameMapping?: string; + + /** Collection of data regarding resources involved in entire project + * @Default {[]} + */ + resources?: any[]; + + /** Specifies whether rounding off the day working time edits + * @Default {true} + */ + roundOffDayworkingTime?: boolean; + + /** Specifies the height of a single row in Gantt. Also, we need to set same height in the CSS style with class name e-rowcell. + * @Default {30} + */ + rowHeight?: number; + + /** Specifies end date of the Gantt schedule. By default, end date will be rounded to its next Saturday. + * @Default {null} + */ + scheduleEndDate?: string; + + /** Specifies the options for customizing schedule header. + */ + scheduleHeaderSettings?: ScheduleHeaderSettings; + + /** Specifies start date of the Gantt schedule. By default, start date will be rounded to its previous Sunday. + * @Default {null} + */ + scheduleStartDate?: string; + + /** Specifies the selected row Index in Gantt , the row with given index will highlighted + * @Default {-1} + */ + selectedRowIndex?: number; + + /** Enables or disables the column chooser. + * @Default {false} + */ + showColumnChooser?: boolean; + + /** Specifies the template for cell tooltip + * @Default {true} + */ + showGridCellTooltip?: boolean; + + /** Specifies whether to show grid cell tooltip over expander cell alone. + * @Default {true} + */ + showGridExpandCellTooltip?: boolean; + + /** Specifies whether display task progress inside taskbar. + * @Default {true} + */ + showProgressStatus?: boolean; + + /** Specifies whether to display resource names for a task beside taskbar. + * @Default {true} + */ + showResourceNames?: boolean; + + /** Specifies whether to display task name beside task bar. + * @Default {true} + */ + showTaskNames?: boolean; + + /** Specifies the size option of Gantt control. + */ + sizeSettings?: SizeSettings; + + /** Specifies the selected cell information on rendering Gantt. + */ + selectedCellIndexes?: SelectedCellIndex[]; + + /** Specifies the sorting options for Gantt. + */ + sortSettings?: SortSettings; + + /** Specifies splitter position in Gantt. + * @Default {null} + */ + splitterPosition?: string; + + /** Specifies the mapping property path for start date of a task in datasource + */ + startDateMapping?: string; + + /** Specifies the options for striplines + * @Default {[]} + */ + stripLines?: StripLine[]; + + /** Specifies the background of the taskbar in Gantt + */ + taskbarBackground?: string; + + /** Specifies the template script for customized tooltip for taskbar editing in Gantt + */ + taskbarEditingTooltipTemplate?: string; + + /** Specifies the template Id for customized tooltip for taskbar editing in Gantt + */ + taskbarEditingTooltipTemplateId?: string; + + /** Specifies the height of taskBar in Gantt. + * @Default {20} + */ + taskbarHeight?: number; + + /** Specifies the template for tooltip on mouse action on taskbars + */ + taskbarTooltipTemplate?: string; + + /** To Specify the JsRender script Id to customize the task bar with our preference + */ + taskbarTemplate?: string; + + /** To Specify the JsRender script Id to customize the mile stone with our preference + */ + milestoneTemplate?: string; + + /** Enables or disables Gantt to read-only mode + * @Default {false} + */ + readOnly?: boolean; + + /** Specifies the template id for tooltip on mouse action on taskbars + */ + taskbarTooltipTemplateId?: string; + + /** Specifies the mapping property path for task Id in datasource + */ + taskIdMapping?: string; + + /** Specifies the mapping property path for task name in datasource + */ + taskNameMapping?: string; + + /** Specifies the toolbarSettings options. + */ + toolbarSettings?: ToolbarSettings; + + /** Specifies the tree expander column in Gantt + * @Default {0} + */ + treeColumnIndex?: number; + + /** Specifies the type of selection whether to select row or cell. + * @Default {ej.Gantt.SelectionMode.Row} + */ + selectionMode?: ej.Gantt.SelectionMode|string; + + /** Enables or disables the schedule date validation while connecting a manually scheduled task with predecessor + * @Default {false} + */ + validateManualTasksOnLinking?: boolean; + + /** Specifies the weekendBackground color in Gantt + * @Default {#F2F2F2} + */ + weekendBackground?: string; + + /** Specifies the working time schedule of day + * @Default {ej.Gantt.workingTimeScale.TimeScale8Hours} + */ + workingTimeScale?: ej.Gantt.workingTimeScale|string; + + /** Triggered for every Gantt action before its starts. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Triggered for every Gantt action success event. + */ + actionComplete?(e: ActionCompleteEventArgs): void; + + /** Triggered while enter the edit mode in the TreeGrid cell + */ + beginEdit?(e: BeginEditEventArgs): void; + + /** Triggered before selecting a cell + */ + cellSelecting?(e: CellSelectingEventArgs): void; + + /** Triggered after selected a cell + */ + cellSelected?(e: CellSelectedEventArgs): void; + + /** Triggered while dragging a row in Gantt control + */ + rowDrag?(e: RowDragEventArgs): void; + + /** Triggered while start to drag row in Gantt control + */ + rowDragStart?(e: RowDragStartEventArgs): void; + + /** Triggered while drop a row in Gantt control + */ + rowDragStop?(e: RowDragStopEventArgs): void; + + /** Triggered after collapsed the Gantt record + */ + collapsed?(e: CollapsedEventArgs): void; + + /** Triggered while collapsing the Gantt record + */ + collapsing?(e: CollapsingEventArgs): void; + + /** Triggered while Context Menu is rendered in Gantt control + */ + contextMenuOpen?(e: ContextMenuOpenEventArgs): void; + + /** Triggered when Gantt is rendered completely. + */ + create?(e: CreateEventArgs): void; + + /** Triggered after save the modified cellValue in Gantt. + */ + endEdit?(e: EndEditEventArgs): void; + + /** Triggered after expand the record + */ + expanded?(e: ExpandedEventArgs): void; + + /** Triggered while expanding the Gantt record + */ + expanding?(e: ExpandingEventArgs): void; + + /** Triggered while Gantt is loaded + */ + load?(e: LoadEventArgs): void; + + /** Triggered while rendering each cell in the TreeGrid + */ + queryCellInfo?(e: QueryCellInfoEventArgs): void; + + /** Triggered while rendering each taskbar in the Gantt + */ + queryTaskbarInfo?(e: QueryTaskbarInfoEventArgs): void; + + /** Triggered while rendering each row + */ + rowDataBound?(e: RowDataBoundEventArgs): void; + + /** Triggered after the row is selected. + */ + rowSelected?(e: RowSelectedEventArgs): void; - /** Returns the cell type which is currently rendering on the Scheduler. - */ - cellType?: string; + /** Triggered before the row is going to be selected. + */ + rowSelecting?(e: RowSelectingEventArgs): void; - /** Returns the start date of the currently rendering appointment. - */ - currentAppointmentDate?: any; + /** Triggered after completing the editing operation in taskbar + */ + taskbarEdited?(e: TaskbarEditedEventArgs): void; - /** Returns the currently rendering cell information. - */ - cell?: any; + /** Triggered while editing the Gantt chart (dragging, resizing the taskbar ) + */ + taskbarEditing?(e: TaskbarEditingEventArgs): void; - /** Returns the currently rendering resource details. - */ - resource?: any; + /** Triggered when taskbar item is clicked in Gantt. + */ + taskbarClick?(e: TaskbarClickEventArgs): void; - /** Returns the currently rendering date information. - */ - currentDay?: any; - } + /** Triggered when toolbar item is clicked in Gantt. + */ + toolbarClick?(e: ToolbarClickEventArgs): void; + } - export interface ReminderEventArgs { + export interface ActionBeginEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the grid model. + */ + model?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns the name of the event. + */ + type?: string; - /** Returns the appointment object for which the reminder is raised. - */ - reminderAppointment?: any; - } + /** Returns the current grouped column field name. + */ + columnName?: string; - export interface ResizeEventArgs { + /** Returns request type. + */ + requestType?: string; - /** Returns the object of resizing event. - */ - object?: any; + /** Returns the direction of sorting ascending or descending + */ + columnSortDirection?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the value of searching element. + */ + keyValue?: string; - /** Returns the resize element value. - */ - element?: any; + /** Returns the data of deleting element. + */ + data?: string; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns selected record index + */ + recordIndex?: number; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface ActionCompleteEventArgs { - export interface ResizeStartEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the object of resizeStart event. - */ - object?: any; + /** Returns the grid model. + */ + model?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; - /** Returns the resize element value. - */ - element?: any; + /** Returns the current grouped column field name. + */ + columnName?: string; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns request type. + */ + requestType?: string; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the direction of sorting ascending or descending + */ + columnSortDirection?: string; - export interface ResizeStopEventArgs { + /** Returns the value of searched element. + */ + keyValue?: string; - /** Returns the object of resizeStop event. - */ - object?: any; + /** Returns the data of deleted element. + */ + data?: string; - /** Returns the resized appointment value. - */ - appointment?: any; + /** Returns selected record index + */ + recordIndex?: number; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface BeginEditEventArgs { - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the target of the resized appointment. - */ - target?: any; + /** Returns the row element of editing cell. + */ + rowElement?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the Element of editing cell. + */ + cellElement?: any; - export interface OverflowButtonClickEventArgs { + /** Returns the data of current cell record. + */ + data?: any; - /** Returns the object consisting of start time, end time and resource value of the underlying cell on which the clicked overflow button is present. - */ - object?: any; + /** Returns the column Index of cell belongs. + */ + columnIndex?: number; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface CellSelectingEventArgs { - /** Returns the object of menu item event. - */ - events?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the cell index on the selection. + */ + cellIndex?: number; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the row index on the selection + */ + rowIndex?: number; - export interface OverflowButtonHoverEventArgs { + /** Returns the selecting cell element + */ + targetCell?: any; - /** Returns the object consisting of start time, end time and resource value of the underlying cell on which the overflow button is currently hovered. - */ - object?: any; + /** Returns the selecting row element + */ + targetRow?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the selecting record object + */ + data?: any; - /** Returns the object of menu item event. - */ - events?: any; + /** Returns the Gantt object Model + */ + model?: any; + } - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + export interface CellSelectedEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface KeyDownEventArgs { + /** Returns the cell index on the selection. + */ + cellIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the row index on the selection + */ + rowIndex?: number; - /** Returns the object of menu item event. - */ - events?: any; + /** Returns the selecting cell element + */ + targetCell?: any; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the selecting row element + */ + targetRow?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the selecting record object + */ + data?: any; - export interface AppointmentCreatedEventArgs { + /** Returns the Gantt object Model + */ + model?: any; - /** Returns the appointment object. - */ - appointment?: any; + /** Returns the previously selected row data + */ + previousData?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the previously selected cell index + */ + previousCellIndex?: any; - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; + /** Returns the previously selected row index + */ + previousRowIndex?: any; - /** Returns the name of the Scheduler event. - */ - type?: string; - } - - export interface AppointmentChangedEventArgs { - - /** Returns the edited appointment object. - */ - appointment?: any; - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; - - /** Returns the name of the Scheduler event. - */ - type?: string; - } - - export interface AppointmentRemovedEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the deleted appointment object. - */ - appointment?: any; - - /** Returns the Schedule model. - */ - model?: ej.Schedule.Model; - - /** Returns the name of the Scheduler event. - */ - type?: string; - } - - export interface AppointmentSettings { - - /** The dataSource option accepts either JSON object collection or DataManager (ej.DataManager) instance that contains Schedule appointments. - * @Default {[]} - */ - dataSource?: any | any[]; - - /** It holds either the ej.Query() object or simply the query string that retrieves the specified records from the table. - * @Default {null} - */ - query?: string; - - /** Assign the table name from where the records are to be fetched for the Schedule. - * @Default {null} - */ - tableName?: string; - - /** When set to false, doesn't consider the time difference offset calculation on appointment time. - * @Default {true} - */ - applyTimeOffset?: boolean; - - /** Binds the id field name in dataSource to the id of Schedule appointments. It denotes the unique id assigned to appointments. - * @Default {null} - */ - id?: string; - - /** Binds the name of startTime field in the dataSource with start time of the Schedule appointments. It indicates the date and Time when Schedule appointment actually starts. - * @Default {null} - */ - startTime?: string; - - /** Binds the name of endTime field in dataSource with the end time of Schedule appointments. It indicates the date and time when Schedule appointment actually ends. - * @Default {null} - */ - endTime?: string; - - /** Binds the name of subject field in the dataSource to appointment Subject. Indicates the Subject or title that gets displayed on Schedule appointments. - * @Default {null} - */ - subject?: string; - - /** Binds the description field name in dataSource. It indicates the appointment description. - * @Default {null} - */ - description?: string; - - /** Binds the name of recurrence field in dataSource. It indicates whether the appointment is a recurrence appointment or not. - * @Default {null} - */ - recurrence?: string; - - /** Binds the name of recurrenceRule field in dataSource. It indicates the recurrence pattern associated with appointments. - * @Default {null} - */ - recurrenceRule?: string; - - /** Binds the name of allDay field in dataSource. It indicates whether the appointment is an all-day appointment or not. - * @Default {null} - */ - allDay?: string; - - /** Binds one or more fields in resource collection dataSource. It maps the resource field names with appointments denoting the resource of appointments actually belongs. - * @Default {null} - */ - resourceFields?: string; - - /** Binds the name of categorize field in dataSource. It indicates the categorize value, red categorize, green, yellow and so on applied to the appointments. - * @Default {null} - */ - categorize?: string; - - /** Binds the name of location field in dataSource. It indicates the appointment location. - * @Default {null} - */ - location?: string; - - /** Binds the name of the priority field in dataSource. It indicates the priority, high, low, medium and none of the appointments. - * @Default {null} - */ - priority?: string; - - /** Binds the name of start timezone field in dataSource. It indicates the timezone of appointment start date. When startTimeZone field is not mentioned, - * the appointment uses the Schedule timeZone or System timeZone. - * @Default {null} - */ - startTimeZone?: string; - - /** Binds the name of end timezone field in dataSource. It indicates the timezone of appointment end date. When the endTimeZone field is not mentioned, - * the appointment uses the Schedule timeZone or System timeZone. - * @Default {null} - */ - endTimeZone?: string; - } - - export interface CategorizeSettings { - - /** When set to true, enables the multiple selection of categories to be applied for the appointments. - * @Default {false} - */ - allowMultiple?: boolean; - - /** When set to true, enables the categories option to be applied for the appointments. - * @Default {false} - */ - enable?: boolean; - - /** The dataSource option accepts either the JSON object collection or DataManager [ej.DataManager] instance that contains the categorize data. - */ - dataSource?: any[] | any; - - /** Binds id field name in the dataSource to id of category data. - * @Default {id} - */ - id?: string; - - /** Binds text field name in the dataSource to category text. - * @Default {text} - */ - text?: string; - - /** Binds color field name in the dataSource to category color. - * @Default {color} - */ - color?: string; - - /** Binds fontColor field name in the dataSource to category font. - * @Default {fontColor} - */ - fontColor?: string; - } - - export interface ContextMenuSettingsMenuItems { - - /** All the appointment related context menu items are grouped under this appointment menu collection. - */ - appointment?: any[]; - - /** All the Scheduler cell related context menu items are grouped under this cells menu item collection. - */ - cells?: any[]; - } - - export interface ContextMenuSettings { - - /** When set to true, enables the context menu options available for the Schedule cells and appointments. - * @Default {false} - */ - enable?: boolean; - - /** Contains all the default context menu options that are applicable for both Schedule cells and appointments. It also supports adding custom menu items to cells or appointment collection. - */ - menuItems?: ContextMenuSettingsMenuItems; - } - - export interface Group { - - /** Holds the array of resource names to be grouped on the Schedule. - */ - resources?: any[]; - } - - export interface WorkHours { - - /** When set to true, highlights the work hours of the Schedule. - * @Default {true} - */ - highlight?: boolean; - - /** Sets the start time to depict the start of working or business hour in a day. - * @Default {9} - */ - start?: number; - - /** Sets the end time to depict the end of working or business hour in a day. - * @Default {18} - */ - end?: number; - } - - export interface PrioritySettings { - - /** When set to true, enables the priority options available for the Schedule appointments. - * @Default {false} - */ - enable?: boolean; - - /** The dataSource option can accept the JSON object collection that contains the priority related data. - * @Default {{% highlight js%}[{ text: None, value: none },{ text: High, value: high },{ text: Medium, value: medium },{ text: Low, value: low }]{% endhighlight %}} - */ - dataSource?: any | any[]; - - /** Binds text field name in the dataSource to prioritySettings text. These text gets listed out in priority field of the appointment window. - * @Default {text} - */ - text?: string; - - /** Binds value field name in the dataSource to prioritySettings value. These field names usually accepts four priority values by default, high, low, medium and none. - * @Default {value} - */ - value?: string; - - /** Allows priority field customization in the appointment window to add custom icons denoting the priority level for the appointments. - * @Default {null} - */ - template?: string; - } - - export interface ReminderSettings { - - /** When set to true, enables the reminder option available for the Schedule appointments. - * @Default {false} - */ - enable?: boolean; - - /** Sets the timing, when the reminders are to be alerted for the Schedule appointments. - * @Default {5} - */ - alertBefore?: number; - } - - export interface RenderDates { - - /** Sets the start of custom date range to be rendered in the Schedule. - * @Default {null} - */ - start?: any; - - /** Sets the end limit of the custom date range. - * @Default {null} - */ - end?: any; - } - - export interface ResourcesResourceSettings { - - /** The dataSource option accepts either JSON object collection or DataManager (ejDataManager) instance that contains the resources related data. - * @Default {[]} - */ - dataSource?: any | any[]; - - /** Binds text field name in the dataSource to resourceSettings text. These text gets listed out in resources field of the appointment window. - * @Default {null} - */ - text?: string; - - /** Binds id field name in the dataSource to resourceSettings id. - * @Default {null} - */ - id?: string; - - /** Binds groupId field name in the dataSource to resourceSettings groupId. - * @Default {null} - */ - groupId?: string; - - /** Binds color field name in the dataSource to resourceSettings color. The color specified here gets applied to the Schedule appointments denoting to the resource it belongs. - * @Default {null} - */ - color?: string; - - /** Binds the starting work hour field name in the dataSource. It's optional, but providing it with some numeric value will set the starting work hour for specific resources. - * @Default {null} - */ - start?: string; - - /** Binds the end work hour field name in the dataSource. It's optional, but providing it with some numeric value will set the end work hour for specific resources. - * @Default {null} - */ - end?: string; - - /** Binds the resources working days field name in the dataSource. It's optional, and accepts the array of strings (week day names). When provided with specific collection of - * days (array of day names), only those days will render for the specific resources. - * @Default {null} - */ - workWeek?: string; - - /** Binds appointmentClass field name in the dataSource. It applies custom CSS class name to appointments depicting to the resource it belongs. - * @Default {null} - */ - appointmentClass?: string; - } - - export interface Resource { - - /** It holds the name of the resource field to be bound to the Schedule appointments that contains the resource Id. - * @Default {null} - */ - field?: string; - - /** It holds the title name of the resource field to be displayed on the Schedule appointment window. - * @Default {null} - */ - title?: string; - - /** A unique resource name that is used for differentiating various resource objects while grouping it in various levels. - * @Default {null} - */ - name?: string; - - /** When set to true, allows multiple selection of resource names, thus creating multiple instances of same appointment for the selected resources. - * @Default {false} - */ - allowMultiple?: boolean; - - /** It holds the field names of the resources to be bound to the Schedule and also the dataSource. - */ - resourceSettings?: ResourcesResourceSettings; - } - - export interface TimeZoneCollection { - - /** Sets the collection of timezone items to the dataSource that accepts either JSON object collection or DataManager (ej.DataManager) instance that contains Schedule timezones. - */ - dataSource?: any; - - /** Binds text field name in the dataSource to timeZoneCollection text. These text gets listed out in the timezone fields of the appointment window. - * @Default {text} - */ - text?: string; - - /** Binds id field name in the dataSource to timeZoneCollection id. - * @Default {id} - */ - id?: string; - - /** Binds value field name in the dataSource to timeZoneCollection value. - * @Default {value} - */ - value?: string; - } - - export interface AgendaViewSettings { - - /** You can display the summary of multiple week's appointment by setting this value. - * @Default {7} - */ - daysInAgenda?: number; - - /** You can customize the Date column display based on the requirement. - * @Default {null} - */ - dateColumnTemplateId?: string; - - /** You can customize the time column display based on the requirement. - * @Default {null} - */ - timeColumnTemplateId?: string; - } - - export interface TooltipSettings { - - /** Enables or disables the tooltip display. - * @Default {false} - */ - enable?: boolean; - - /** Template design that customizes the tooltip. All the field names that are mapped from dataSource to the appropriate field properties within - * the appointmentSettings can be accessed within the template. - * @Default {null} - */ - templateId?: string; - } - - export interface TimeScale { - - /** When set to true, displays the time slots on the Scheduler. - * @Default {true} - */ - enable?: boolean; - - /** When set with some specific value, defines the number of time divisions split per hour(as per value given for the majorTimeSlot). Those time divisions are meant to be the minor slots. - * @Default {2} - */ - minorSlotCount?: number; - - /** Accepts the value in minutes. When provided with specific value, displays the appropriate time interval on the Scheduler - * @Default {60} - */ - majorSlot?: number; - - /** Template design that customizes the timecells (minor slots) that are partitioned based on minorSlotCount. Accepts id value of the template defined for minor time slots. - * @Default {null} - */ - minorSlotTemplateId?: string; - - /** Template design that customizes the timecells (major slots). Accepts id value of the template defined for major time slots. - * @Default {null} - */ - majorSlotTemplateId?: string; - } - - export interface BlockoutSettings { - - /** When set to true, enables the blockout option to be applied on the Scheduler cells. - * @Default {false} - */ - enable?: boolean; - - /** Template design that applies on the Schedule block intervals. All the field names that are mapped from dataSource to the appropriate field - * properties within the blockoutSettings can be used within the template. - * @Default {null} - */ - templateId?: string; + /** Returns the previously selected cell element + */ + previousTargetCell?: any; - /** The dataSource option accepts either JSON object collection or DataManager (ej.DataManager) instance that contains Schedule block intervals. - * @Default {[]} - */ - dataSource?: any | any[]; - - /** It holds either the ej.Query() object or simply the query string that retrieves the specified records from the table. - * @Default {null} - */ - query?: string; - - /** Assign the table name from where the records are to be fetched for the Schedule. - * @Default {null} - */ - tableName?: string; - - /** Binds the id field name in dataSource to the id of block time interval. It denotes the unique id assigned to each of the block records. - * @Default {null} - */ - id?: string; - - /** Binds the name of startTime field in the dataSource with start time of block time interval. It indicates the date and time, when the block interval actually starts in the Scheduler. - * @Default {null} - */ - startTime?: string; - - /** Binds the name of endTime field in dataSource with the end time of block time interval. It indicates the date and time, when the block interval actually ends in the Scheduler. - * @Default {null} - */ - endTime?: string; - - /** Binds the name of subject field in the dataSource to block time Subject. Indicates the Subject or title that gets displayed on the Schedule block intervals. - * @Default {null} - */ - subject?: string; - - /** Binds the name of isBlockAppointment field in dataSource. When set to true, disables the appointments that lies on the blocked area and restrict to perform CRUD operations in it. - * @Default {null} - */ - isBlockAppointment?: string; - - /** Binds the name of isAllDay field in dataSource. It indicates whether an entire day is blocked or not. - * @Default {null} - */ - isAllDay?: string; - - /** Binds the name of resourceId field in dataSource. Specifies the id of the resources, to which the time intervals are needed to be blocked. - * @Default {null} - */ - resourceId?: string; - - /** Binds the name of customStyle field in dataSource. It applies the custom CSS to the block intervals. - * @Default {null} - */ - customStyle?: string; - } - - enum CurrentView { - - ///Sets currentView of the Scheduler as Day - Day, - - ///Sets currentView of the Scheduler as Week - Week, - - ///Sets currentView of the Scheduler as WorkWeek - Workweek, - - ///Sets currentView of the Scheduler as Month - Month, - - ///Sets currentView of the Scheduler as Agenda - Agenda, - - ///Sets currentView of the Scheduler as CustomView with user-specified date range. - CustomView - } - - - enum Orientation { - - ///Set orientation as vertical to Scheduler - Vertical, - - ///Set orientation as horizontal to Scheduler - Horizontal - } - - - enum TimeMode { - - ///Sets 12 hour time mode to Scheduler - Hour12, - - ///Sets 24 hour time mode to Scheduler - Hour24 - } - - } - - class RecurrenceEditor extends ej.Widget { - static fn: RecurrenceEditor; - constructor(element: JQuery | Element, options?: RecurrenceEditor.Model); - static Locale: any; - model: RecurrenceEditor.Model; - defaults: RecurrenceEditor.Model; - - /** Generates the recurrence rule with the options selected within the Recurrence Editor. - * @returns {String} - */ - getRecurrenceRule(): string; - - /** Generates the collection of date, that lies within the selected recurrence start and end date for which the recurrence pattern applies. - * @param {string} It refers the recurrence rule. - * @param {any} It refers the start date of the recurrence. - * @returns {any} - */ - recurrenceDateGenerator(recurrenceString: string, startDate: any): any; - - /** It splits and returns the recurrence rule string into object collection. - * @param {string} It refers the recurrence rule string. - * @param {any} It refers the appointment dates (ExDate) to be excluded - * @returns {any} - */ - recurrenceRuleSplit(recurrenceRule: string, exDate: any): any; - } - export namespace RecurrenceEditor { - - export interface Model { - - /** Defines the collection of recurrence frequencies within Recurrence Editor such as Never, Daily, Weekly, Monthly, Yearly and Every Weekday. - * @Default {[never, daily, weekly, monthly, yearly, everyweekday]} - */ - frequencies?: any[]; - - /** Sets the starting day of the week. - * @Default {null} - */ - firstDayOfWeek?: string; - - /** When set to true, enables the spin button of numeric textboxes within the Recurrence Editor. - * @Default {true} - */ - enableSpinners?: boolean; - - /** Sets the start date of the recurrence. The Recurrence Editor initially displays the current date as its start date. - * @Default {new Date()} - */ - startDate?: any; - - /** Sets the specific culture to the Recurrence Editor. - * @Default {en-US} - */ - locale?: string; - - /** Sets the date format for the datepickers available within the Recurrence Editor. - */ - dateFormat?: string; - - /** When set to true, renders the Recurrence Editor options from Right-to-Left direction. - * @Default {false} - */ - enableRTL?: boolean; - - /** Sets the active/current repeat type(frequency) on Recurrence Editor based on the index value provided. For example, setting the value 1 will initially set the repeat type - * as Daily and display its related options. - * @Default {0} - */ - selectedRecurrenceType?: number; - - /** Sets the minimum date limit to display on the datepickers defined within the Recurrence Editor. Setting minDate with specific date value disallows the datepickers within - * Recurrence Editor to navigate beyond that date. - * @Default {new Date(1900, 01, 01)} - */ - minDate?: any; - - /** Sets the maximum date limit to display on the datepickers used within the Recurrence Editor. Setting maxDate with specific date value disallows the - * datepickers within the Recurrence Editor to navigate beyond that date. - * @Default {new Date(2099, 12, 31)} - */ - maxDate?: any; - - /** Accepts the custom CSS class name, that defines user-defined styles and themes to be applied on partial or complete elements of the Recurrence Editor. - */ - cssClass?: string; - - /** Triggers whenever any of the Recurrence Editor's value is changed. */ - change?(e: ChangeEventArgs): void; - } - - export interface ChangeEventArgs { - - /** When set to true, event gets canceled. - */ - cancel?: boolean; - - /** Returns the Recurrence Editor model - */ - model?: ej.RecurrenceEditor.Model; - - /** Returns the name of the event - */ - type?: string; - - /** Returns the recurrence rule value. - */ - recurrenceRule?: string; - } - } - - class Gantt extends ej.Widget { - static fn: Gantt; - constructor(element: JQuery | Element, options?: Gantt.Model); - static Locale: any; - model: Gantt.Model; - defaults: Gantt.Model; - - /** To add a new item in Gantt - * @param {any} Item to add in Gantt row. - * @param {string} Defines in which position the row wants to add - * @returns {void} - */ - addRecord(data: any, rowPosition: string): void; - - /** To select cell based on the cell and row index dynamically. - * @param {Array} array of cell indexes to be select - * @param {boolean} Defines that we need to preserve the previously selected cells of not - * @returns {void} - */ - selectCells(Indexes: any[], preservePreviousSelectedCell: boolean): void; - - /** Positions the splitter by the specified column index. - * @param {number} Set the splitter position based on column index. - * @returns {void} - */ - setSplitterIndex(index: number): void; - - /** To sort the column in required direction - * @param {string} Defines the column's mapping name in which sorting have to be performed - * @param {string} Defines the sort direction whether the column has to sorted in ascending/descending order. By default it is sorting in an ascending order - * @returns {void} - */ - sortColumn(mappingName: string, columnSortDirection: string): void; - - /** To cancel the edited state of an item in Gantt - * @returns {void} - */ - cancelEdit(): void; - - /** To collapse all the parent items in Gantt - * @returns {void} - */ - collapseAllItems(): void; - - /** To delete a selected item in Gantt - * @returns {void} - */ - deleteItem(): void; - - /** destroy the Gantt widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** To Expand all the parent items in Gantt - * @returns {void} - */ - expandAllItems(): void; - - /** To expand and collapse an item in Gantt using item's ID - * @param {number} Expand or Collapse a record based on task id. - * @returns {void} - */ - expandCollapseRecord(taskId: number): void; - - /** Export the Gantt content to excel or PDF document. - * @param {string} Pass the controller action name corresponding to exporting - * @param {string} optionalASP server event name corresponding to exporting - * @param {boolean} optionalPass the multiple exporting value as true/false - * @returns {void} - */ - export(action: string, serverEvent?: string, multipleExport?: boolean): void; - - /** To hide the column by using header text - * @param {string} you can pass a header text of a column to hide - * @returns {void} - */ - hideColumn(headerText: string): void; - - /** To indent a selected item in Gantt - * @returns {void} - */ - indentItem(): void; - - /** To Open the dialog to add new task to the Gantt - * @returns {void} - */ - openAddDialog(): void; - - /** To Open the dialog to edit existing task to the Gantt - * @returns {void} - */ - openEditDialog(): void; - - /** To outdent a selected item in Gantt - * @returns {void} - */ - outdentItem(): void; - - /** To save the edited state of an item in Gantt - * @returns {void} - */ - saveEdit(): void; - - /** To search an item with search string provided at the run time - * @param {string} you can pass a text to search in Gantt Control. - * @returns {void} - */ - searchItem(searchString: string): void; - - /** To set the grid width in Gantt - * @param {string} you can give either percentage or pixels value - * @returns {void} - */ - setSplitterPosition(width: string): void; - - /** To show the column by using header text - * @param {string} you can pass a header text of a column to show - * @returns {void} - */ - showColumn(headerText: string): void; - } - export namespace Gantt { - - export interface Model { - - /** Specifies the fields to be included in the add dialog in Gantt - * @Default {[]} - */ - addDialogFields?: any[]; - - /** Enables or disables the ability to resize column. - * @Default {false} - */ - allowColumnResize?: boolean; - - /** Enables or Disables Gantt chart editing in Gantt - * @Default {true} - */ - allowGanttChartEditing?: boolean; - - /** Enables or Disables Keyboard navigation in Gantt - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** Specifies enabling or disabling multiple sorting for Gantt columns - * @Default {false} - */ - allowMultiSorting?: boolean; - - /** Enables or disables the option for multiple exporting - * @Default {false} - */ - allowMultipleExporting?: boolean; - - /** Enables or disables the interactive selection of a row. - * @Default {true} - */ - allowSelection?: boolean; - - /** Enables or disables sorting. When enabled, we can sort the column by clicking on the column. - * @Default {false} - */ - allowSorting?: boolean; - - /** Enables or disables the ability to drag and drop the row interactively to reorder the rows - * @Default {false} - */ - allowDragAndDrop?: boolean; - - /** Enable or disable predecessor validation. When it is true, all the task's start and end dates are aligned based on its predecessors start and end dates. - * @Default {true} - */ - enablePredecessorValidation?: boolean; - - /** Specifies the baseline background color in Gantt - * @Default {#fba41c} - */ - baselineColor?: string; - - /** Specifies the mapping property path for the work field of a task in the data source. When it is mapped the end date and duration for a task will be calculated automatically. - */ - workMapping?: string; - - /** Specifies the mapping property path for the expand status of a record in data source. - */ - expandStateMapping?: string; - - /** Specifies the mapping property path for baseline end date in datasource - */ - baselineEndDateMapping?: string; - - /** Specifies the mapping property path for baseline start date of a task in datasource - */ - baselineStartDateMapping?: string; - - /** Specifies the mapping property path for sub tasks in datasource - */ - childMapping?: string; - - /** To Specify the column fields to be displayed in the dialog while inserting a column using column menu. - * @Default {[]} - */ - columnDialogFields?: any[]; - - /** Specifies the background of connector lines in Gantt - */ - connectorLineBackground?: string; - - /** Specifies the width of the connector lines in Gantt - * @Default {1} - */ - connectorlineWidth?: number; - - /** Specify the CSS class for Gantt to achieve custom theme. - */ - cssClass?: string; - - /** Specifies the template for cell tooltip - * @Default {null} - */ - cellTooltipTemplate?: string; - - /** Option for customizing the drag tooltip while reordering the rows. - */ - dragTooltip?: DragTooltip; - - /** Collection of data or hierarchical data to represent in Gantt - * @Default {null} - */ - dataSource?: any[]; - - /** Specifies the dateFormat for Gantt , given format is displayed in tooltip , Grid . - * @Default {MM/dd/yyyy} - */ - dateFormat?: string; - - /** Specifies the customized working time for tasks in Gantt - * @Default {[{ from: 08:00 AM, to: 12:00 PM }, { from: 01:00 PM, to: 05:00 PM }]} - */ - dayWorkingTime?: any[]; - - /** Specifies the mapping property path for duration of a task in datasource - */ - durationMapping?: string; - - /** Specifies the duration unit for each tasks whether days or hours or minutes - * @Default {ej.Gantt.DurationUnit.Day} - */ - durationUnit?: ej.Gantt.DurationUnit | string; - - /** Specifies the fields to be included in the edit dialog in Gantt - * @Default {[]} - */ - editDialogFields?: any[]; - - /** Enables or disables the responsiveness of Gantt - * @Default {false} - */ - isResponsive?: boolean; - - /** Option to configure the splitter position. - */ - splitterSettings?: SplitterSettings; - - /** Specifies the editSettings options in Gantt. - */ - editSettings?: EditSettings; - - /** Enables or Disables enableAltRow row effect in Gantt - * @Default {true} - */ - enableAltRow?: boolean; - - /** Enables/disables work breakdown structure column. - * @Default {false} - */ - enableWBS?: boolean; - - /** Enables/disables WBS predecessor column. - * @Default {false} - */ - enableWBSPredecessor?: boolean; - - /** Enables or disables the collapse all records when loading the Gantt. - * @Default {false} - */ - enableCollapseAll?: boolean; - - /** Specifies the data source field name to be displayed as left task label - */ - leftTaskLabelMapping?: string; - - /** Specifies the data source field name to be displayed as right task label - */ - rightTaskLabelMapping?: string; - - /** Specifies the template for left task label - */ - leftTaskLabelTemplate?: string; - - /** Specifies the template for right task label - */ - rightTaskLabelTemplate?: string; - - /** Enables or disables the contextmenu for Gantt , when enabled contextmenu appears on right clicking Gantt - * @Default {false} - */ - enableContextMenu?: boolean; - - /** Indicates whether we can edit the progress of a task interactively in Gantt. - * @Default {true} - */ - enableProgressBarResizing?: boolean; - - /** Enables or disables the option for dynamically updating the Gantt size on window resizing - * @Default {false} - */ - enableResize?: boolean; - - /** Enables or disables tooltip while editing (dragging/resizing) the taskbar. - * @Default {true} - */ - enableTaskbarDragTooltip?: boolean; - - /** Enables or disables tooltip for taskbar. - * @Default {true} - */ - enableTaskbarTooltip?: boolean; - - /** Enables/Disables virtualization for rendering Gantt items. - * @Default {false} - */ - enableVirtualization?: boolean; - - /** Specifies the mapping property path for end Date of a task in datasource - */ - endDateMapping?: string; - - /** Specifies whether to highlight the weekends in Gantt . - * @Default {true} - */ - highlightWeekends?: boolean; - - /** Collection of holidays with date, background and label information to be displayed in Gantt. - * @Default {[]} - */ - holidays?: any[]; - - /** Specifies whether to include weekends while calculating the duration of a task. - * @Default {true} - */ - includeWeekend?: boolean; - - /** Specify the locale for Gantt - * @Default {en-US} - */ - locale?: string; - - /** Specifies the mapping property path for milestone in datasource - */ - milestoneMapping?: string; - - /** Enables/disables the options for inserting , deleting and renaming columns. - * @Default {false} - */ - showColumnOptions?: boolean; - - /** Specifies the template for parent taskbar - */ - parentTaskbarTemplate?: string; - - /** Specifies the nature of a task for calculating the work, and it can fixed duration, fixed work and fixed resource unit - * @Default {ej.Gantt.TaskType.FixedUnit} - */ - taskType?: ej.Gantt.TaskType | string; - - /** Specifies the unit for the work involved in a task and it can be day, hour or minute - * @Default {ej.Gantt.WorkUnit.Hour} - */ - workUnit?: ej.Gantt.WorkUnit | string; - - /** Specifies the task scheduling mode for a project and this will be set to all the tasks available in the project - * @Default {ej.Gantt.TaskSchedulingMode.Auto} - */ - taskSchedulingMode?: ej.Gantt.TaskSchedulingMode | string; - - /** Specifies the row selection type. - * @Default {ej.Gantt.SelectionType.Single} - */ - selectionType?: ej.Gantt.SelectionType | string; - - /** Specifies the background of parent progressbar in Gantt - */ - parentProgressbarBackground?: string; - - /** Specifies the mapping property path for resource's percent effort involved in a task in datasource - */ - resourceUnitMapping?: string; - - /** Specifies the mapping property path for the task description in datasource - */ - notesMapping?: string; - - /** Specifies the mapping property path for the task scheduling mode for a task in datasource - * @Default {auto} - */ - taskSchedulingModeMapping?: string; - - /** Specifies the mapping property path for task duration unit in datasource - */ - durationUnitMapping?: string; - - /** Specifies the background of parent taskbar in Gantt - */ - parentTaskbarBackground?: string; - - /** Specifies the mapping property path for parent task Id in self reference datasource - */ - parentTaskIdMapping?: string; - - /** Specifies the mapping property path for predecessors of a task in datasource - */ - predecessorMapping?: string; - - /** Specifies the background of progressbar in Gantt - */ - progressbarBackground?: string; - - /** Specified the height of the progressbar in taskbar - * @Default {100} - */ - progressbarHeight?: number; - - /** Specifies the template for tooltip on resizing progressbar - * @Default {null} - */ - progressbarTooltipTemplate?: string; - - /** Specifies the template ID for customized tooltip for progressbar editing in Gantt - * @Default {null} - */ - progressbarTooltipTemplateId?: string; - - /** Specifies the mapping property path for progress percentage of a task in datasource - */ - progressMapping?: string; - - /** It receives query to retrieve data from the table (query is same as SQL). - * @Default {null} - */ - query?: any; - - /** Enables or Disables rendering baselines in Gantt , when enabled baseline is rendered in Gantt - * @Default {false} - */ - renderBaseline?: boolean; - - /** Enables or disables the schedule date validation while connecting a manually scheduled task with predecessor - * @Default {false} - */ - validateManualTasksOnLinking?: boolean; - - /** Specifies the mapping property name for resource ID in resource Collection in Gantt - */ - resourceIdMapping?: string; - - /** Specifies the mapping property path for resources of a task in datasource - */ - resourceInfoMapping?: string; - - /** Specifies the mapping property path for resource name of a task in Gantt - */ - resourceNameMapping?: string; - - /** Collection of data regarding resources involved in entire project - * @Default {[]} - */ - resources?: any[]; - - /** Specifies whether rounding off the day working time edits - * @Default {true} - */ - roundOffDayworkingTime?: boolean; - - /** Specifies the height of a single row in Gantt. Also, we need to set same height in the CSS style with class name e-rowcell. - * @Default {30} - */ - rowHeight?: number; - - /** Specifies end date of the Gantt schedule. By default, end date will be rounded to its next Saturday. - * @Default {null} - */ - scheduleEndDate?: string; - - /** Specifies the options for customizing schedule header. - */ - scheduleHeaderSettings?: ScheduleHeaderSettings; - - /** Specifies start date of the Gantt schedule. By default, start date will be rounded to its previous Sunday. - * @Default {null} - */ - scheduleStartDate?: string; - - /** Specifies the selected row Index in Gantt , the row with given index will highlighted - * @Default {-1} - */ - selectedRowIndex?: number; - - /** Enables or disables the column chooser. - * @Default {false} - */ - showColumnChooser?: boolean; - - /** Specifies the template for cell tooltip - * @Default {true} - */ - showGridCellTooltip?: boolean; - - /** Specifies whether to show grid cell tooltip over expander cell alone. - * @Default {true} - */ - showGridExpandCellTooltip?: boolean; - - /** Specifies whether display task progress inside taskbar. - * @Default {true} - */ - showProgressStatus?: boolean; - - /** Specifies whether to display resource names for a task beside taskbar. - * @Default {true} - */ - showResourceNames?: boolean; - - /** Specifies whether to display task name beside task bar. - * @Default {true} - */ - showTaskNames?: boolean; - - /** Specifies the size option of Gantt control. - */ - sizeSettings?: SizeSettings; - - /** Specifies the selected cell information on rendering Gantt. - */ - selectedCellIndexes?: SelectedCellIndex[]; - - /** Specifies the sorting options for Gantt. - */ - sortSettings?: SortSettings; - - /** Specifies splitter position in Gantt. - * @Default {null} - */ - splitterPosition?: string; - - /** Specifies the mapping property path for start date of a task in datasource - */ - startDateMapping?: string; - - /** Specifies the options for striplines - * @Default {[]} - */ - stripLines?: any[]; - - /** Specifies the background of the taskbar in Gantt - */ - taskbarBackground?: string; - - /** Specifies the template script for customized tooltip for taskbar editing in Gantt - */ - taskbarEditingTooltipTemplate?: string; - - /** Specifies the template Id for customized tooltip for taskbar editing in Gantt - */ - taskbarEditingTooltipTemplateId?: string; - - /** Specifies the height of taskBar in Gantt. - * @Default {20} - */ - taskbarHeight?: number; - - /** Specifies the template for tooltip on mouse action on taskbars - */ - taskbarTooltipTemplate?: string; + /** Returns the previously selected row element + */ + previousTargetRow?: any; + } - /** To Specify the JsRender script Id to customize the task bar with our preference - */ - taskbarTemplate?: string; + export interface RowDragEventArgs { - /** To Specify the JsRender script Id to customize the mile stone with our preference - */ - milestoneTemplate?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Enables or disables Gantt to read-only mode - * @Default {false} - */ - readOnly?: boolean; + /** Returns the row which we start to drag. + */ + draggedRow?: any; - /** Specifies the template id for tooltip on mouse action on taskbars - */ - taskbarTooltipTemplateId?: string; + /** Returns the row index which we start to drag. + */ + draggedRowIndex?: number; - /** Specifies the mapping property path for task Id in datasource - */ - taskIdMapping?: string; + /** Returns the row on which we are dragging. + */ + targetRow?: any; - /** Specifies the mapping property path for task name in datasource - */ - taskNameMapping?: string; + /** Returns the row index on which we are dragging. + */ + targetRowIndex?: number; - /** Specifies the toolbarSettings options. - */ - toolbarSettings?: ToolbarSettings; + /** Returns that we can drop over that record or not. + */ + canDrop?: boolean; - /** Specifies the tree expander column in Gantt - * @Default {0} - */ - treeColumnIndex?: number; + /** Returns the Gantt model. + */ + model?: any; - /** Specifies the type of selection whether to select row or cell. - * @Default {ej.Gantt.SelectionMode.Row} - */ - selectionMode?: ej.Gantt.SelectionMode | string; + /** Returns request type. + */ + requestType?: string; - /** Specifies the weekendBackground color in Gantt - * @Default {#F2F2F2} - */ - weekendBackground?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Specifies the working time schedule of day - * @Default {ej.Gantt.workingTimeScale.TimeScale8Hours} - */ - workingTimeScale?: ej.Gantt.workingTimeScale | string; + export interface RowDragStartEventArgs { - /** Triggered for every Gantt action before its starts. */ - actionBegin?(e: ActionBeginEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered for every Gantt action success event. */ - actionComplete?(e: ActionCompleteEventArgs): void; + /** Returns the row which we start to drag. + */ + draggedRow?: any; - /** Triggered while enter the edit mode in the TreeGrid cell */ - beginEdit?(e: BeginEditEventArgs): void; + /** Returns the row index which we start to drag. + */ + draggedRowIndex?: boolean; - /** Triggered before selecting a cell */ - cellSelecting?(e: CellSelectingEventArgs): void; + /** Returns the Gantt model. + */ + model?: any; - /** Triggered after selected a cell */ - cellSelected?(e: CellSelectedEventArgs): void; + /** Returns request type. + */ + requestType?: string; - /** Triggered while dragging a row in Gantt control */ - rowDrag?(e: RowDragEventArgs): void; + /** Returns the name of the event. + */ + type?: string; + } - /** Triggered while start to drag row in Gantt control */ - rowDragStart?(e: RowDragStartEventArgs): void; + export interface RowDragStopEventArgs { - /** Triggered while drop a row in Gantt control */ - rowDragStop?(e: RowDragStopEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered after collapsed the Gantt record */ - collapsed?(e: CollapsedEventArgs): void; + /** Returns the row which we start to drag. + */ + draggedRow?: any; - /** Triggered while collapsing the Gantt record */ - collapsing?(e: CollapsingEventArgs): void; + /** Returns the row index which we start to drag. + */ + draggedRowIndex?: number; - /** Triggered while Context Menu is rendered in Gantt control */ - contextMenuOpen?(e: ContextMenuOpenEventArgs): void; + /** Returns the row which we are dropped to row. + */ + targetRow?: any; - /** Triggered when Gantt is rendered completely. */ - create?(e: CreateEventArgs): void; + /** Returns the row index which we are dropped to row. + */ + targetRowIndex?: number; - /** Triggered after save the modified cellValue in Gantt. */ - endEdit?(e: EndEditEventArgs): void; + /** Returns the Gantt model. + */ + model?: any; - /** Triggered after expand the record */ - expanded?(e: ExpandedEventArgs): void; + /** Returns request type. + */ + requestType?: string; - /** Triggered while expanding the Gantt record */ - expanding?(e: ExpandingEventArgs): void; + /** Returns the name of the event. + */ + type?: string; + } - /** Triggered while Gantt is loaded */ - load?(e: LoadEventArgs): void; + export interface CollapsedEventArgs { - /** Triggered while rendering each cell in the TreeGrid */ - queryCellInfo?(e: QueryCellInfoEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered while rendering each taskbar in the Gantt */ - queryTaskbarInfo?(e: QueryTaskbarInfoEventArgs): void; + /** Returns the row index of collapsed record. + */ + recordIndex?: number; - /** Triggered while rendering each row */ - rowDataBound?(e: RowDataBoundEventArgs): void; + /** Returns the data of collapsed record. + */ + data?: any; - /** Triggered after the row is selected. */ - rowSelected?(e: RowSelectedEventArgs): void; + /** Returns Request Type. + */ + requestType?: string; - /** Triggered before the row is going to be selected. */ - rowSelecting?(e: RowSelectingEventArgs): void; + /** Returns state of a record whether it is in expanded or collapsed state. + */ + expanded?: boolean; + } - /** Triggered after completing the editing operation in taskbar */ - taskbarEdited?(e: TaskbarEditedEventArgs): void; + export interface CollapsingEventArgs { - /** Triggered while editing the Gantt chart (dragging, resizing the taskbar ) */ - taskbarEditing?(e: TaskbarEditingEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered when taskbar item is clicked in Gantt. */ - taskbarClick?(e: TaskbarClickEventArgs): void; + /** Returns the row index of collapsing record. + */ + recordIndex?: number; - /** Triggered when toolbar item is clicked in Gantt. */ - toolbarClick?(e: ToolbarClickEventArgs): void; - } + /** Returns the data of edited cell record.. + */ + data?: any; - export interface ActionBeginEventArgs { + /** Returns state of a record whether it is in expanded or collapsed state. + */ + expanded?: boolean; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface ContextMenuOpenEventArgs { - /** Returns the grid model. - */ - model?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; + /** Returns the default context menu items to which we add custom items. + */ + contextMenuItems?: any[]; - /** Returns the current grouped column field name. - */ - columnName?: string; + /** Returns the Gantt model. + */ + model?: any; - /** Returns request type. - */ - requestType?: string; + /** Returns request type. + */ + requestType?: string; - /** Returns the direction of sorting ascending or descending - */ - columnSortDirection?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the value of searching element. - */ - keyValue?: string; + export interface CreateEventArgs { - /** Returns the data of deleting element. - */ - data?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns selected record index - */ - recordIndex?: number; - } + /** Returns the Gantt model + */ + model?: any; - export interface ActionCompleteEventArgs { + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface EndEditEventArgs { - /** Returns the grid model. - */ - model?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; + /** Returns the row element of editing cell. + */ + rowElement?: any; - /** Returns the current grouped column field name. - */ - columnName?: string; + /** Returns the Element of editing cell. + */ + cellElement?: any; - /** Returns request type. - */ - requestType?: string; + /** Returns the data of edited cell record. + */ + data?: any; - /** Returns the direction of sorting ascending or descending - */ - columnSortDirection?: string; + /** Returns the column name of edited cell belongs. + */ + columnName?: string; - /** Returns the value of searched element. - */ - keyValue?: string; + /** Returns the column object of edited cell belongs. + */ + columnObject?: any; + } - /** Returns the data of deleted element. - */ - data?: string; + export interface ExpandedEventArgs { - /** Returns selected record index - */ - recordIndex?: number; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface BeginEditEventArgs { + /** Returns the row index of record. + */ + recordIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the data of expanded record. + */ + data?: any; - /** Returns the row element of editing cell. - */ - rowElement?: any; + /** Returns Request Type. + */ + requestType?: string; - /** Returns the Element of editing cell. - */ - cellElement?: any; + /** Returns state of a record whether it is in expanded or collapsed state. + */ + expanded?: boolean; + } - /** Returns the data of current cell record. - */ - data?: any; + export interface ExpandingEventArgs { - /** Returns the column Index of cell belongs. - */ - columnIndex?: number; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface CellSelectingEventArgs { + /** Returns the row index of record. + */ + recordIndex?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the data of edited cell record.. + */ + data?: any; - /** Returns the cell index on the selection. - */ - cellIndex?: number; + /** Returns state of a record whether it is in expanded or collapsed state. + */ + expanded?: boolean; + } - /** Returns the row index on the selection - */ - rowIndex?: number; + export interface LoadEventArgs { - /** Returns the selecting cell element - */ - targetCell?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the selecting row element - */ - targetRow?: any; + /** Returns the Gantt model + */ + model?: any; - /** Returns the selecting record object - */ - data?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the Gantt object Model - */ - model?: any; - } + export interface QueryCellInfoEventArgs { - export interface CellSelectedEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the selecting cell element. + */ + cellElement?: any; - /** Returns the cell index on the selection. - */ - cellIndex?: number; + /** Returns the value of cell. + */ + cellValue?: string; - /** Returns the row index on the selection - */ - rowIndex?: number; + /** Returns the data of current cell record. + */ + data?: any; - /** Returns the selecting cell element - */ - targetCell?: any; + /** Returns the column of cell belongs. + */ + column?: any; + } - /** Returns the selecting row element - */ - targetRow?: any; + export interface QueryTaskbarInfoEventArgs { - /** Returns the selecting record object - */ - data?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the Gantt object Model - */ - model?: any; + /** Returns the taskbar background of current item. + */ + TaskbarBackground?: string; - /** Returns the previously selected row data - */ - previousData?: any; + /** Returns the progressbar background of current item. + */ + ProgressbarBackground?: string; - /** Returns the previously selected cell index - */ - previousCellIndex?: any; + /** Returns the parent taskbar background of current item. + */ + parentTaskbarBackground?: string; - /** Returns the previously selected row index - */ - previousRowIndex?: any; + /** Returns the parent progressbar background of current item. + */ + parentProgressbarBackground?: string; - /** Returns the previously selected cell element - */ - previousTargetCell?: any; + /** Returns the data of the record. + */ + data?: any; + } - /** Returns the previously selected row element - */ - previousTargetRow?: any; - } + export interface RowDataBoundEventArgs { - export interface RowDragEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the row element of rendering row. + */ + rowElement?: any; - /** Returns the row which we start to drag. - */ - draggedRow?: any; + /** Returns the data of rendering row record.. + */ + data?: any; + } - /** Returns the row index which we start to drag. - */ - draggedRowIndex?: number; + export interface RowSelectedEventArgs { - /** Returns the row on which we are dragging. - */ - targetRow?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the row index on which we are dragging. - */ - targetRowIndex?: number; + /** Returns the selecting row element. + */ + targetRow?: any; - /** Returns that we can drop over that record or not. - */ - canDrop?: boolean; + /** Returns the index of selecting row record. + */ + recordIndex?: number; - /** Returns the Gantt model. - */ - model?: any; + /** Returns the data of selected record. + */ + data?: any; + } - /** Returns request type. - */ - requestType?: string; + export interface RowSelectingEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface RowDragStartEventArgs { + /** Returns the data selecting record. + */ + data?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the index of selecting row record. + */ + recordIndex?: string; - /** Returns the row which we start to drag. - */ - draggedRow?: any; + /** Returns the selecting row chart element. + */ + targetChartRow?: any; - /** Returns the row index which we start to drag. - */ - draggedRowIndex?: boolean; + /** Returns the selecting row grid element. + */ + targetGridRow?: any; - /** Returns the Gantt model. - */ - model?: any; + /** Returns the previous selected data. + */ + previousData?: any; - /** Returns request type. - */ - requestType?: string; + /** Returns the previous selected row index. + */ + previousIndex?: string; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the previous selected row chart element. + */ + previousChartRow?: any; - export interface RowDragStopEventArgs { + /** Returns the previous selected row grid element. + */ + previousGridRow?: any; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface TaskbarEditedEventArgs { - /** Returns the row which we start to drag. - */ - draggedRow?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the row index which we start to drag. - */ - draggedRowIndex?: number; + /** Returns the data of edited record. + */ + data?: any; - /** Returns the row which we are dropped to row. - */ - targetRow?: any; + /** Returns the previous data value of edited record. + */ + previousData?: any; - /** Returns the row index which we are dropped to row. - */ - targetRowIndex?: number; + /** Returns 'true' if taskbar is dragged. + */ + dragging?: boolean; - /** Returns the Gantt model. - */ - model?: any; + /** Returns 'true' if taskbar is left resized. + */ + leftResizing?: boolean; - /** Returns request type. - */ - requestType?: string; + /** Returns 'true' if taskbar is right resized. + */ + rightResizing?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns 'true' if taskbar is progress resized. + */ + progressResizing?: boolean; - export interface CollapsedEventArgs { + /** Returns the field values of record being edited. + */ + editingFields?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the Gantt model. + */ + model?: any; + } - /** Returns the row index of collapsed record. - */ - recordIndex?: number; + export interface TaskbarEditingEventArgs { - /** Returns the data of collapsed record. - */ - data?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns Request Type. - */ - requestType?: string; + /** Returns the Gantt model. + */ + model?: any; - /** Returns state of a record whether it is in expanded or collapsed state. - */ - expanded?: boolean; - } + /** Returns the row object being edited. + */ + rowData?: any; - export interface CollapsingEventArgs { + /** Returns the field values of record being edited. + */ + editingFields?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the row index of collapsing record. - */ - recordIndex?: number; + export interface TaskbarClickEventArgs { - /** Returns the data of edited cell record.. - */ - data?: any; + /** Returns currently clicked row data + */ + data?: any; - /** Returns state of a record whether it is in expanded or collapsed state. - */ - expanded?: boolean; - } + /** Returns the current item index. + */ + index?: number; - export interface ContextMenuOpenEventArgs { + /** Returns the Gantt model. + */ + model?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the clicked row element + */ + taskbarElement?: any; - /** Returns the default context menu items to which we add custom items. - */ - contextMenuItems?: any[]; + /** Returns the target element. + */ + target?: any; - /** Returns the Gantt model. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns request type. - */ - requestType?: string; + export interface ToolbarClickEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface CreateEventArgs { + /** Returns the current item. + */ + currentTarget?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the Gantt model. + */ + model?: any; + + /** Returns the name of the toolbar item on which mouse click has been performed + */ + itemName?: string; + + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the Gantt model - */ - model?: any; + export interface AddDialogField { - /** Returns the name of the event. - */ - type?: string; - } + /** Specifies mapping name to include required fields in Gantt + */ + field?: string; - export interface EndEditEventArgs { + /** Specifies editType of fields to be included in the add dialog in Gantt + */ + editType?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface DragTooltip { - /** Returns the row element of editing cell. - */ - rowElement?: any; + /** Specifies option to enable/disable tooltip while drag and drop a row. + * @Default {true} + */ + showTooltip?: boolean; - /** Returns the Element of editing cell. - */ - cellElement?: any; - - /** Returns the data of edited cell record. - */ - data?: any; - - /** Returns the column name of edited cell belongs. - */ - columnName?: string; - - /** Returns the column object of edited cell belongs. - */ - columnObject?: any; - } - - export interface ExpandedEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the row index of record. - */ - recordIndex?: number; - - /** Returns the data of expanded record. - */ - data?: any; - - /** Returns Request Type. - */ - requestType?: string; - - /** Returns state of a record whether it is in expanded or collapsed state. - */ - expanded?: boolean; - } - - export interface ExpandingEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the row index of record. - */ - recordIndex?: any; - - /** Returns the data of edited cell record.. - */ - data?: any; - - /** Returns state of a record whether it is in expanded or collapsed state. - */ - expanded?: boolean; - } - - export interface LoadEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the Gantt model - */ - model?: any; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface QueryCellInfoEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the selecting cell element. - */ - cellElement?: any; - - /** Returns the value of cell. - */ - cellValue?: string; - - /** Returns the data of current cell record. - */ - data?: any; - - /** Returns the column of cell belongs. - */ - column?: any; - } - - export interface QueryTaskbarInfoEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the taskbar background of current item. - */ - TaskbarBackground?: string; - - /** Returns the progressbar background of current item. - */ - ProgressbarBackground?: string; - - /** Returns the parent taskbar background of current item. - */ - parentTaskbarBackground?: string; - - /** Returns the parent progressbar background of current item. - */ - parentProgressbarBackground?: string; - - /** Returns the data of the record. - */ - data?: any; - } - - export interface RowDataBoundEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the row element of rendering row. - */ - rowElement?: any; - - /** Returns the data of rendering row record.. - */ - data?: any; - } - - export interface RowSelectedEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the selecting row element. - */ - targetRow?: any; - - /** Returns the index of selecting row record. - */ - recordIndex?: number; - - /** Returns the data of selected record. - */ - data?: any; - } - - export interface RowSelectingEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the data selecting record. - */ - data?: any; - - /** Returns the index of selecting row record. - */ - recordIndex?: string; - - /** Returns the selecting row chart element. - */ - targetChartRow?: any; - - /** Returns the selecting row grid element. - */ - targetGridRow?: any; - - /** Returns the previous selected data. - */ - previousData?: any; - - /** Returns the previous selected row index. - */ - previousIndex?: string; - - /** Returns the previous selected row chart element. - */ - previousChartRow?: any; - - /** Returns the previous selected row grid element. - */ - previousGridRow?: any; - } - - export interface TaskbarEditedEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the data of edited record. - */ - data?: any; - - /** Returns the previous data value of edited record. - */ - previousData?: any; - - /** Returns 'true' if taskbar is dragged. - */ - dragging?: boolean; - - /** Returns 'true' if taskbar is left resized. - */ - leftResizing?: boolean; - - /** Returns 'true' if taskbar is right resized. - */ - rightResizing?: boolean; - - /** Returns 'true' if taskbar is progress resized. - */ - progressResizing?: boolean; - - /** Returns the field values of record being edited. - */ - editingFields?: any; - - /** Returns the Gantt model. - */ - model?: any; - } - - export interface TaskbarEditingEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the Gantt model. - */ - model?: any; - - /** Returns the row object being edited. - */ - rowData?: any; - - /** Returns the field values of record being edited. - */ - editingFields?: any; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface TaskbarClickEventArgs { - - /** Returns currently clicked row data - */ - data?: any; - - /** Returns the current item index. - */ - index?: number; - - /** Returns the Gantt model. - */ - model?: any; - - /** Returns the clicked row element - */ - taskbarElement?: any; - - /** Returns the target element. - */ - target?: any; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface ToolbarClickEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the current item. - */ - currentTarget?: any; - - /** Returns the Gantt model. - */ - model?: any; - - /** Returns the name of the toolbar item on which mouse click has been performed - */ - itemName?: string; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface AddDialogField { - - /** Specifies mapping name to include required fields in Gantt - */ - field?: string; - - /** Specifies editType of fields to be included in the add dialog in Gantt - */ - editType?: string; - } - - export interface DragTooltip { - - /** Specifies option to enable/disable tooltip while drag and drop a row. - * @Default {true} - */ - showTooltip?: boolean; - - /** Specifies the data source fields to be displayed in the drag tooltip. - * @Default {[]} - */ - tooltipItems?: any[]; - - /** Specifies the custom template for drag tooltip. - * @Default {null} - */ - tooltipTemplate?: string; - } - - export interface EditDialogField { - - /** Specifies mapping name to include required fields in Gantt - */ - field?: string; - - /** Specifies editType of fields to be included in the edit dialog in Gantt - */ - editType?: string; - } - - export interface SplitterSettings { - - /** Specifies position of the splitter in Gantt , splitter can be placed either based on percentage values or pixel values. - */ - position?: string; - - /** Specifies the position of splitter in Gantt, based on column index in Gantt. - */ - index?: string; - } - - export interface EditSettings { - - /** Enables or disables add record icon in Gantt toolbar - * @Default {false} - */ - allowAdding?: boolean; - - /** Enables or disables delete icon in Gantt toolbar - * @Default {false} - */ - allowDeleting?: boolean; - - /** Specifies the option for enabling or disabling editing in Gantt grid part - * @Default {false} - */ - allowEditing?: boolean; - - /** Specifies the option for enabling or disabling indent action in Gantt. - * @Default {false} - */ - allowIndent?: boolean; - - /** Specifies the option for enabling or disabling outdent action in Gantt - * @Default {false} - */ - allowOutdent?: boolean; - - /** Specifies the mouse action whether single click or double click to begin the editing - * @Default {ej.Gantt.BeginEditAction.DblClick} - */ - beginEditAction?: ej.Gantt.BeginEditAction | string; - - /** Specifies the edit mode in Gantt, "normal" is for dialog editing ,"cellEditing" is for cell type editing - * @Default {normal} - */ - editMode?: string; - - /** Specifies the position where the new row has to be added. - * @Default {ej.Gantt.RowPosition.BelowSelectedRow} - */ - rowPosition?: ej.Gantt.RowPosition | string; - } - - export interface Holiday { - - /** Specifies holiday date to be displayed in Gantt - */ - day?: string; - - /** Specifies the background color for holiday date in Gantt Schedule - */ - background?: string; - - /** Specifies the label to be displayed for rendered holiday in Gantt - */ - label?: string; - } - - export interface ScheduleHeaderSettings { - - /** Specified the format for day view in schedule header - * @Default {ddd} - */ - dayHeaderFormat?: string; - - /** Specified the format for Hour view in schedule header - * @Default {HH} - */ - hourHeaderFormat?: string; - - /** Specifies the number of minutes per interval - * @Default {ej.Gantt.minutesPerInterval.Auto} - */ - minutesPerInterval?: ej.Gantt.minutesPerInterval | string; - - /** Specified the format for month view in schedule header - * @Default {MMM} - */ - monthHeaderFormat?: string; - - /** Specifies the schedule mode - * @Default {ej.Gantt.ScheduleHeaderType.Week} - */ - scheduleHeaderType?: ej.Gantt.ScheduleHeaderType | string; - - /** Specifies the round-off mode for the start date in schedule header. - * @Default {ej.Gantt.TimescaleRoundMode.Auto} - */ - timescaleStartDateMode?: ej.Gantt.TimescaleRoundMode | string; - - /** Specified the background for weekends in Gantt - * @Default {#F2F2F2} - */ - weekendBackground?: string; + /** Specifies the data source fields to be displayed in the drag tooltip. + * @Default {[]} + */ + tooltipItems?: any[]; + + /** Specifies the custom template for drag tooltip. + * @Default {null} + */ + tooltipTemplate?: string; + } + + export interface EditDialogField { + + /** Specifies mapping name to include required fields in Gantt + */ + field?: string; + + /** Specifies editType of fields to be included in the edit dialog in Gantt + */ + editType?: string; + } + + export interface SplitterSettings { + + /** Specifies position of the splitter in Gantt , splitter can be placed either based on percentage values or pixel values. + */ + position?: string; + + /** Specifies the position of splitter in Gantt, based on column index in Gantt. + */ + index?: string; + } + + export interface EditSettings { + + /** Enables or disables add record icon in Gantt toolbar + * @Default {false} + */ + allowAdding?: boolean; + + /** Enables or disables delete icon in Gantt toolbar + * @Default {false} + */ + allowDeleting?: boolean; + + /** Specifies the option for enabling or disabling editing in Gantt grid part + * @Default {false} + */ + allowEditing?: boolean; + + /** Specifies the option for enabling or disabling indent action in Gantt. + * @Default {false} + */ + allowIndent?: boolean; + + /** Specifies the option for enabling or disabling outdent action in Gantt + * @Default {false} + */ + allowOutdent?: boolean; + + /** Specifies the mouse action whether single click or double click to begin the editing + * @Default {ej.Gantt.BeginEditAction.DblClick} + */ + beginEditAction?: ej.Gantt.BeginEditAction|string; + + /** Specifies the edit mode in Gantt, "normal" is for dialog editing ,"cellEditing" is for cell type editing + * @Default {normal} + */ + editMode?: string; + + /** Specifies the position where the new row has to be added. + * @Default {ej.Gantt.RowPosition.BelowSelectedRow} + */ + rowPosition?: ej.Gantt.RowPosition|string; + } + + export interface Holiday { + + /** Specifies holiday date to be displayed in Gantt + */ + day?: string; + + /** Specifies the background color for holiday date in Gantt Schedule + */ + background?: string; + + /** Specifies the label to be displayed for rendered holiday in Gantt + */ + label?: string; + } + + export interface ScheduleHeaderSettings { + + /** Specified the format for day view in schedule header + */ + dayHeaderFormat?: string; + + /** Specified the format for Hour view in schedule header + * @Default {HH} + */ + hourHeaderFormat?: string; + + /** Specifies the number of minutes per interval + * @Default {ej.Gantt.minutesPerInterval.Auto} + */ + minutesPerInterval?: ej.Gantt.minutesPerInterval|string; + + /** Specified the format for month view in schedule header + * @Default {MMM} + */ + monthHeaderFormat?: string; + + /** Specifies the schedule mode + * @Default {ej.Gantt.ScheduleHeaderType.Week} + */ + scheduleHeaderType?: ej.Gantt.ScheduleHeaderType|string; + + /** Specifies the round-off mode for the start date in schedule header. + * @Default {ej.Gantt.TimescaleRoundMode.Auto} + */ + timescaleStartDateMode?: ej.Gantt.TimescaleRoundMode|string; + + /** Specified the background for weekends in Gantt + * @Default {#F2F2F2} + */ + weekendBackground?: string; /** Specified the format for week view in schedule header * @Default {MMM dd , yyyy} */ - weekHeaderFormat?: string; + weekHeaderFormat?: string; - /** Specified the format for year view in schedule header - * @Default {yyyy} - */ - yearHeaderFormat?: string; + /** Specified the format for year view in schedule header + * @Default {yyyy} + */ + yearHeaderFormat?: string; - /** Specifies the size of the lowest time unit along the timescale, with minimum value as "50%" and maximum value as "500%". It is also possible to set the value in pixels. - * @Default {100%} - */ - timescaleUnitSize?: string; + /** Specifies the size of the lowest time unit along the timescale, with minimum value as "50%" and maximum value as "500%". It is also possible to set the value + * in pixels. + * @Default {100%} + */ + timescaleUnitSize?: string; - /** Specifies the start day of the week in week timescale mode - * @Default {0} - */ - weekStartDay?: number; - } + /** Specifies the start day of the week in week timescale mode + * @Default {0} + */ + weekStartDay?: number; + } - export interface SizeSettings { + export interface SizeSettings { - /** Specifies the height of Gantt control - * @Default {450px} - */ - height?: string; + /** Specifies the height of Gantt control + */ + height?: string; - /** Specifies the width of Gantt control - * @Default {1000px} - */ - width?: string; - } + /** Specifies the width of Gantt control + */ + width?: string; + } - export interface SelectedCellIndex { + export interface SelectedCellIndex { - /** Specifies the row index of the cell to be selected Gantt control - */ - rowIndex?: number; + /** Specifies the row index of the cell to be selected Gantt control + */ + rowIndex?: number; - /** Specifies the cell index to be selected in the row. - * @Default { } - */ - cellIndex?: number; - } + /** Specifies the cell index to be selected in the row. + * @Default { } + */ + cellIndex?: number; + } - export interface SortSettingsSortedColumn { + export interface SortSettingsSortedColumn { - /** Specifies the field to be sorted in Gantt - */ - field?: string; + /** Specifies the field to be sorted in Gantt + */ + field?: string; - /** Specifies the sort direction in Gantt - */ - direction?: string; - } + /** Specifies the sort direction in Gantt + */ + direction?: string; + } - export interface SortSettings { + export interface SortSettings { - /** Specifies the sorted columns for Gantt - * @Default {[]} - */ - sortedColumns?: SortSettingsSortedColumn[]; - } + /** Specifies the sorted columns for Gantt + * @Default {[]} + */ + sortedColumns?: SortSettingsSortedColumn[]; + } - export interface StripLine { + export interface StripLine { - /** Specifies date to render striplines in Gantt - */ - day?: string; + /** Specifies date to render striplines in Gantt + */ + day?: string; - /** Specifies label to be displayed for striplines in Gantt - */ - label?: string; + /** Specifies label to be displayed for striplines in Gantt + */ + label?: string; - /** Specifies line style for rendered striplines in Gantt - */ - lineStyle?: string; + /** Specifies line style for rendered striplines in Gantt + */ + lineStyle?: string; - /** Specifies the line color for rendered striplines in Gantt - */ - lineColor?: string; + /** Specifies the line color for rendered striplines in Gantt + */ + lineColor?: string; - /** Specifies the width of the stripline in Gantt - */ - lineWidth?: string; - } + /** Specifies the width of the stripline in Gantt + */ + lineWidth?: string; + } - export interface ToolbarSettingsCustomToolbarItem { + export interface ToolbarSettingsCustomToolbarItem { - /** Allows the user to insert the custom icons in toolbar using CSS class name selector. - */ - text?: string; + /** Allows the user to insert the custom icons in toolbar using CSS class name selector. + */ + text?: string; - /** Allows the user to insert the custom icons in toolbar using script templates. Using this property we can bind HTML elements and other EJ controls to Gantt toolbar. - */ - templateID?: string; + /** Allows the user to insert the custom icons in toolbar using script templates. Using this property we can bind HTML elements and other EJ controls to Gantt toolbar. + */ + templateID?: string; - /** Allows the user to display custom tooltip text for Gantt custom toolbar items. - */ - tooltipText?: string; - } + /** Allows the user to display custom tooltip text for Gantt custom toolbar items. + */ + tooltipText?: string; + } - export interface ToolbarSettings { + export interface ToolbarSettings { - /** Specifies the state of enabling or disabling toolbar - * @Default {true} - */ - showToolbar?: boolean; + /** Specifies the state of enabling or disabling toolbar + * @Default {true} + */ + showToolbar?: boolean; - /** Specifies the list of toolbar items to be rendered in Gantt toolbar - * @Default {[]} - */ - toolbarItems?: any[]; + /** Specifies the list of toolbar items to be rendered in Gantt toolbar + * @Default {[]} + */ + toolbarItems?: any[]; - /** Allows the user to insert custom toolbar items. - */ - customToolbarItems?: ToolbarSettingsCustomToolbarItem[]; - } + /** Allows the user to insert custom toolbar items. + */ + customToolbarItems?: ToolbarSettingsCustomToolbarItem[]; + } - enum DurationUnit { + enum DurationUnit { - ///Sets the Duration Unit as day. - Day, + ///Sets the Duration Unit as day. + Day, - ///Sets the Duration Unit as hour. - Hour, + ///Sets the Duration Unit as hour. + Hour, - ///Sets the Duration Unit as minute. - Minute - } + ///Sets the Duration Unit as minute. + Minute + } - enum BeginEditAction { + enum BeginEditAction { - ///you can begin the editing at double click - DblClick, + ///you can begin the editing at double click + DblClick, - ///you can begin the editing at single click - Click - } + ///you can begin the editing at single click + Click + } - enum RowPosition { + enum RowPosition { - ///you can add a new row at top. - Top, + ///you can add a new row at top. + Top, - ///you can add a new row at bottom. - Bottom, + ///you can add a new row at bottom. + Bottom, - ///you can add a new row to above selected row. - AboveSelectedRow, + ///you can add a new row to above selected row. + AboveSelectedRow, - ///you can add a new row to below selected row. - BelowSelectedRow, + ///you can add a new row to below selected row. + BelowSelectedRow, - ///you can add a new row as a child for selected row. - Child - } + ///you can add a new row as a child for selected row. + Child + } - enum TaskType { + enum TaskType { - ///Resource unit remains constant while editing the work and duration values. - FixedUnit, + ///Resource unit remains constant while editing the work and duration values. + FixedUnit, - ///Work value of a task remains constant while editing duration and resource unit values. - FixedWork, + ///Work value of a task remains constant while editing duration and resource unit values. + FixedWork, - ///Duration value remains constant while editing work and resource unit values. - FixedDuration - } + ///Duration value remains constant while editing work and resource unit values. + FixedDuration + } - enum WorkUnit { + enum WorkUnit { - ///Displays the work involved in a task in days. - Day, + ///Displays the work involved in a task in days. + Day, - ///Displays the work involved in a task in hours. - Hour, + ///Displays the work involved in a task in hours. + Hour, - ///Displays the work involved in a task in minutes - Minute - } + ///Displays the work involved in a task in minutes + Minute + } - enum TaskSchedulingMode { + enum TaskSchedulingMode { - ///All the tasks in the project will be displayed in auto scheduled mode, where the tasks are scheduled automatically over non-working days and holidays. - Auto, + ///All the tasks in the project will be displayed in auto scheduled mode, where the tasks are scheduled automatically over non-working days and holidays. + Auto, - ///All the tasks in the project will be displayed in manually scheduled mode. - Manual, + ///All the tasks in the project will be displayed in manually scheduled mode. + Manual, - ///Project consists of tasks with both auto and manually scheduled modes, based on the datasource values - Custom - } + ///Project consists of tasks with both auto and manually scheduled modes, based on the datasource values + Custom + } - enum SelectionType { + enum SelectionType { - ///you can select a single row. - Single, + ///you can select a single row. + Single, - ///you can select a multiple row. - Multiple - } + ///you can select a multiple row. + Multiple + } - enum minutesPerInterval { + enum minutesPerInterval { - ///Sets the interval automatically according with schedule start and end date. - Auto, + ///Sets the interval automatically according with schedule start and end date. + Auto, - ///Sets one minute intervals per hour. - OneMinute, + ///Sets one minute intervals per hour. + OneMinute, - ///Sets Five minute intervals per hour. - FiveMinutes, + ///Sets Five minute intervals per hour. + FiveMinutes, - ///Sets fifteen minute intervals per hour. - FifteenMinutes, + ///Sets fifteen minute intervals per hour. + FifteenMinutes, - ///Sets thirty minute intervals per hour. - ThirtyMinutes - } + ///Sets thirty minute intervals per hour. + ThirtyMinutes + } - enum ScheduleHeaderType { + enum ScheduleHeaderType { - ///Sets year Schedule Mode. - Year, + ///Sets year Schedule Mode. + Year, - ///Sets month Schedule Mode. - Month, + ///Sets month Schedule Mode. + Month, - ///Sets week Schedule Mode. - Week, + ///Sets week Schedule Mode. + Week, - ///Sets day Schedule Mode. - Day, + ///Sets day Schedule Mode. + Day, - ///Sets hour Schedule Mode. - Hour - } + ///Sets hour Schedule Mode. + Hour + } - enum TimescaleRoundMode { + enum TimescaleRoundMode { - ///The round-off value will be automatically calculated based on the data source values. - Auto, + ///The round-off value will be automatically calculated based on the data source values. + Auto, - ///Schedule header start date will round-off to the immediate week. - Week, + ///Schedule header start date will round-off to the immediate week. + Week, - ///Schedule headers start date will round off to the immediate month - Month, + ///Schedule headers start date will round off to the immediate month + Month, - ///Schedule headers start date will round off to the immediate year - Year - } + ///Schedule headers start date will round off to the immediate year + Year + } - enum SelectionMode { + enum SelectionMode { - ///you can select a row. - Row, + ///you can select a row. + Row, - ///you can select a cell. - Cell - } + ///you can select a cell. + Cell + } - enum workingTimeScale { + enum workingTimeScale { - ///Sets eight hour timescale. - TimeScale8Hours, + ///Sets eight hour timescale. + TimeScale8Hours, - ///Sets twenty four hour timescale. - TimeScale24Hours - } + ///Sets twenty four hour timescale. + TimeScale24Hours + } - } + } - class ReportViewer extends ej.Widget { - static fn: ReportViewer; - constructor(element: JQuery | Element, options?: ReportViewer.Model); - static Locale: any; - model: ReportViewer.Model; - defaults: ReportViewer.Model; + class ReportViewer extends ej.Widget { + static fn: ReportViewer; + constructor(element: JQuery | Element, options?: ReportViewer.Model); + static Locale: any; + model: ReportViewer.Model; + defaults: ReportViewer.Model; - /** Export the report to the specified format. - * @returns {void} - */ - exportReport(): void; + /** Export the report to the specified format. + * @returns {void} + */ + exportReport(): void; - /** Fit the report page to the container. - * @returns {void} - */ - fitToPage(): void; + /** Fit the report page to the container. + * @returns {void} + */ + fitToPage(): void; - /** Fit the report page height to the container. - * @returns {void} - */ - fitToPageHeight(): void; + /** Fit the report page height to the container. + * @returns {void} + */ + fitToPageHeight(): void; - /** Fit the report page width to the container. - * @returns {void} - */ - fitToPageWidth(): void; + /** Fit the report page width to the container. + * @returns {void} + */ + fitToPageWidth(): void; - /** Get the available datasets name of the rdlc report. - * @returns {void} - */ - getDataSetNames(): void; + /** Get the available datasets name of the rdlc report. + * @returns {void} + */ + getDataSetNames(): void; - /** Get the available parameters of the report. - * @returns {void} - */ - getParameters(): void; + /** Get the available parameters of the report. + * @returns {void} + */ + getParameters(): void; - /** Navigate to first page of report. - * @returns {void} - */ - gotoFirstPage(): void; + /** Navigate to first page of report. + * @returns {void} + */ + gotoFirstPage(): void; - /** Navigate to last page of the report. - * @returns {void} - */ - gotoLastPage(): void; - - /** Navigate to next page from the current page. - * @returns {void} - */ - gotoNextPage(): void; - - /** Go to specific page index of the report. - * @returns {void} - */ - gotoPageIndex(): void; - - /** Navigate to previous page from the current page. - * @returns {void} - */ - gotoPreviousPage(): void; - - /** Print the report. - * @returns {void} - */ - print(): void; - - /** Apply print layout to the report. - * @returns {void} - */ - printLayout(): void; - - /** Refresh the report. - * @returns {void} - */ - refresh(): void; - } - export namespace ReportViewer { - - export interface Model { - - /** Gets or sets the list of data sources for the RDLC report. - * @Default {[]} - */ - dataSources?: DataSource[]; - - /** Enables or disables the page cache of report. - * @Default {false} - */ - enablePageCache?: boolean; - - /** Specifies the export settings. - */ - exportSettings?: ExportSettings; - - /** When set to true, adapts the report layout to fit the screen size of devices on which it renders. - * @Default {true} - */ - isResponsive?: boolean; - - /** Specifies the locale for report viewer. - * @Default {en-US} - */ - locale?: string; - - /** Specifies the page settings. - */ - pageSettings?: PageSettings; - - /** Gets or sets the list of parameters associated with the report. - * @Default {[]} - */ - parameters?: Parameter[]; - - /** Enables and disables the print mode. - * @Default {false} - */ - printMode?: boolean; - - /** Specifies the print option of the report. - * @Default {ej.ReportViewer.PrintOptions.Default} - */ - printOptions?: ej.ReportViewer.PrintOptions | string; - - /** Specifies the processing mode of the report. - * @Default {ej.ReportViewer.ProcessingMode.Remote} - */ - processingMode?: ej.ReportViewer.ProcessingMode | string; - - /** Specifies the render layout. - * @Default {ej.ReportViewer.RenderMode.Default} - */ - renderMode?: ej.ReportViewer.RenderMode | string; - - /** Gets or sets the path of the report file. - * @Default {empty} - */ - reportPath?: string; - - /** Gets or sets the reports server URL. - * @Default {empty} - */ - reportServerUrl?: string; - - /** Specifies the report Web API service URL. - * @Default {empty} - */ - reportServiceUrl?: string; - - /** Specifies the toolbar settings. - */ - toolbarSettings?: ToolbarSettings; - - /** Gets or sets the zoom factor for report viewer. - * @Default {1} - */ - zoomFactor?: number; - - /** Fires when the report viewer is destroyed successfully.If you want to perform any operation after destroying the reportviewer control,you can make use of the destroy event. */ - destroy?(e: DestroyEventArgs): void; + /** Navigate to last page of the report. + * @returns {void} + */ + gotoLastPage(): void; + + /** Navigate to next page from the current page. + * @returns {void} + */ + gotoNextPage(): void; + + /** Go to specific page index of the report. + * @returns {void} + */ + gotoPageIndex(): void; + + /** Navigate to previous page from the current page. + * @returns {void} + */ + gotoPreviousPage(): void; + + /** Print the report. + * @returns {void} + */ + print(): void; + + /** Apply print layout to the report. + * @returns {void} + */ + printLayout(): void; + + /** Refresh the report. + * @returns {void} + */ + refresh(): void; + } + export namespace ReportViewer { + + export interface Model { + + /** Gets or sets the list of data sources for the RDLC report. + * @Default {[]} + */ + dataSources?: DataSource[]; + + /** Enables or disables the page cache of report. + * @Default {false} + */ + enablePageCache?: boolean; + + /** Specifies the export settings. + */ + exportSettings?: ExportSettings; + + /** When set to true, adapts the report layout to fit the screen size of devices on which it renders. + * @Default {true} + */ + isResponsive?: boolean; + + /** Specifies the locale for report viewer. + * @Default {en-US} + */ + locale?: string; + + /** Specifies the page settings. + */ + pageSettings?: PageSettings; + + /** Gets or sets the list of parameters associated with the report. + * @Default {[]} + */ + parameters?: Parameter[]; + + /** Enables and disables the print mode. + * @Default {false} + */ + printMode?: boolean; + + /** Specifies the print option of the report. + * @Default {ej.ReportViewer.PrintOptions.Default} + */ + printOptions?: ej.ReportViewer.PrintOptions|string; + + /** Specifies the processing mode of the report. + * @Default {ej.ReportViewer.ProcessingMode.Remote} + */ + processingMode?: ej.ReportViewer.ProcessingMode|string; + + /** Specifies the render layout. + * @Default {ej.ReportViewer.RenderMode.Default} + */ + renderMode?: ej.ReportViewer.RenderMode|string; + + /** Gets or sets the path of the report file. + * @Default {empty} + */ + reportPath?: string; + + /** Gets or sets the reports server URL. + * @Default {empty} + */ + reportServerUrl?: string; + + /** Specifies the report Web API service URL. + * @Default {empty} + */ + reportServiceUrl?: string; + + /** Specifies the toolbar settings. + */ + toolbarSettings?: ToolbarSettings; + + /** Gets or sets the zoom factor for report viewer. + * @Default {1} + */ + zoomFactor?: number; + + /** Fires when the report viewer is destroyed successfully.If you want to perform any operation after destroying the reportviewer control,you can make use of the destroy event. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires during drill through action done in report.If you want to perform any operation when a drill through action is performed, you can make use of the drillThrough event. + */ + drillThrough?(e: DrillThroughEventArgs): void; + + /** Fires before report rendering is completed.If you want to perform any operation before the rendering of report,you can make use of the renderingBegin event. + */ + renderingBegin?(e: RenderingBeginEventArgs): void; + + /** Fires after report rendering completed.If you want to perform any operation after the rendering of report,you can make use of this renderingComplete event. + */ + renderingComplete?(e: RenderingCompleteEventArgs): void; + + /** Fires when any error occurred while rendering the report.If you want to perform any operation when an error occurs in the report, you can make use of the reportError event. + */ + reportError?(e: ReportErrorEventArgs): void; + + /** Fires when the report is being exported.If you want to perform any operation before exporting of report, you can make use of the reportExport event. + */ + reportExport?(e: ReportExportEventArgs): void; + + /** Fires when the report is loaded.If you want to perform any operation after the successful loading of report, you can make use of the reportLoaded event. + */ + reportLoaded?(e: ReportLoadedEventArgs): void; + + /** Fires when click the View Report Button. + */ + viewReportClick?(e: ViewReportClickEventArgs): void; + } + + export interface DestroyEventArgs { + + /** true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the report model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface DrillThroughEventArgs { - /** Fires during drill through action done in report.If you want to perform any operation when a drill through action is performed, you can make use of the drillThrough event. */ - drillThrough?(e: DrillThroughEventArgs): void; - - /** Fires before report rendering is completed.If you want to perform any operation before the rendering of report,you can make use of the renderingBegin event. */ - renderingBegin?(e: RenderingBeginEventArgs): void; + /** true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Fires after report rendering completed.If you want to perform any operation after the rendering of report,you can make use of this renderingComplete event. */ - renderingComplete?(e: RenderingCompleteEventArgs): void; + /** returns the actionInfo's parameters bookmarkLink, hyperLink, reportName, parameters. + */ + actionInfo?: any; - /** Fires when any error occurred while rendering the report.If you want to perform any operation when an error occurs in the report, you can make use of the reportError event. */ - reportError?(e: ReportErrorEventArgs): void; + /** returns the report model. + */ + model?: any; - /** Fires when the report is being exported.If you want to perform any operation before exporting of report, you can make use of the reportExport event. */ - reportExport?(e: ReportExportEventArgs): void; + /** returns the name of the event. + */ + type?: string; + } - /** Fires when the report is loaded.If you want to perform any operation after the successful loading of report, you can make use of the reportLoaded event. */ - reportLoaded?(e: ReportLoadedEventArgs): void; + export interface RenderingBeginEventArgs { - /** Fires when click the View Report Button. */ - viewReportClick?(e: ViewReportClickEventArgs): void; - } + /** true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface DestroyEventArgs { + /** returns the report model. + */ + model?: any; - /** true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event. + */ + type?: string; + } - /** returns the report model. - */ - model?: any; + export interface RenderingCompleteEventArgs { - /** returns the name of the event. - */ - type?: string; - } + /** true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface DrillThroughEventArgs { + /** returns the report model. + */ + model?: any; - /** true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event. + */ + type?: string; - /** returns the actionInfo's parameters bookmarkLink, hyperLink, reportName, parameters. - */ - actionInfo?: any; + /** returns the collection of parameters. + */ + reportParameters?: any; + } - /** returns the report model. - */ - model?: any; + export interface ReportErrorEventArgs { - /** returns the name of the event. - */ - type?: string; - } + /** true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface RenderingBeginEventArgs { + /** returns the error details. + */ + error?: string; - /** true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the report model. + */ + model?: any; - /** returns the report model. - */ - model?: any; + /** returns the name of the event. + */ + type?: string; + } - /** returns the name of the event. - */ - type?: string; - } + export interface ReportExportEventArgs { - export interface RenderingCompleteEventArgs { + /** true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the report model. + */ + model?: any; - /** returns the report model. - */ - model?: any; + /** returns the name of the event. + */ + type?: string; + } - /** returns the name of the event. - */ - type?: string; + export interface ReportLoadedEventArgs { - /** returns the collection of parameters. - */ - reportParameters?: any; - } + /** true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - export interface ReportErrorEventArgs { + /** returns the report model. + */ + model?: any; - /** true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** returns the name of the event. + */ + type?: string; + } - /** returns the error details. - */ - error?: string; + export interface ViewReportClickEventArgs { + + /** true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the parameter collection. + */ + parameters?: any; + + /** returns the report model. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + } + + export interface DataSource { + + /** Gets or sets the name of the data source. + * @Default {empty} + */ + name?: string; + + /** Gets or sets the values of data source. + * @Default {[]} + */ + values?: any[]; + } - /** returns the report model. - */ - model?: any; + export interface ExportSettings { - /** returns the name of the event. - */ - type?: string; - } + /** Specifies the export formats. + * @Default {ej.ReportViewer.ExportOptions.All} + */ + exportOptions?: ej.ReportViewer.ExportOptions|string; - export interface ReportExportEventArgs { + /** Specifies the excel export format. + * @Default {ej.ReportViewer.ExcelFormats.Excel97to2003} + */ + excelFormat?: ej.ReportViewer.ExcelFormats|string; - /** true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Specifies the word export format. + * @Default {ej.ReportViewer.WordFormats.Doc} + */ + wordFormat?: ej.ReportViewer.WordFormats|string; + } - /** returns the report model. - */ - model?: any; + export interface PageSettings { - /** returns the name of the event. - */ - type?: string; - } + /** Specifies the print layout orientation. + * @Default {null} + */ + orientation?: ej.ReportViewer.Orientation|string; - export interface ReportLoadedEventArgs { + /** Specifies the paper size of print layout. + * @Default {null} + */ + paperSize?: ej.ReportViewer.PaperSize|string; + } - /** true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface Parameter { - /** returns the report model. - */ - model?: any; + /** Gets or sets the parameter labels. + * @Default {null} + */ + labels?: any[]; - /** returns the name of the event. - */ - type?: string; - } + /** Gets or sets the name of the parameter. + * @Default {empty} + */ + name?: string; - export interface ViewReportClickEventArgs { - - /** true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the parameter collection. - */ - parameters?: any; - - /** returns the report model. - */ - model?: any; - - /** returns the name of the event. - */ - type?: string; - } - - export interface DataSource { - - /** Gets or sets the name of the data source. - * @Default {empty} - */ - name?: string; - - /** Gets or sets the values of data source. - * @Default {[]} - */ - values?: any[]; - } + /** Gets or sets whether the parameter allows nullable value or not. + * @Default {false} + */ + nullable?: boolean; - export interface ExportSettings { + /** Gets or sets the prompt message associated with the specified parameter. + * @Default {empty} + */ + prompt?: string; - /** Specifies the export formats. - * @Default {ej.ReportViewer.ExportOptions.All} - */ - exportOptions?: ej.ReportViewer.ExportOptions | string; + /** Gets or sets the parameter values. + * @Default {[]} + */ + values?: any[]; + } - /** Specifies the excel export format. - * @Default {ej.ReportViewer.ExcelFormats.Excel97to2003} - */ - excelFormat?: ej.ReportViewer.ExcelFormats | string; + export interface ToolbarSettings { - /** Specifies the word export format. - * @Default {ej.ReportViewer.WordFormats.Doc} - */ - wordFormat?: ej.ReportViewer.WordFormats | string; - } + /** Fires when user click on toolbar item in the toolbar. + * @Default {empty} + */ + click?: string; - export interface PageSettings { + /** Specifies the toolbar items. + * @Default {ej.ReportViewer.ToolbarItems.All} + */ + items?: ej.ReportViewer.ToolbarItems|string; - /** Specifies the print layout orientation. - * @Default {null} - */ - orientation?: ej.ReportViewer.Orientation | string; + /** Shows or hides the toolbar. + * @Default {true} + */ + showToolbar?: boolean; - /** Specifies the paper size of print layout. - * @Default {null} - */ - paperSize?: ej.ReportViewer.PaperSize | string; - } + /** Shows or hides the tooltip of toolbar items. + * @Default {true} + */ + showTooltip?: boolean; - export interface Parameter { + /** Specifies the toolbar template ID. + * @Default {empty} + */ + templateId?: string; + } - /** Gets or sets the parameter labels. - * @Default {null} - */ - labels?: any[]; + enum ExportOptions { - /** Gets or sets the name of the parameter. - * @Default {empty} - */ - name?: string; + ///Specifies the All property in ExportOptions to get all available options. + All, - /** Gets or sets whether the parameter allows nullable value or not. - * @Default {false} - */ - nullable?: boolean; + ///Specifies the PDF property in ExportOptions to get PDF option. + PDF, - /** Gets or sets the prompt message associated with the specified parameter. - * @Default {empty} - */ - prompt?: string; + ///Specifies the Word property in ExportOptions to get Word option. + Word, - /** Gets or sets the parameter values. - * @Default {[]} - */ - values?: any[]; - } + ///Specifies the Excel property in ExportOptions to get Excel option. + Excel, - export interface ToolbarSettings { + ///Specifies the HTML property in ExportOptions to get HTML option. + HTML + } - /** Fires when user click on toolbar item in the toolbar. - * @Default {empty} - */ - click?: string; - /** Specifies the toolbar items. - * @Default {ej.ReportViewer.ToolbarItems.All} - */ - items?: ej.ReportViewer.ToolbarItems | string; + enum ExcelFormats { - /** Shows or hides the toolbar. - * @Default {true} - */ - showToolbar?: boolean; + ///Specifies the Excel97to2003 property in ExcelFormats to get specified version of exported format. + Excel97to2003, - /** Shows or hides the tooltip of toolbar items. - * @Default {true} - */ - showTooltip?: boolean; + ///Specifies the Excel2007 property in ExcelFormats to get specified version of exported format. + Excel2007, - /** Specifies the toolbar template ID. - * @Default {empty} - */ - templateId?: string; - } + ///Specifies the Excel2010 property in ExcelFormats to get specified version of exported format. + Excel2010, - enum ExportOptions { + ///Specifies the Excel2013 property in ExcelFormats to get specified version of exported format. + Excel2013 + } - ///Specifies the All property in ExportOptions to get all available options. - All, - ///Specifies the PDF property in ExportOptions to get PDF option. - PDF, + enum WordFormats { - ///Specifies the Word property in ExportOptions to get Word option. - Word, + ///Specifies the Doc property in WordFormats to get specified version of exported format. + Doc, - ///Specifies the Excel property in ExportOptions to get Excel option. - Excel, + ///Specifies the Dot property in WordFormats to get specified version of exported format. + Dot, - ///Specifies the HTML property in ExportOptions to get HTML option. - HTML - } + ///Specifies the DOCX property in WordFormats to get specified version of exported format. + DOCX, + ///Specifies the Word2007 property in WordFormats to get specified version of exported format. + Word2007, - enum ExcelFormats { + ///Specifies the Word2010 property in WordFormats to get specified version of exported format. + Word2010, - ///Specifies the Excel97to2003 property in ExcelFormats to get specified version of exported format. - Excel97to2003, + ///Specifies the Word2013 property in WordFormats to get specified version of exported format. + Word2013, - ///Specifies the Excel2007 property in ExcelFormats to get specified version of exported format. - Excel2007, + ///Specifies the Word2007Dotx property in WordFormats to get specified version of exported format. + Word2007Dotx, - ///Specifies the Excel2010 property in ExcelFormats to get specified version of exported format. - Excel2010, + ///Specifies the Word2010Dotx property in WordFormats to get specified version of exported format. + Word2010Dotx, - ///Specifies the Excel2013 property in ExcelFormats to get specified version of exported format. - Excel2013 - } + ///Specifies the Word2013Dotx property in WordFormats to get specified version of exported format. + Word2013Dotx, + ///Specifies the Word2007Docm property in WordFormats to get specified version of exported format. + Word2007Docm, - enum WordFormats { + ///Specifies the Word2010Docm property in WordFormats to get specified version of exported format. + Word2010Docm, - ///Specifies the Doc property in WordFormats to get specified version of exported format. - Doc, + ///Specifies the Word2013Docm property in WordFormats to get specified version of exported format. + Word2013Docm, - ///Specifies the Dot property in WordFormats to get specified version of exported format. - Dot, + ///Specifies the Word2007Dotm property in WordFormats to get specified version of exported format. + Word2007Dotm, - ///Specifies the DOCX property in WordFormats to get specified version of exported format. - DOCX, + ///Specifies the Word2010Dotm property in WordFormats to get specified version of exported format. + Word2010Dotm, - ///Specifies the Word2007 property in WordFormats to get specified version of exported format. - Word2007, + ///Specifies the Word2013Dotm property in WordFormats to get specified version of exported format. + Word2013Dotm, - ///Specifies the Word2010 property in WordFormats to get specified version of exported format. - Word2010, + ///Specifies the RTF property in WordFormats to get specified version of exported format. + RTF, - ///Specifies the Word2013 property in WordFormats to get specified version of exported format. - Word2013, + ///Specifies the Txt property in WordFormats to get specified version of exported format. + Txt, - ///Specifies the Word2007Dotx property in WordFormats to get specified version of exported format. - Word2007Dotx, + ///Specifies the EPUB property in WordFormats to get specified version of exported format. + EPUB, - ///Specifies the Word2010Dotx property in WordFormats to get specified version of exported format. - Word2010Dotx, + ///Specifies the HTML property in WordFormats to get specified version of exported format. + HTML, - ///Specifies the Word2013Dotx property in WordFormats to get specified version of exported format. - Word2013Dotx, + ///Specifies the XML property in WordFormats to get specified version of exported format. + XML, - ///Specifies the Word2007Docm property in WordFormats to get specified version of exported format. - Word2007Docm, + ///Specifies the Automatic property in WordFormats to get specified version of exported format. + Automatic + } - ///Specifies the Word2010Docm property in WordFormats to get specified version of exported format. - Word2010Docm, - ///Specifies the Word2013Docm property in WordFormats to get specified version of exported format. - Word2013Docm, + enum Orientation { - ///Specifies the Word2007Dotm property in WordFormats to get specified version of exported format. - Word2007Dotm, + ///Specifies the Landscape property in pageSettings.orientation to get specified layout. + Landscape, - ///Specifies the Word2010Dotm property in WordFormats to get specified version of exported format. - Word2010Dotm, + ///Specifies the portrait property in pageSettings.orientation to get specified layout. + Portrait + } - ///Specifies the Word2013Dotm property in WordFormats to get specified version of exported format. - Word2013Dotm, - ///Specifies the RTF property in WordFormats to get specified version of exported format. - RTF, + enum PaperSize { - ///Specifies the Txt property in WordFormats to get specified version of exported format. - Txt, + ///Specifies the A3 as value in pageSettings.paperSize to get specified size. + A3, - ///Specifies the EPUB property in WordFormats to get specified version of exported format. - EPUB, + ///Specifies the A4 as value in pageSettings.paperSize to get specified size. + Portrait, - ///Specifies the HTML property in WordFormats to get specified version of exported format. - HTML, + ///Specifies the B4(JIS) as value in pageSettings.paperSize to get specified size. + B4_JIS, - ///Specifies the XML property in WordFormats to get specified version of exported format. - XML, + ///Specifies the B5(JIS) as value in pageSettings.paperSize to get specified size. + B5_JIS, - ///Specifies the Automatic property in WordFormats to get specified version of exported format. - Automatic - } + ///Specifies the Envelope #10 as value in pageSettings.paperSize to get specified size. + Envelope_10, + ///Specifies the Envelope as value in pageSettings.paperSize to get specified size. + Envelope_Monarch, - enum Orientation { + ///Specifies the Executive as value in pageSettings.paperSize to get specified size. + Executive, - ///Specifies the Landscape property in pageSettings.orientation to get specified layout. - Landscape, + ///Specifies the Legal as value in pageSettings.paperSize to get specified size. + Legal, - ///Specifies the portrait property in pageSettings.orientation to get specified layout. - Portrait - } + ///Specifies the Letter as value in pageSettings.paperSize to get specified size. + Letter, + ///Specifies the Tabloid as value in pageSettings.paperSize to get specified size. + Tabloid, - enum PaperSize { + ///Specifies the Custom as value in pageSettings.paperSize to get specified size. + Custom + } - ///Specifies the A3 as value in pageSettings.paperSize to get specified size. - A3, - ///Specifies the A4 as value in pageSettings.paperSize to get specified size. - Portrait, + enum PrintOptions { - ///Specifies the B4(JIS) as value in pageSettings.paperSize to get specified size. - B4_JIS, + ///Specifies the Default property in printOptions. + Default, - ///Specifies the B5(JIS) as value in pageSettings.paperSize to get specified size. - B5_JIS, + ///Specifies the NewTab property in printOptions. + NewTab, - ///Specifies the Envelope #10 as value in pageSettings.paperSize to get specified size. - Envelope_10, + ///Specifies the None property in printOptions. + None + } - ///Specifies the Envelope as value in pageSettings.paperSize to get specified size. - Envelope_Monarch, - ///Specifies the Executive as value in pageSettings.paperSize to get specified size. - Executive, + enum ProcessingMode { - ///Specifies the Legal as value in pageSettings.paperSize to get specified size. - Legal, + ///Specifies the Remote property in processingMode. + Remote, - ///Specifies the Letter as value in pageSettings.paperSize to get specified size. - Letter, + ///Specifies the Local property in processingMode. + Local + } - ///Specifies the Tabloid as value in pageSettings.paperSize to get specified size. - Tabloid, - ///Specifies the Custom as value in pageSettings.paperSize to get specified size. - Custom - } + enum RenderMode { + ///Specifies the Default property in RenderMode to get default output. + Default, - enum PrintOptions { + ///Specifies the Mobile property in RenderMode to get specified output. + Mobile, - ///Specifies the Default property in printOptions. - Default, + ///Specifies the Desktop property in RenderMode to get specified output. + Desktop + } - ///Specifies the NewTab property in printOptions. - NewTab, - ///Specifies the None property in printOptions. - None - } + enum ToolbarItems { + ///Specifies the Print as value in ToolbarItems to get specified item. + Print, - enum ProcessingMode { + ///Specifies the Refresh as value in ToolbarItems to get specified item. + Refresh, - ///Specifies the Remote property in processingMode. - Remote, + ///Specifies the Zoom as value in ToolbarItems to get specified item. + Zoom, - ///Specifies the Local property in processingMode. - Local - } + ///Specifies the FittoPage as value in ToolbarItems to get specified item. + FittoPage, + ///Specifies the Export as value in ToolbarItems to get specified item. + Export, - enum RenderMode { + ///Specifies the PageNavigation as value in ToolbarItems to get specified item. + PageNavigation, - ///Specifies the Default property in RenderMode to get default output. - Default, + ///Specifies the Parameters as value in ToolbarItems to get specified item. + Parameters, - ///Specifies the Mobile property in RenderMode to get specified output. - Mobile, + ///Specifies the PrintLayout as value in ToolbarItems to get specified item. + PrintLayout, - ///Specifies the Desktop property in RenderMode to get specified output. - Desktop - } + ///Specifies the PageSetup as value in ToolbarItems to get specified item. + PageSetup + } + } - enum ToolbarItems { + class TreeGrid extends ej.Widget { + static fn: TreeGrid; + constructor(element: JQuery | Element, options?: TreeGrid.Model); + static Locale: any; + model: TreeGrid.Model; + defaults: TreeGrid.Model; - ///Specifies the Print as value in ToolbarItems to get specified item. - Print, + /** Add a new row in TreeGrid, while allowAdding is set to true + * @param {any} Item to add in TreeGrid row. + * @param {string} Defines in which position the row wants to be added + * @returns {void} + */ + addRow(data: any, rowPosition: string): void; - ///Specifies the Refresh as value in ToolbarItems to get specified item. - Refresh, + /** To clear all the selection in TreeGrid + * @param {number} you can pass a row index to clear the row selection. + * @returns {void} + */ + clearSelection(index: number): void; + + /** To select cell based on the cell and row index dynamically. + * @param {any[]} array of cell indexes to be select + * @param {boolean} Defines that we need to preserve the previously selected cells or not + * @returns {void} + */ + selectCells(Indexes: any[], preservePreviousSelectedCell: boolean): void; + + /** To rename a column with the specified name + * @param {number} Index of the column to be renamed + * @param {string} Header text of the column + * @returns {void} + */ + renameColumn(columnIndex: number, name: string): void; + + /** To delete the specified column + * @param {number} Index of the column to be deleted + * @returns {void} + */ + deleteColumn(columnIndex: number): void; + + /** To collapse all the parent items in tree grid + * @returns {void} + */ + collapseAll(): void; + + /** To hide the column by using header text + * @param {string} you can pass a header text of a column to hide. + * @returns {void} + */ + hideColumn(headerText: string): void; + + /** Expands the records at specific hierarchical level + * @param {number} you can pass the level as index number to expand + * @returns {void} + */ + expandAtLevel(index: number): void; + + /** Collapses the records at specific hierarchical level + * @param {number} you can pass the particular level as index. + * @returns {void} + */ + collapseAtLevel(index: number): void; + + /** To refresh the changes in tree grid + * @param {any[]} Pass which data source you want to show in tree grid + * @param {any} Pass which data you want to show in tree grid + * @returns {void} + */ + refresh(dataSource: any[], query: any): void; + + /** Freeze all the columns preceding to the column specified by the field name. + * @param {string} Freeze all Columns before this field column. + * @returns {void} + */ + freezePrecedingColumns(field: string): void; + + /** Freeze/unfreeze the specified column. + * @param {string} Freeze/Unfreeze this field column. + * @param {boolean} Decides to Freeze/Unfreeze this field column. + * @returns {void} + */ + freezeColumn(field: string, isFrozen: boolean): void; + + /** To save the edited cell in TreeGrid + * @returns {void} + */ + saveCell(): void; + + /** To show the column by using header text + * @param {string} you can pass a header text of a column to show. + * @returns {void} + */ + showColumn(headerText: string): void; + + /** To sorting the data based on the particular fields + * @param {string} you can pass a name of column to sort. + * @param {string} you can pass a sort direction to sort the column. + * @returns {void} + */ + sortColumn(fieldName: string, columnSortDirection: string): void; + + /** To reorder the column with field name and target index values + * @param {string} you can pass a name of column to reorder. + * @param {string} you can pass a target column index to be inserted. + * @returns {void} + */ + reorderColumn(fieldName: string, targetIndex: string): void; + } + export namespace TreeGrid { + + export interface Model { + + /** Enables or disables the ability to resize the column width interactively. + * @Default {false} + */ + allowColumnResize?: boolean; + + /** Enables or disables the option for column reordering + * @Default {false} + */ + allowColumnReordering?: boolean; + + /** Enables or disables the ability to drag and drop the row interactively to reorder the rows. + * @Default {false} + */ + allowDragAndDrop?: boolean; + + /** Enables or disables the ability to filter the data on all the columns. Enabling this property will display a row with editor controls corresponding to each column. You can + * restrict filtering on particular column by disabling this property directly on that column instance itself. + * @Default {false} + */ + allowFiltering?: boolean; + + /** Enables or disables keyboard navigation. + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** Enables or disables the ability to sort the rows based on multiple columns/fields by clicking on each column header. Rows will be sorted recursively on clicking the column headers. + * @Default {false} + */ + allowMultiSorting?: boolean; + + /** Enables or disables the ability to select a row interactively. + * @Default {true} + */ + allowSelection?: boolean; + + /** Enables or disables the ability to sort the rows based on a single field/column by clicking on that column header. When enabled, rows can be sorted only by single field/column. + * @Default {false} + */ + allowSorting?: boolean; + + /** Enables/disables pagination of rows in TreeGrid + * @Default {false} + */ + allowPaging?: boolean; + + /** Specifies the id of the template that has to be applied for alternate rows. + */ + altRowTemplateID?: string; + + /** Specifies the mapping property path for the expand status of a record in data source. + */ + expandStateMapping?: string; + + /** Specifies the mapping property path for sub tasks in datasource + */ + childMapping?: string; + + /** Option for adding columns; each column has the option to bind to a field in the dataSource. + */ + columns?: Column[]; + + /** To Specify the column fields to be displayed in the dialog while inserting a column using column menu. + * @Default {[]} + */ + columnDialogFields?: any[]; + + /** Options for displaying and customizing context menu items. + */ + contextMenuSettings?: ContextMenuSettings; + + /** Specify the CSS class for TreeGrid to achieve custom theme. + */ + cssClass?: string; + + /** Specifies hierarchical or self-referential data to populate the TreeGrid. + * @Default {null} + */ + dataSource?: any[]; + + /** Specifies whether to wrap the header text when it is overflown i.e., when it exceeds the header width. + * @Default {ej.TreeGrid.HeaderTextOverflow.None} + */ + headerTextOverflow?: ej.TreeGrid.HeaderTextOverflow|string; + + /** Options for displaying and customizing the tooltip. This tooltip will show the preview of the row that is being dragged. + */ + dragTooltip?: DragTooltip; + + /** Options for enabling and configuring the editing related operations. + */ + editSettings?: EditSettings; + + /** Specifies whether to render alternate rows in different background colors. + * @Default {true} + */ + enableAltRow?: boolean; + + /** Specifies whether to load all the rows in collapsed state when the TreeGrid is rendered for the first time. + * @Default {false} + */ + enableCollapseAll?: boolean; + + /** Specifies whether to resize TreeGrid whenever window size changes. + * @Default {false} + */ + enableResize?: boolean; + + /** Specifies whether to render only the visual elements that are visible in the UI. When you enable this property, it will reduce the loading time for loading large number of records. + * @Default {false} + */ + enableVirtualization?: boolean; + + /** Specifies the settings for column resize + */ + columnResizeSettings?: ColumnResizeSettings; + + /** Defines the common width for all the columns in TreeGrid + * @Default {150} + */ + commonWidth?: number; + + /** Options for filtering and customizing filter actions. + */ + filterSettings?: FilterSettings; + + /** Specifies the localization information to customize the User Interface (UI) to support regional language and culture + * @Default {en-US} + */ + locale?: string; + + /** Enables or disables internal parsing of a row. When disabled this property, row will be displayed using the defined template without any internal event bindings. + * @Default {true} + */ + parseRowTemplate?: boolean; + + /** Specifies the name of the field in the dataSource, which contains the id of that row. + */ + idMapping?: string; + + /** Enables or disables the responsiveness of TreeGrid + * @Default {false} + */ + isResponsive?: boolean; + + /** Specifies the name of the field in the dataSource, which contains the parent's id. This is necessary to form a parent-child hierarchy, if the dataSource contains self-referential + * data. + */ + parentIdMapping?: string; + + /** Specifies the options for customizing the pager. + */ + pageSettings?: PageSettings; + + /** Specifies the template for cell tooltip + * @Default {null} + */ + cellTooltipTemplate?: string; + + /** Specifies ej.Query to select data from the dataSource. This property is applicable only when the dataSource is ej.DataManager. + * @Default {null} + */ + query?: any; + + /** Specifies the height of a single row in tree grid. Also, we need to set same height in the CSS style with class name e-rowcell. + * @Default {30} + */ + rowHeight?: number; + + /** Specifies the id of the template to be applied for all the rows. + */ + rowTemplateID?: string; + + /** Specifies the index of the selected row. + * @Default {-1} + */ + selectedRowIndex?: number; + + /** Specifies the selected cell information on rendering TreeGrid. + */ + selectedCellIndexes?: SelectedCellIndex[]; + + /** Specifies the settings for row and cell selection. + */ + selectionSettings?: SelectionSettings; + + /** Enables/disables the options for inserting , deleting and renaming columns. + * @Default {false} + */ + showColumnOptions?: boolean; + + /** Controls the visibility of the menu button, which is displayed on the column header. Clicking on this button will show a popup menu. When you choose Columns item from this popup, + * a list box with column names will be shown, from which you can select/deselect a column name to control the visibility of the respective columns. + * @Default {false} + */ + showColumnChooser?: boolean; + + /** Specifies the visibility of details view + * @Default {false} + */ + showDetailsRow?: boolean; + + /** Specifies the visibility of the expander column which is used to expand or collapse the details view + * @Default {false} + */ + showDetailsRowInfoColumn?: boolean; + + /** Specifies the template for details view + */ + detailsTemplate?: string; + + /** Specifies the row height of the details view + * @Default {100} + */ + detailsRowHeight?: number; + + /** Specifies the visibility of summary row + * @Default {false} + */ + showSummaryRow?: boolean; + + /** Specifies the visibility of total summary row for the corresponding summary column + * @Default {false} + */ + showTotalSummary?: boolean; + + /** Specifies the summary row collection object to be displayed + * @Default {[]} + */ + summaryRows?: SummaryRow[]; + + /** Specifies whether to show tooltip when mouse is hovered on the cell. + * @Default {true} + */ + showGridCellTooltip?: boolean; + + /** Specifies whether to show tooltip for the cells, which has expander button. + * @Default {true} + */ + showGridExpandCellTooltip?: boolean; + + /** Options for setting width and height for TreeGrid. + */ + sizeSettings?: SizeSettings; + + /** Options for sorting the rows. + */ + sortSettings?: SortSettings; + + /** Options for displaying and customizing the toolbar items. + */ + toolbarSettings?: ToolbarSettings; + + /** Specifies the index of the column that needs to have the expander button. By default, cells in the first column contain the expander button. + * @Default {0} + */ + treeColumnIndex?: number; + + /** Triggered before every success event of TreeGrid action. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Triggered for every TreeGrid action success event. + */ + actionComplete?(e: ActionCompleteEventArgs): void; + + /** Triggered before the printing initiated in TreeGrid. + */ + beforePrint?(e: BeforePrintEventArgs): void; + + /** Triggered while enter the edit mode in the TreeGrid cell + */ + beginEdit?(e: BeginEditEventArgs): void; + + /** Triggered after collapsed the TreeGrid record + */ + collapsed?(e: CollapsedEventArgs): void; + + /** Triggered while collapsing the TreeGrid record + */ + collapsing?(e: CollapsingEventArgs): void; + + /** Triggered while clicking a row, even when allowSelection property is disabled. + */ + recordClick?(e: RecordClickEventArgs): void; + + /** Triggered when you start to drag a column + */ + columnDragStart?(e: ColumnDragStartEventArgs): void; + + /** Triggered while dragging a column + */ + columnDrag?(e: ColumnDragEventArgs): void; + + /** Triggered when a column is dropped + */ + columnDrop?(e: ColumnDropEventArgs): void; + + /** Triggered after a column resized + */ + columnResized?(e: ColumnResizedEventArgs): void; + + /** Triggered while start to resize a column + */ + columnResizeStart?(e: ColumnResizeStartEventArgs): void; + + /** Triggered when a column has been resized + */ + columnResizeEnd?(e: ColumnResizeEndEventArgs): void; + + /** Triggered while Context Menu is rendered in TreeGrid control + */ + contextMenuOpen?(e: ContextMenuOpenEventArgs): void; + + /** Triggered when TreeGrid is rendered completely + */ + create?(e: CreateEventArgs): void; + + /** Triggered while rendering details template in TreeGrid + */ + detailsDataBound?(e: DetailsDataBoundEventArgs): void; + + /** Triggered when details template pop-up is shown. + */ + detailsShown?(e: DetailsShownEventArgs): void; - ///Specifies the Zoom as value in ToolbarItems to get specified item. - Zoom, + /** Triggered when details template pop-up is hidden. + */ + detailsHidden?(e: DetailsHiddenEventArgs): void; - ///Specifies the FittoPage as value in ToolbarItems to get specified item. - FittoPage, + /** Triggered after saved the modified cellValue in TreeGrid + */ + endEdit?(e: EndEditEventArgs): void; - ///Specifies the Export as value in ToolbarItems to get specified item. - Export, + /** Triggered after expand the record + */ + expanded?(e: ExpandedEventArgs): void; - ///Specifies the PageNavigation as value in ToolbarItems to get specified item. - PageNavigation, + /** Triggered while expanding the TreeGrid record + */ + expanding?(e: ExpandingEventArgs): void; - ///Specifies the Parameters as value in ToolbarItems to get specified item. - Parameters, + /** Triggered while Treegrid is loaded + */ + load?(e: LoadEventArgs): void; - ///Specifies the PrintLayout as value in ToolbarItems to get specified item. - PrintLayout, + /** Triggered while rendering each cell in the TreeGrid + */ + queryCellInfo?(e: QueryCellInfoEventArgs): void; - ///Specifies the PageSetup as value in ToolbarItems to get specified item. - PageSetup - } + /** Triggered while rendering each row + */ + rowDataBound?(e: RowDataBoundEventArgs): void; - } + /** Triggered while dragging a row in TreeGrid control + */ + rowDrag?(e: RowDragEventArgs): void; - class TreeGrid extends ej.Widget { - static fn: TreeGrid; - constructor(element: JQuery | Element, options?: TreeGrid.Model); - static Locale: any; - model: TreeGrid.Model; - defaults: TreeGrid.Model; + /** Triggered while start to drag row in TreeGrid control + */ + rowDragStart?(e: RowDragStartEventArgs): void; - /** Add a new row in TreeGrid, while allowAdding is set to true - * @param {any} Item to add in TreeGrid row. - * @param {string} Defines in which position the row wants to be added - * @returns {void} - */ - addRow(data: any, rowPosition: string): void; + /** Triggered while drop a row in TreeGrid control + */ + rowDragStop?(e: RowDragStopEventArgs): void; - /** To clear all the selection in TreeGrid - * @param {number} you can pass a row index to clear the row selection. - * @returns {void} - */ - clearSelection(index: number): void; - - /** To select cell based on the cell and row index dynamically. - * @param {Array} array of cell indexes to be select - * @param {boolean} Defines that we need to preserve the previously selected cells or not - * @returns {void} - */ - selectCells(Indexes: any[], preservePreviousSelectedCell: boolean): void; - - /** To rename a column with the specified name - * @param {number} Index of the column to be renamed - * @param {string} Header text of the column - * @returns {void} - */ - renameColumn(columnIndex: number, name: string): void; - - /** To delete the specified column - * @param {number} Index of the column to be deleted - * @returns {void} - */ - deleteColumn(columnIndex: number): void; - - /** To collapse all the parent items in tree grid - * @returns {void} - */ - collapseAll(): void; - - /** To hide the column by using header text - * @param {string} you can pass a header text of a column to hide. - * @returns {void} - */ - hideColumn(headerText: string): void; - - /** Expands the records at specific hierarchical level - * @param {number} you can pass the level as index number to expand - * @returns {void} - */ - expandAtLevel(index: number): void; - - /** Collapses the records at specific hierarchical level - * @param {number} you can pass the particular level as index. - * @returns {void} - */ - collapseAtLevel(index: number): void; - - /** To refresh the changes in tree grid - * @param {Array} Pass which data source you want to show in tree grid - * @param {any} Pass which data you want to show in tree grid - * @returns {void} - */ - refresh(dataSource: any[], query: any): void; - - /** Freeze all the columns preceding to the column specified by the field name. - * @param {string} Freeze all Columns before this field column. - * @returns {void} - */ - freezePrecedingColumns(field: string): void; - - /** Freeze/unfreeze the specified column. - * @param {string} Freeze/Unfreeze this field column. - * @param {boolean} Decides to Freeze/Unfreeze this field column. - * @returns {void} - */ - freezeColumn(field: string, isFrozen: boolean): void; - - /** To save the edited cell in TreeGrid - * @returns {void} - */ - saveCell(): void; - - /** To show the column by using header text - * @param {string} you can pass a header text of a column to show. - * @returns {void} - */ - showColumn(headerText: string): void; - - /** To sorting the data based on the particular fields - * @param {string} you can pass a name of column to sort. - * @param {string} you can pass a sort direction to sort the column. - * @returns {void} - */ - sortColumn(fieldName: string, columnSortDirection: string): void; - - /** To reorder the column with field name and target index values - * @param {string} you can pass a name of column to reorder. - * @param {string} you can pass a target column index to be inserted. - * @returns {void} - */ - reorderColumn(fieldName: string, targetIndex: string): void; - } - export namespace TreeGrid { - - export interface Model { - - /** Enables or disables the ability to resize the column width interactively. - * @Default {false} - */ - allowColumnResize?: boolean; - - /** Enables or disables the option for column reordering - * @Default {false} - */ - allowColumnReordering?: boolean; - - /** Enables or disables the ability to drag and drop the row interactively to reorder the rows. - * @Default {false} - */ - allowDragAndDrop?: boolean; - - /** Enables or disables the ability to filter the data on all the columns. Enabling this property will display a row with editor controls corresponding to each column. - * You can restrict filtering on particular column by disabling this property directly on that column instance itself. - * @Default {false} - */ - allowFiltering?: boolean; - - /** Enables or disables keyboard navigation. - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** Enables or disables the ability to sort the rows based on multiple columns/fields by clicking on each column header. Rows will be sorted recursively on clicking the column headers. - * @Default {false} - */ - allowMultiSorting?: boolean; - - /** Enables or disables the ability to select a row interactively. - * @Default {true} - */ - allowSelection?: boolean; - - /** Enables or disables the ability to sort the rows based on a single field/column by clicking on that column header. When enabled, rows can be sorted only by single field/column. - * @Default {false} - */ - allowSorting?: boolean; - - /** Enables/disables pagination of rows in TreeGrid - * @Default {false} - */ - allowPaging?: boolean; - - /** Specifies the id of the template that has to be applied for alternate rows. - */ - altRowTemplateID?: string; - - /** Specifies the mapping property path for the expand status of a record in data source. - */ - expandStateMapping?: string; - - /** Specifies the mapping property path for sub tasks in datasource - */ - childMapping?: string; - - /** Option for adding columns; each column has the option to bind to a field in the dataSource. - */ - columns?: Column[]; - - /** To Specify the column fields to be displayed in the dialog while inserting a column using column menu. - * @Default {[]} - */ - columnDialogFields?: any[]; - - /** Options for displaying and customizing context menu items. - */ - contextMenuSettings?: ContextMenuSettings; - - /** Specify the CSS class for TreeGrid to achieve custom theme. - */ - cssClass?: string; - - /** Specifies hierarchical or self-referential data to populate the TreeGrid. - * @Default {null} - */ - dataSource?: any[]; - - /** Specifies whether to wrap the header text when it is overflown i.e., when it exceeds the header width. - * @Default {ej.TreeGrid.HeaderTextOverflow.None} - */ - headerTextOverflow?: ej.TreeGrid.HeaderTextOverflow | string; - - /** Options for displaying and customizing the tooltip. This tooltip will show the preview of the row that is being dragged. - */ - dragTooltip?: DragTooltip; - - /** Options for enabling and configuring the editing related operations. - */ - editSettings?: EditSettings; - - /** Specifies whether to render alternate rows in different background colors. - * @Default {true} - */ - enableAltRow?: boolean; - - /** Specifies whether to load all the rows in collapsed state when the TreeGrid is rendered for the first time. - * @Default {false} - */ - enableCollapseAll?: boolean; - - /** Specifies whether to resize TreeGrid whenever window size changes. - * @Default {false} - */ - enableResize?: boolean; - - /** Specifies whether to render only the visual elements that are visible in the UI. When you enable this property, it will reduce the loading time for loading large number of records. - * @Default {false} - */ - enableVirtualization?: boolean; - - /** Specifies the settings for column resize - */ - columnResizeSettings?: ColumnResizeSettings; - - /** Defines the common width for all the columns in TreeGrid - * @Default {150} - */ - commonWidth?: number; - - /** Options for filtering and customizing filter actions. - */ - filterSettings?: FilterSettings; - - /** Specifies the localization information to customize the User Interface (UI) to support regional language and culture - * @Default {en-US} - */ - locale?: string; - - /** Enables or disables internal parsing of a row. When disabled this property, row will be displayed using the defined template without any internal event bindings. - * @Default {true} - */ - parseRowTemplate?: boolean; - - /** Specifies the name of the field in the dataSource, which contains the id of that row. - */ - idMapping?: string; - - /** Enables or disables the responsiveness of TreeGrid - * @Default {false} - */ - isResponsive?: boolean; - - /** Specifies the name of the field in the dataSource, which contains the parent's id. This is necessary to form a parent-child hierarchy, if the dataSource contains self-referential data. - */ - parentIdMapping?: string; - - /** Specifies the options for customizing the pager. - */ - pageSettings?: PageSettings; - - /** Specifies the template for cell tooltip - * @Default {null} - */ - cellTooltipTemplate?: string; - - /** Specifies ej.Query to select data from the dataSource. This property is applicable only when the dataSource is ej.DataManager. - * @Default {null} - */ - query?: any; - - /** Specifies the height of a single row in tree grid. Also, we need to set same height in the CSS style with class name e-rowcell. - * @Default {30} - */ - rowHeight?: number; - - /** Specifies the id of the template to be applied for all the rows. - */ - rowTemplateID?: string; - - /** Specifies the index of the selected row. - * @Default {-1} - */ - selectedRowIndex?: number; - - /** Specifies the selected cell information on rendering TreeGrid. - */ - selectedCellIndexes?: SelectedCellIndex[]; - - /** Specifies the settings for row and cell selection. - */ - selectionSettings?: SelectionSettings; - - /** Enables/disables the options for inserting , deleting and renaming columns. - * @Default {false} - */ - showColumnOptions?: boolean; - - /** Controls the visibility of the menu button, which is displayed on the column header. Clicking on this button will show a popup menu. When you choose Columns item from this popup, - * a list box with column names will be shown, from which you can select/deselect a column name to control the visibility of the respective columns. - * @Default {false} - */ - showColumnChooser?: boolean; - - /** Specifies the visibility of details view - * @Default {false} - */ - showDetailsRow?: boolean; - - /** Specifies the visibility of the expander column which is used to expand or collapse the details view - * @Default {false} - */ - showDetailsRowInfoColumn?: boolean; - - /** Specifies the template for details view - */ - detailsTemplate?: string; - - /** Specifies the row height of the details view - * @Default {100} - */ - detailsRowHeight?: number; + /** Triggered before selecting a cell + */ + cellSelecting?(e: CellSelectingEventArgs): void; - /** Specifies the visibility of summary row - * @Default {false} - */ - showSummaryRow?: boolean; + /** Triggered after selected a cell + */ + cellSelected?(e: CellSelectedEventArgs): void; - /** Specifies the visibility of total summary row for the corresponding summary column - * @Default {false} - */ - showTotalSummary?: boolean; + /** Triggered after the row is selected. + */ + rowSelected?(e: RowSelectedEventArgs): void; - /** Specifies the summary row collection object to be displayed - * @Default {[]} - */ - summaryRows?: any[]; + /** Triggered before the row is going to be selected. + */ + rowSelecting?(e: RowSelectingEventArgs): void; - /** Specifies whether to show tooltip when mouse is hovered on the cell. - * @Default {true} - */ - showGridCellTooltip?: boolean; + /** Triggered when toolbar item is clicked in TreeGrid. + */ + toolbarClick?(e: ToolbarClickEventArgs): void; + } - /** Specifies whether to show tooltip for the cells, which has expander button. - * @Default {true} - */ - showGridExpandCellTooltip?: boolean; + export interface ActionBeginEventArgs { - /** Options for setting width and height for TreeGrid. - */ - sizeSettings?: SizeSettings; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Options for sorting the rows. - */ - sortSettings?: SortSettings; + /** Returns the current grouped column field name. + */ + columnName?: string; - /** Options for displaying and customizing the toolbar items. - */ - toolbarSettings?: ToolbarSettings; + /** Returns the TreeGrid model. + */ + model?: any; - /** Specifies the index of the column that needs to have the expander button. By default, cells in the first column contain the expander button. - * @Default {0} - */ - treeColumnIndex?: number; + /** Returns request type. + */ + requestType?: string; - /** Triggered before every success event of TreeGrid action. */ - actionBegin?(e: ActionBeginEventArgs): void; + /** Returns the name of the event. + */ + type?: string; - /** Triggered for every TreeGrid action success event. */ - actionComplete?(e: ActionCompleteEventArgs): void; + /** Returns the direction of sorting ascending or descending. + */ + columnSortDirection?: string; - /** Triggered while enter the edit mode in the TreeGrid cell */ - beginEdit?(e: BeginEditEventArgs): void; + /** Returns the value of expanding parent element. + */ + keyValue?: string; - /** Triggered after collapsed the TreeGrid record */ - collapsed?(e: CollapsedEventArgs): void; + /** Returns the data or deleting element. + */ + data?: string; + } - /** Triggered while collapsing the TreeGrid record */ - collapsing?(e: CollapsingEventArgs): void; + export interface ActionCompleteEventArgs { - /** Triggered while clicking a row, even when allowSelection property is disabled. */ - recordClick?(e: RecordClickEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered when you start to drag a column */ - columnDragStart?(e: ColumnDragStartEventArgs): void; + /** Returns the grid model. + */ + model?: any; - /** Triggered while dragging a column */ - columnDrag?(e: ColumnDragEventArgs): void; + /** Returns the name of the event. + */ + type?: string; - /** Triggered when a column is dropped */ - columnDrop?(e: ColumnDropEventArgs): void; + /** Returns the current grouped column field name. + */ + columnName?: string; - /** Triggered after a column resized */ - columnResized?(e: ColumnResizedEventArgs): void; + /** Returns request type. + */ + requestType?: string; - /** Triggered while start to resize a column */ - columnResizeStart?(e: ColumnResizeStartEventArgs): void; + /** Returns the direction of sorting ascending or descending + */ + columnSortDirection?: string; - /** Triggered when a column has been resized */ - columnResizeEnd?(e: ColumnResizeEndEventArgs): void; + /** Returns the value of searched element. + */ + keyValue?: string; - /** Triggered while Context Menu is rendered in TreeGrid control */ - contextMenuOpen?(e: ContextMenuOpenEventArgs): void; + /** Returns the data of deleted element. + */ + data?: string; - /** Triggered when TreeGrid is rendered completely */ - create?(e: CreateEventArgs): void; + /** Returns selected record index + */ + recordIndex?: number; + } - /** Triggered while rendering details template in TreeGrid */ - detailsDataBound?(e: DetailsDataBoundEventArgs): void; + export interface BeforePrintEventArgs { - /** Triggered when details template pop-up is shown. */ - detailsShown?(e: DetailsShownEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered when details template pop-up is hidden. */ - detailsHidden?(e: DetailsHiddenEventArgs): void; + /** Returns the treegrid element which is going to be print + */ + element?: any; - /** Triggered after saved the modified cellValue in TreeGrid */ - endEdit?(e: EndEditEventArgs): void; + /** Returns request type. + */ + requestType?: string; + } - /** Triggered after expand the record */ - expanded?(e: ExpandedEventArgs): void; + export interface BeginEditEventArgs { - /** Triggered while expanding the TreeGrid record */ - expanding?(e: ExpandingEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered while Treegrid is loaded */ - load?(e: LoadEventArgs): void; + /** Returns the row element of editing cell. + */ + rowElement?: any; - /** Triggered while rendering each cell in the TreeGrid */ - queryCellInfo?(e: QueryCellInfoEventArgs): void; + /** Returns the Element of editing cell. + */ + cellElement?: any; - /** Triggered while rendering each row */ - rowDataBound?(e: RowDataBoundEventArgs): void; + /** Returns the data of current cell record. + */ + data?: any; - /** Triggered while dragging a row in TreeGrid control */ - rowDrag?(e: RowDragEventArgs): void; + /** Returns the column Index of cell belongs. + */ + columnIndex?: number; + } - /** Triggered while start to drag row in TreeGrid control */ - rowDragStart?(e: RowDragStartEventArgs): void; + export interface CollapsedEventArgs { - /** Triggered while drop a row in TreeGrid control */ - rowDragStop?(e: RowDragStopEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Triggered before selecting a cell */ - cellSelecting?(e: CellSelectingEventArgs): void; + /** Returns the row index of collapsed record. + */ + recordIndex?: number; - /** Triggered after selected a cell */ - cellSelected?(e: CellSelectedEventArgs): void; + /** Returns the data of collapsed record.. + */ + data?: any; - /** Triggered after the row is selected. */ - rowSelected?(e: RowSelectedEventArgs): void; + /** Returns Request Type. + */ + requestType?: string; - /** Triggered before the row is going to be selected. */ - rowSelecting?(e: RowSelectingEventArgs): void; + /** Returns state of a record whether it is in expanded or collapsed state. + */ + expanded?: boolean; - /** Triggered when toolbar item is clicked in TreeGrid. */ - toolbarClick?(e: ToolbarClickEventArgs): void; - } + /** Returns the event type. + */ + type?: string; + } - export interface ActionBeginEventArgs { + export interface CollapsingEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the current grouped column field name. - */ - columnName?: string; + /** Returns the row index of collapsing record. + */ + recordIndex?: number; - /** Returns the TreeGrid model. - */ - model?: any; + /** Returns the data of collapsing record.. + */ + data?: any; - /** Returns request type. - */ - requestType?: string; + /** Returns the event Type. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns state of a record whether it is in expanded or collapsing state. + */ + expanded?: boolean; + } - /** Returns the direction of sorting ascending or descending. - */ - columnSortDirection?: string; + export interface RecordClickEventArgs { - /** Returns the value of expanding parent element. - */ - keyValue?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the data or deleting element. - */ - data?: string; - } + /** Returns the element of clicked cell. + */ + cell?: any; - export interface ActionCompleteEventArgs { + /** Returns the index of the clicked cell. + */ + cellIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the data of clicked cell. + */ + cellValue?: any; - /** Returns the grid model. - */ - model?: any; + /** Returns the element of the clicked row. + */ + row?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns the index of the clicked row. + */ + rowIndex?: number; - /** Returns the current grouped column field name. - */ - columnName?: string; + /** Returns the column name of the clicked cell. + */ + columnName?: string; + } - /** Returns request type. - */ - requestType?: string; + export interface ColumnDragStartEventArgs { - /** Returns the direction of sorting ascending or descending - */ - columnSortDirection?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the value of searched element. - */ - keyValue?: string; + /** Returns the control model values. + */ + model?: any; - /** Returns the data of deleted element. - */ - data?: string; + /** Returns the event Type. + */ + type?: string; - /** Returns selected record index - */ - recordIndex?: number; - } + /** Returns the column data which is dragged + */ + draggedColumn?: any; - export interface BeginEditEventArgs { + /** Returns the index of the column being dragged + */ + draggedColumnIndex?: number; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface ColumnDragEventArgs { - /** Returns the row element of editing cell. - */ - rowElement?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the Element of editing cell. - */ - cellElement?: any; + /** Returns the control model values. + */ + model?: any; - /** Returns the data of current cell record. - */ - data?: any; + /** Returns the event Type. + */ + type?: string; - /** Returns the column Index of cell belongs. - */ - columnIndex?: number; - } + /** Returns the column data which is dragged + */ + draggedColumn?: any; - export interface CollapsedEventArgs { + /** Returns the index of the column being dragged + */ + draggedColumnIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the target column data + */ + targetColumn?: any; - /** Returns the row index of collapsed record. - */ - recordIndex?: number; + /** Returns the index of the target column + */ + targetColumnIndex?: number; - /** Returns the data of collapsed record.. - */ - data?: any; + /** Returns that we can drop over the column or not. + */ + canDrop?: boolean; + } - /** Returns Request Type. - */ - requestType?: string; + export interface ColumnDropEventArgs { - /** Returns state of a record whether it is in expanded or collapsed state. - */ - expanded?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the event type. - */ - type?: string; - } + /** Returns the control model values. + */ + model?: any; - export interface CollapsingEventArgs { + /** Returns the event Type. + */ + type?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the column data which is dragged + */ + draggedColumn?: any; - /** Returns the row index of collapsing record. - */ - recordIndex?: number; + /** Returns the index of the column being dragged + */ + draggedColumnIndex?: number; - /** Returns the data of collapsing record.. - */ - data?: any; + /** Returns the target column data + */ + targetColumn?: any; - /** Returns the event Type. - */ - type?: string; + /** Returns the index of the target column + */ + targetColumnIndex?: number; + } - /** Returns state of a record whether it is in expanded or collapsing state. - */ - expanded?: boolean; - } + export interface ColumnResizedEventArgs { - export interface RecordClickEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the control model values. + */ + model?: any; - /** Returns the element of clicked cell. - */ - cell?: any; + /** Returns the event Type. + */ + type?: string; - /** Returns the index of the clicked cell. - */ - cellIndex?: number; + /** Returns the column data which is resized + */ + column?: any; - /** Returns the data of clicked cell. - */ - cellValue?: any; + /** Returns the index of the column being resized. + */ + columnIndex?: number; - /** Returns the element of the clicked row. - */ - row?: any; + /** Returns resized column width after resized. + */ + newWidth?: number; - /** Returns the index of the clicked row. - */ - rowIndex?: number; + /** Returns resized column width before resizing + */ + oldWidth?: number; + } - /** Returns the column name of the clicked cell. - */ - columnName?: string; - } + export interface ColumnResizeStartEventArgs { - export interface ColumnDragStartEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the control model values. + */ + model?: any; - /** Returns the control model values. - */ - model?: any; + /** Returns the event Type. + */ + type?: string; - /** Returns the event Type. - */ - type?: string; + /** Returns the column data in which the resizing started + */ + column?: any; - /** Returns the column data which is dragged - */ - draggedColumn?: any; + /** Returns the column index in which the resizing started + */ + columnIndex?: number; - /** Returns the index of the column being dragged - */ - draggedColumnIndex?: number; - } + /** Returns column width before dragging + */ + oldWidth?: number; - export interface ColumnDragEventArgs { + /** Returns initial column element object. + */ + target?: any; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface ColumnResizeEndEventArgs { - /** Returns the control model values. - */ - model?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the event Type. - */ - type?: string; + /** Returns the control model values. + */ + model?: any; - /** Returns the column data which is dragged - */ - draggedColumn?: any; + /** Returns the event Type. + */ + type?: string; - /** Returns the index of the column being dragged - */ - draggedColumnIndex?: number; + /** Returns the column data in which the resizing started + */ + column?: any; - /** Returns the target column data - */ - targetColumn?: any; + /** Returns the column index in which the resizing started + */ + columnIndex?: number; - /** Returns the index of the target column - */ - targetColumnIndex?: number; + /** Returns the column width difference, before and after the resizing + */ + extra?: number; - /** Returns that we can drop over the column or not. - */ - canDrop?: boolean; - } + /** Returns the new column width after resized + */ + newWidth?: number; - export interface ColumnDropEventArgs { + /** Returns column width before dragging + */ + oldWidth?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns initial column element object. + */ + target?: any; + } - /** Returns the control model values. - */ - model?: any; + export interface ContextMenuOpenEventArgs { - /** Returns the event Type. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the column data which is dragged - */ - draggedColumn?: any; + /** Returns the default context menu items to which we add custom items. + */ + contextMenuItems?: any[]; - /** Returns the index of the column being dragged - */ - draggedColumnIndex?: number; + /** Returns the TreeGrid model. + */ + model?: any; - /** Returns the target column data - */ - targetColumn?: any; + /** Returns request type. + */ + requestType?: string; - /** Returns the index of the target column - */ - targetColumnIndex?: number; - } + /** Returns the name of the event. + */ + type?: string; + } - export interface ColumnResizedEventArgs { + export interface CreateEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the control model values. - */ - model?: any; + /** Returns the TreeGrid model + */ + model?: any; - /** Returns the event Type. - */ - type?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the column data which is resized - */ - column?: any; + export interface DetailsDataBoundEventArgs { - /** Returns the index of the column being resized. - */ - columnIndex?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns resized column width after resized. - */ - newWidth?: number; + /** Returns the data collection of selected row. + */ + data?: any; - /** Returns resized column width before resizing - */ - oldWidth?: number; - } + /** Returns the details element of selected row. + */ + detailsElement?: any; - export interface ColumnResizeStartEventArgs { + /** Returns the rowIndex of selected row. + */ + rowIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the TreeGrid model + */ + model?: any; - /** Returns the control model values. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the event Type. - */ - type?: string; + export interface DetailsShownEventArgs { - /** Returns the column data in which the resizing started - */ - column?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the column index in which the resizing started - */ - columnIndex?: number; + /** Returns the data collection of selected row. + */ + data?: any; - /** Returns column width before dragging - */ - oldWidth?: number; + /** Returns the details element of selected row. + */ + detailsElement?: any; - /** Returns initial column element object. - */ - target?: any; - } + /** Returns the rowIndex of selected row. + */ + rowIndex?: number; - export interface ColumnResizeEndEventArgs { + /** Returns the TreeGrid model + */ + model?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the control model values. - */ - model?: any; + export interface DetailsHiddenEventArgs { - /** Returns the event Type. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the column data in which the resizing started - */ - column?: any; + /** Returns the TreeGrid model + */ + model?: any; - /** Returns the column index in which the resizing started - */ - columnIndex?: number; + /** Returns the data collection of hidden details Template + */ + rowData?: any; - /** Returns the column width difference, before and after the resizing - */ - extra?: number; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the new column width after resized - */ - newWidth?: number; + export interface EndEditEventArgs { - /** Returns column width before dragging - */ - oldWidth?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns initial column element object. - */ - target?: any; - } + /** Returns the row element of editing cell. + */ + rowElement?: any; - export interface ContextMenuOpenEventArgs { + /** Returns the Element of editing cell. + */ + cellElement?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the data of edited cell record. + */ + data?: any; - /** Returns the default context menu items to which we add custom items. - */ - contextMenuItems?: any[]; + /** Returns the column name of edited cell belongs. + */ + columnName?: string; - /** Returns the TreeGrid model. - */ - model?: any; + /** Returns the column object of edited cell belongs. + */ + columnObject?: any; + } - /** Returns request type. - */ - requestType?: string; + export interface ExpandedEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface CreateEventArgs { + /** Returns the row index of expanded record. + */ + recordIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the data of expanded record.. + */ + data?: any; - /** Returns the TreeGrid model - */ - model?: any; + /** Returns Request Type. + */ + requestType?: string; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns state of a record whether it is in expanded or expanded state. + */ + expanded?: boolean; - export interface DetailsDataBoundEventArgs { + /** Returns the event type. + */ + type?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface ExpandingEventArgs { - /** Returns the data collection of selected row. - */ - data?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the details element of selected row. - */ - detailsElement?: any; + /** Returns the row index of expanding record. + */ + recordIndex?: number; - /** Returns the rowIndex of selected row. - */ - rowIndex?: number; + /** Returns the data of expanding record.. + */ + data?: any; - /** Returns the TreeGrid model - */ - model?: any; + /** Returns the event Type. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns state of a record whether it is in expanded or collapsed state. + */ + expanded?: boolean; + } - export interface DetailsShownEventArgs { + export interface LoadEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the data collection of selected row. - */ - data?: any; + /** Returns the TreeGrid model + */ + model?: any; - /** Returns the details element of selected row. - */ - detailsElement?: any; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the rowIndex of selected row. - */ - rowIndex?: number; + export interface QueryCellInfoEventArgs { - /** Returns the TreeGrid model - */ - model?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the selecting cell element. + */ + cellElement?: any; - export interface DetailsHiddenEventArgs { + /** Returns the value of cell. + */ + cellValue?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the data of current cell record. + */ + data?: any; - /** Returns the TreeGrid model - */ - model?: any; + /** Returns the column of cell belongs. + */ + column?: any; + } - /** Returns the data collection of hidden details Template - */ - rowData?: any; + export interface RowDataBoundEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface EndEditEventArgs { + /** Returns the row element of rendering row. + */ + rowElement?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the data of rendering row record. + */ + data?: any; + } - /** Returns the row element of editing cell. - */ - rowElement?: any; + export interface RowDragEventArgs { - /** Returns the Element of editing cell. - */ - cellElement?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the data of edited cell record. - */ - data?: any; + /** Returns the row which we start to drag. + */ + draggedRow?: any; - /** Returns the column name of edited cell belongs. - */ - columnName?: string; + /** Returns the row index which we start to drag. + */ + draggedRowIndex?: number; - /** Returns the column object of edited cell belongs. - */ - columnObject?: any; - } + /** Returns the row on which we are dragging. + */ + targetRow?: any; - export interface ExpandedEventArgs { + /** Returns the row index on which we are dragging. + */ + targetRowIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns that we can drop over that record or not. + */ + canDrop?: boolean; - /** Returns the row index of expanded record. - */ - recordIndex?: number; + /** Returns the TreeGrid model. + */ + model?: any; - /** Returns the data of expanded record.. - */ - data?: any; + /** Returns request type. + */ + requestType?: string; - /** Returns Request Type. - */ - requestType?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns state of a record whether it is in expanded or expanded state. - */ - expanded?: boolean; + export interface RowDragStartEventArgs { - /** Returns the event type. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface ExpandingEventArgs { + /** Returns the row which we start to drag. + */ + draggedRow?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the row index which we start to drag. + */ + draggedRowIndex?: boolean; - /** Returns the row index of expanding record. - */ - recordIndex?: number; + /** Returns the TreeGrid model. + */ + model?: any; - /** Returns the data of expanding record.. - */ - data?: any; + /** Returns request type. + */ + requestType?: string; - /** Returns the event Type. - */ - type?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns state of a record whether it is in expanded or collapsed state. - */ - expanded?: boolean; - } + export interface RowDragStopEventArgs { - export interface LoadEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the row which we start to drag. + */ + draggedRow?: any; - /** Returns the TreeGrid model - */ - model?: any; + /** Returns the row index which we start to drag. + */ + draggedRowIndex?: number; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the row which we are dropped to row. + */ + targetRow?: any; - export interface QueryCellInfoEventArgs { + /** Returns the row index which we are dropped to row. + */ + targetRowIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the TreeGrid model. + */ + model?: any; - /** Returns the selecting cell element. - */ - cellElement?: any; + /** Returns request type. + */ + requestType?: string; - /** Returns the value of cell. - */ - cellValue?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the data of current cell record. - */ - data?: any; + export interface CellSelectingEventArgs { - /** Returns the column of cell belongs. - */ - column?: any; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface RowDataBoundEventArgs { + /** Returns the cell index on the selection. + */ + cellIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the row index on the selection + */ + rowIndex?: number; - /** Returns the row element of rendering row. - */ - rowElement?: any; + /** Returns the selecting cell element + */ + targetCell?: any; - /** Returns the data of rendering row record. - */ - data?: any; - } + /** Returns the selecting row element + */ + targetRow?: any; - export interface RowDragEventArgs { + /** Returns the selecting record object + */ + data?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the Gantt object Model + */ + model?: any; + } - /** Returns the row which we start to drag. - */ - draggedRow?: any; + export interface CellSelectedEventArgs { - /** Returns the row index which we start to drag. - */ - draggedRowIndex?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the row on which we are dragging. - */ - targetRow?: any; + /** Returns the cell index on the selection. + */ + cellIndex?: number; - /** Returns the row index on which we are dragging. - */ - targetRowIndex?: number; + /** Returns the row index on the selection + */ + rowIndex?: number; - /** Returns that we can drop over that record or not. - */ - canDrop?: boolean; + /** Returns the selecting cell element + */ + targetCell?: any; - /** Returns the TreeGrid model. - */ - model?: any; + /** Returns the selecting row element + */ + targetRow?: any; - /** Returns request type. - */ - requestType?: string; + /** Returns the selecting record object + */ + data?: any; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the Gantt object Model + */ + model?: any; - export interface RowDragStartEventArgs { + /** Returns the previously selected row data + */ + previousData?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the previously selected cell index + */ + previousCellIndex?: any; - /** Returns the row which we start to drag. - */ - draggedRow?: any; + /** Returns the previously selected row index + */ + previousRowIndex?: any; - /** Returns the row index which we start to drag. - */ - draggedRowIndex?: boolean; + /** Returns the previously selected cell element + */ + previousTargetCell?: any; - /** Returns the TreeGrid model. - */ - model?: any; + /** Returns the previously selected row element + */ + previousTargetRow?: any; + } - /** Returns request type. - */ - requestType?: string; + export interface RowSelectedEventArgs { - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface RowDragStopEventArgs { + /** Returns the selecting row element. + */ + targetRow?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the index of selecting row record. + */ + recordIndex?: number; - /** Returns the row which we start to drag. - */ - draggedRow?: any; + /** Returns the data of selected record. + */ + data?: any; - /** Returns the row index which we start to drag. - */ - draggedRowIndex?: number; + /** Returns the event type. + */ + type?: string; + } - /** Returns the row which we are dropped to row. - */ - targetRow?: any; + export interface RowSelectingEventArgs { - /** Returns the row index which we are dropped to row. - */ - targetRowIndex?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the TreeGrid model. - */ - model?: any; + /** Returns the data selecting record. + */ + data?: any; - /** Returns request type. - */ - requestType?: string; + /** Returns the index of selecting row record. + */ + recordIndex?: string; + + /** Returns the selecting row element. + */ + targetRow?: any; + + /** Returns the previous selected data. + */ + previousData?: any; + + /** Returns the previous selected row index. + */ + previousIndex?: string; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the previous selected row element. + */ + previousTreeGridRow?: any; + } + + export interface ToolbarClickEventArgs { + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the current item. + */ + currentTarget?: any; + + /** Returns the TreeGrid model. + */ + model?: any; + + /** Returns the name of the toolbar item on which mouse click has been performed + */ + itemName?: string; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface Column { + + /** Enables or disables the ability to filter the rows based on this column. + * @Default {false} + */ + allowFiltering?: boolean; + + /** Enables the blanks option in ejDropDownList mapped in TreeGrid column + * @Default {true} + */ + allowFilteringBlankContent?: boolean; + + /** Enables or disables the ability to sort the rows based on this column/field. + * @Default {false} + */ + allowSorting?: boolean; + + /** Enables/disables cell selection. + * @Default {false} + */ + allowCellSelection?: boolean; + + /** To customize the ej controls defined in TreeGrid column with their native property. + */ + editParams?: any; + + /** Specifies the edit type of the column. + * @Default {ej.TreeGrid.EditingType.String} + */ + editType?: ej.TreeGrid.EditingType|string; + + /** To bind the dropdown data for TreeGrid column mapped with ejDropDownList + */ + dropdownData?: string; + + /** Specifies the name of the field from the dataSource to bind with this column. + */ + field?: string; + + /** Specifies the template string of the script element to enable column template for a column. + */ + template?: string; + + /** Specifies the template ID of the script element to enable column template for a column. + */ + templateID?: string; + + /** Specifies the template ID or the template string of the AngularJS script element to enable column template for a column. + */ + angularTemplate?: string; + + /** Specifies the type of the editor control to be used to filter the rows. + * @Default {ej.TreeGrid.EditingType.String} + */ + filterEditType?: ej.TreeGrid.EditingType|string; + + /** Header text of the column. + * @Default {null} + */ + headerText?: string; + + /** Gets or sets a value that indicates to display a column value as checkbox or string + * @Default {false} + */ + displayAsCheckbox?: boolean; + + /** Enables or disables the checkbox visibility in a column for checkbox selection. + * @Default {false} + */ + showCheckbox?: boolean; + + /** Controls the visibility of the column. + * @Default {true} + */ + visible?: boolean; + + /** Gets or sets a value for treegrid column width + */ + width?: number; + + /** Specifies the header template value for the column header + */ + headerTemplateID?: string; + + /** Specifies the display format of a column + * @Default {null} + */ + format?: any; + + /** Specifies whether the column is a template column + * @Default {false} + */ + isTemplateColumn?: boolean; + + /** Specifies the alignment of the column header text + * @Default {ej.TextAlign.Left} + */ + headerTextAlign?: ej.TextAlign|string; + + /** Specifies whether the column is frozen + * @Default {false} + */ + isFrozen?: boolean; + + /** Specifies the text alignment for the column + * @Default {ej.TextAlign.Left} + */ + textAlign?: ej.TextAlign|string; + + /** Enables or disables the ability to edit a row or cell. + * @Default {false} + */ + allowEditing?: boolean; + + /** We can include or exclude particular column from column visibility list in column menu. + * @Default {true} + */ + showInColumnChooser?: boolean; + + /** Sets the clip mode for TreeGrid cell as ellipsis or clipped content(both header and content) + * @Default {ej.TreeGrid.ClipMode.Clip} + */ + clipMode?: ej.TreeGrid.ClipMode|string; + + /** Sets the tooltip template for the specific column. + * @Default {null} + */ + tooltip?: string; + + /** Sets the tooltip template for the column header + * @Default {null} + */ + headerTooltip?: string; + + /** specifies the conditions for saving data to the database while adding or editing the fields. + */ + validationRules?: any; + + /** Enables or disables the ability to freeze/unfreeze the columns + * @Default {false} + */ + allowFreezing?: boolean; + } + + export interface ContextMenuSettings { + + /** Option for adding items to context menu. + * @Default {[]} + */ + contextMenuItems?: any[]; + + /** Shows/hides the context menu. + * @Default {false} + */ + showContextMenu?: boolean; + } + + export interface DragTooltip { + + /** Specifies whether to show tooltip while dragging a row. + * @Default {true} + */ + showTooltip?: boolean; + + /** Option to add field names whose corresponding values in the dragged row needs to be shown in the preview tooltip. + * @Default {[]} + */ + tooltipItems?: any[]; + + /** Custom template for that tooltip that is shown while dragging a row. + * @Default {null} + */ + tooltipTemplate?: string; + } + + export interface EditSettings { + + /** Enables or disables the button to add new row in context menu as well as in toolbar. + * @Default {true} + */ + allowAdding?: boolean; + + /** Enables or disables the button to delete the selected row in context menu as well as in toolbar. + * @Default {true} + */ + allowDeleting?: boolean; + + /** Enables or disables the ability to edit a row or cell. + * @Default {false} + */ + allowEditing?: boolean; + + /** Specifies the mouse action whether single click or double click to begin the editing + * @Default {ej.TreeGrid.BeginEditAction.DblClick} + */ + beginEditAction?: ej.TreeGrid.BeginEditAction|string; + + /** specifies the edit mode in TreeGrid , "cellEditing" is for cell type editing and "rowEditing" is for entire row. + * @Default {ej.TreeGrid.EditMode.CellEditing} + */ + editMode?: ej.TreeGrid.EditMode|string; + + /** Specifies the position where the new row has to be added. + * @Default {top} + */ + rowPosition?: ej.TreeGrid.RowPosition|string; + + /** Specifies the template ID for the custom dialog. + * @Default {null} + */ + dialogEditorTemplateID?: string; + } + + export interface ColumnResizeSettings { + + /** Specifies the mode for column resizing + * @Default {ej.TreeGrid.ColumnResizeMode.Normal} + */ + columnResizeMode?: ej.TreeGrid.ColumnResizeMode|string; + } + + export interface FilterSettingsFilteredColumn { + + /** Specifies the value to be filtered in TreeGrid. + */ + value?: string; + + /** Specifies the field where filtering has to be performed. + */ + field?: string; + + /** Specifies the predicate(and/or) value to perform filtering. + */ + predicate?: string; + + /** Specifies the filter condition to filtered column. See operator + */ + operator?: string; + } + + export interface FilterSettings { + + /** Specifies the mode on which column filtering should start + * @Default {immediate} + */ + filterBarMode?: string; + + /** Specifies the type of column filtering. + * @Default {ej.TreeGrid.FilterType.FilterBar} + */ + filterType?: ej.TreeGrid.FilterType|string; + + /** Specifies the column collection for filtering the TreeGrid content on initial load + * @Default {[]} + */ + filteredColumns?: FilterSettingsFilteredColumn[]; + } + + export interface PageSettings { + + /** Using this property we can specify the number of pages should pager contains, according to this count TreeGrid height will be updated. + * @Default {8} + */ + pageCount?: number; + + /** This specifies the number of rows to display in each page. + * @Default {12} + */ + pageSize?: number; + + /** Get the value of records which is bound to TreeGrid. The totalRecordsCount value is calculated based on the datasource bound to TreeGrid. + * @Default {null} + */ + totalRecordsCount?: number; + + /** Specifies the current page to display at load time. + * @Default {1} + */ + currentPage?: number; + + /** Specifies the mode of record count in a page, whether it should count all the records or the root to count zero level parent records. + * @Default {ej.TreeGrid.PageSizeMode.All} + */ + pageSizeMode?: ej.TreeGrid.PageSizeMode|string; + + /** Specifies the mode of printing the control, whether it should print the all the records or the current page content. + * @Default {ej.TreeGrid.PrintMode.AllPages} + */ + printMode?: ej.TreeGrid.PrintMode|string; + + /** Specifies the Custom template for Pager control. + * @Default {null} + */ + template?: string; + } + + export interface SelectedCellIndex { + + /** Specifies the row index of the cell to be selected in TreeGrid control + */ + rowIndex?: number; + + /** Specifies the cell index to be selected in the row. + * @Default { } + */ + cellIndex?: number; + } + + export interface SelectionSettings { + + /** Specifies the type of selection whether to select row or cell. + * @Default {ej.TreeGrid.SelectionMode.Row} + */ + selectionMode?: ej.TreeGrid.SelectionMode|string; + + /** Specifies the type of selection whether single, multiple or checkbox. + * @Default {ej.TreeGrid.SelectionType.Single} + */ + selectionType?: ej.TreeGrid.SelectionType|string; + + /** Enables or disables the selection by hierarchy in check box selection + * @Default {true} + */ + enableHierarchySelection?: boolean; + + /** Toggles the visibility of the checkbox in column header, using which all the check boxes can be selected or unselected. + * @Default {true} + */ + enableSelectAll?: boolean; + } + + export interface SummaryRowsSummaryColumn { + + /** Specifies the summary type to perform calculations in a corresponding summary column. See summaryType. + */ + summaryType?: ej.TreeGrid.SummaryType|string; + + /** Specifies summary column used to perform the summary calculation. + */ + dataMember?: string; + + /** Specifies the required column to display the summary. + */ + displayColumn?: string; + + /** Specifies the text to be displayed before the summary column value. + */ + prefix?: string; + + /** Specifies the text to be displayed after the summary column value. + */ + suffix?: string; - export interface CellSelectingEventArgs { + /** Specifies the format to be applied on the summary column value. + */ + format?: string; + } - /** Returns the cancel option value. - */ - cancel?: boolean; + export interface SummaryRow { - /** Returns the cell index on the selection. - */ - cellIndex?: number; + /** Specifies the title for summary row collection in TreeGrid + */ + title?: string; - /** Returns the row index on the selection - */ - rowIndex?: number; + /** Specifies the summary columns in the summary rows. + */ + summaryColumns?: SummaryRowsSummaryColumn[]; + } - /** Returns the selecting cell element - */ - targetCell?: any; + export interface SizeSettings { - /** Returns the selecting row element - */ - targetRow?: any; + /** Height of the TreeGrid. + * @Default {null} + */ + height?: string; - /** Returns the selecting record object - */ - data?: any; + /** Width of the TreeGrid. + * @Default {null} + */ + width?: string; + } - /** Returns the Gantt object Model - */ - model?: any; - } + export interface SortSettingsSortedColumn { - export interface CellSelectedEventArgs { + /** Specifies the field to be sorted in TreeGrid + */ + field?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Specifies the sort direction in TreeGrid + */ + direction?: string; + } - /** Returns the cell index on the selection. - */ - cellIndex?: number; + export interface SortSettings { - /** Returns the row index on the selection - */ - rowIndex?: number; + /** Option to add columns based on which the rows have to be sorted recursively. + * @Default {[]} + */ + sortedColumns?: SortSettingsSortedColumn[]; + } - /** Returns the selecting cell element - */ - targetCell?: any; + export interface ToolbarSettingsCustomToolbarItem { - /** Returns the selecting row element - */ - targetRow?: any; + /** Allows the user to insert the custom icons in toolbar using CSS class name selector. + */ + text?: string; - /** Returns the selecting record object - */ - data?: any; + /** Allows the user to insert the custom icons in toolbar using script templates. Using this property we can bind HTML elements and other EJ controls to TreeGrid toolbar. + */ + templateID?: string; - /** Returns the Gantt object Model - */ - model?: any; + /** Allows the user to display custom tooltip text for TreeGrid custom toolbar items. + */ + tooltipText?: string; + } - /** Returns the previously selected row data - */ - previousData?: any; + export interface ToolbarSettings { - /** Returns the previously selected cell index - */ - previousCellIndex?: any; + /** Shows/hides the toolbar. + * @Default {false} + */ + showToolbar?: boolean; - /** Returns the previously selected row index - */ - previousRowIndex?: any; + /** Specifies the list of toolbar items to be rendered in TreeGrid toolbar + * @Default {[]} + */ + toolbarItems?: any[]; - /** Returns the previously selected cell element - */ - previousTargetCell?: any; + /** Allows the user to insert custom toolbar items. + */ + customToolbarItems?: ToolbarSettingsCustomToolbarItem[]; + } - /** Returns the previously selected row element - */ - previousTargetRow?: any; - } + enum EditingType { - export interface RowSelectedEventArgs { + ///It Specifies String edit type. + String, - /** Returns the cancel option value. - */ - cancel?: boolean; + ///It Specifies Boolean edit type. + Boolean, - /** Returns the selecting row element. - */ - targetRow?: any; + ///It Specifies Numeric edit type. + Numeric, - /** Returns the index of selecting row record. - */ - recordIndex?: number; + ///It Specifies Dropdown edit type. + Dropdown, - /** Returns the data of selected record. - */ - data?: any; + ///It Specifies DatePicker edit type. + DatePicker, - /** Returns the event type. - */ - type?: string; - } + ///It Specifies DateTimePicker edit type. + DateTimePicker, - export interface RowSelectingEventArgs { + ///It Specifies Maskedit edit type. + Maskedit + } - /** Returns the cancel option value. - */ - cancel?: boolean; - /** Returns the data selecting record. - */ - data?: any; + enum ClipMode { - /** Returns the index of selecting row record. - */ - recordIndex?: string; - - /** Returns the selecting row element. - */ - targetRow?: any; - - /** Returns the previous selected data. - */ - previousData?: any; - - /** Returns the previous selected row index. - */ - previousIndex?: string; + ///Shows ellipsis for the overflown cell. + Ellipsis, - /** Returns the previous selected row element. - */ - previousTreeGridRow?: any; - } - - export interface ToolbarClickEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the current item. - */ - currentTarget?: any; - - /** Returns the TreeGrid model. - */ - model?: any; - - /** Returns the name of the toolbar item on which mouse click has been performed - */ - itemName?: string; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface Column { - - /** Enables or disables the ability to filter the rows based on this column. - * @Default {false} - */ - allowFiltering?: boolean; - - /** Enables the blanks option in ejDropDownList mapped in TreeGrid column - * @Default {true} - */ - allowFilteringBlankContent?: boolean; - - /** Enables or disables the ability to sort the rows based on this column/field. - * @Default {false} - */ - allowSorting?: boolean; - - /** Enables/disables cell selection. - * @Default {false} - */ - allowCellSelection?: boolean; - - /** To customize the ej controls defined in TreeGrid column with their native property. - */ - editParams?: any; - - /** Specifies the edit type of the column. - * @Default {ej.TreeGrid.EditingType.String} - */ - editType?: ej.TreeGrid.EditingType | string; - - /** To bind the dropdown data for TreeGrid column mapped with ejDropDownList - */ - dropdownData?: string; - - /** Specifies the name of the field from the dataSource to bind with this column. - */ - field?: string; - - /** Specifies the template string of the script element to enable column template for a column. - */ - template?: string; - - /** Specifies the template ID of the script element to enable column template for a column. - */ - templateID?: string; - - /** Specifies the template ID or the template string of the AngularJS script element to enable column template for a column. - */ - angularTemplate?: string; - - /** Specifies the type of the editor control to be used to filter the rows. - * @Default {ej.TreeGrid.EditingType.String} - */ - filterEditType?: ej.TreeGrid.EditingType | string; - - /** Header text of the column. - * @Default {null} - */ - headerText?: string; - - /** Enables or disables the checkbox visibility in a column to make it as a checkbox column - * @Default {false} - */ - displayAsCheckbox?: boolean; - - /** Enables or disables the checkbox visibility in a column for checkbox selection. - * @Default {false} - */ - showCheckbox?: boolean; - - /** Controls the visibility of the column. - * @Default {true} - */ - visible?: boolean; - - /** Gets or sets a value for treegrid column width - */ - width?: number; - - /** Specifies the header template value for the column header - */ - headerTemplateID?: string; - - /** Specifies the display format of a column - * @Default {null} - */ - format?: any; - - /** Specifies whether the column is a template column - * @Default {false} - */ - isTemplateColumn?: boolean; - - /** Specifies the alignment of the column header text - * @Default {ej.TextAlign.Left} - */ - headerTextAlign?: ej.TextAlign | string; - - /** Specifies whether the column is frozen - * @Default {false} - */ - isFrozen?: boolean; - - /** Specifies the text alignment for the column - * @Default {ej.TextAlign.Left} - */ - textAlign?: ej.TextAlign | string; - - /** Enables or disables the ability to edit a row or cell. - * @Default {false} - */ - allowEditing?: boolean; - - /** We can include or exclude particular column from column visibility list in column menu. - * @Default {true} - */ - showInColumnChooser?: boolean; - - /** Sets the clip mode for TreeGrid cell as ellipsis or clipped content(both header and content) - * @Default {ej.TreeGrid.ClipMode.Clip} - */ - clipMode?: ej.TreeGrid.ClipMode | string; - - /** Sets the tooltip template for the specific column. - * @Default {null} - */ - tooltip?: string; - - /** Sets the tooltip template for the column header - * @Default {null} - */ - headerTooltip?: string; - - /** specifies the conditions for saving data to the database while adding or editing the fields. - */ - validationRules?: any; - - /** Enables or disables the ability to freeze/unfreeze the columns - * @Default {false} - */ - allowFreezing?: boolean; - } - - export interface ContextMenuSettings { - - /** Option for adding items to context menu. - * @Default {[]} - */ - contextMenuItems?: any[]; - - /** Shows/hides the context menu. - * @Default {false} - */ - showContextMenu?: boolean; - } - - export interface DragTooltip { - - /** Specifies whether to show tooltip while dragging a row. - * @Default {true} - */ - showTooltip?: boolean; - - /** Option to add field names whose corresponding values in the dragged row needs to be shown in the preview tooltip. - * @Default {[]} - */ - tooltipItems?: any[]; - - /** Custom template for that tooltip that is shown while dragging a row. - * @Default {null} - */ - tooltipTemplate?: string; - } - - export interface EditSettings { - - /** Enables or disables the button to add new row in context menu as well as in toolbar. - * @Default {true} - */ - allowAdding?: boolean; - - /** Enables or disables the button to delete the selected row in context menu as well as in toolbar. - * @Default {true} - */ - allowDeleting?: boolean; - - /** Enables or disables the ability to edit a row or cell. - * @Default {false} - */ - allowEditing?: boolean; - - /** Specifies the mouse action whether single click or double click to begin the editing - * @Default {ej.TreeGrid.BeginEditAction.DblClick} - */ - beginEditAction?: ej.TreeGrid.BeginEditAction | string; - - /** specifies the edit mode in TreeGrid , "cellEditing" is for cell type editing and "rowEditing" is for entire row. - * @Default {ej.TreeGrid.EditMode.CellEditing} - */ - editMode?: ej.TreeGrid.EditMode | string; - - /** Specifies the position where the new row has to be added. - * @Default {top} - */ - rowPosition?: ej.TreeGrid.RowPosition | string; - /** Specifies the template ID for the custom dialog. - * @Default {null} - */ - dialogEditorTemplateID?: string; - } - - export interface ColumnResizeSettings { - - /** Specifies the mode for column resizing - * @Default {ej.TreeGrid.ColumnResizeMode.Normal} - */ - columnResizeMode?: ej.TreeGrid.ColumnResizeMode | string; - } - - export interface FilterSettingsFilteredColumn { - - /** Specifies the value to be filtered in TreeGrid. - */ - value?: string; - - /** Specifies the field where filtering has to be performed. - */ - field?: string; - - /** Specifies the predicate(and/or) value to perform filtering. - */ - predicate?: string; - - /** Specifies the filter condition to filtered column. See operator - */ - operator?: string; - } - - export interface FilterSettings { - - /** Specifies the mode on which column filtering should start - * @Default {immediate} - */ - filterBarMode?: string; - - /** Specifies the type of column filtering. - * @Default {ej.TreeGrid.FilterType.FilterBar} - */ - filterType?: ej.TreeGrid.FilterType | string; - - /** Specifies the column collection for filtering the TreeGrid content on initial load - * @Default {[]} - */ - filteredColumns?: any[]; - } - - export interface PageSettings { - - /** Using this property we can specify the number of pages should pager contains, according to this count TreeGrid height will be updated. - * @Default {8} - */ - pageCount?: number; - - /** This specifies the number of rows to display in each page. - * @Default {12} - */ - pageSize?: number; - - /** Get the value of records which is bound to TreeGrid. The totalRecordsCount value is calculated based on the datasource bound to TreeGrid. - * @Default {null} - */ - totalRecordsCount?: number; - - /** Specifies the current page to display at load time. - * @Default {1} - */ - currentPage?: number; - - /** Specifies the mode of record count in a page, whether it should count all the records or the root to count zero level parent records. - * @Default {ej.TreeGrid.PageSizeMode.All} - */ - pageSizeMode?: ej.TreeGrid.PageSizeMode | string; - - /** Specifies the Custom template for Pager control. - * @Default {null} - */ - template?: string; - } - - export interface SelectedCellIndex { - - /** Specifies the row index of the cell to be selected in TreeGrid control - */ - rowIndex?: number; - - /** Specifies the cell index to be selected in the row. - * @Default { } - */ - cellIndex?: number; - } - - export interface SelectionSettings { - - /** Specifies the type of selection whether to select row or cell. - * @Default {ej.TreeGrid.SelectionMode.Row} - */ - selectionMode?: ej.TreeGrid.SelectionMode | string; - - /** Specifies the type of selection whether single, multiple or checkbox. - * @Default {ej.TreeGrid.SelectionType.Single} - */ - selectionType?: ej.TreeGrid.SelectionType | string; - - /** Enables or disables the selection by hierarchy in check box selection - * @Default {true} - */ - enableHierarchySelection?: boolean; - - /** Toggles the visibility of the checkbox in column header, using which all the check boxes can be selected or unselected. - * @Default {true} - */ - enableSelectAll?: boolean; - } - - export interface SummaryRowsSummaryColumn { - - /** Specifies the summary type to perform calculations in a corresponding summary column. See summaryType. - */ - summaryType?: ej.TreeGrid.SummaryType | string; - - /** Specifies summary column used to perform the summary calculation. - */ - dataMember?: string; - - /** Specifies the required column to display the summary. - */ - displayColumn?: string; + ///Truncate the text in the cell. + Clip + } - /** Specifies the text to be displayed before the summary column value. - */ - prefix?: string; - - /** Specifies the text to be displayed after the summary column value. - */ - suffix?: string; - /** Specifies the format to be applied on the summary column value. - */ - format?: string; - } + enum HeaderTextOverflow { - export interface SummaryRow { + ///You can disable the word wrap + None, - /** Specifies the title for summary row collection in TreeGrid - */ - title?: string; + ///You can wrap the header content + Wrap + } - /** Specifies the summary columns in the summary rows. - */ - summaryColumns?: SummaryRowsSummaryColumn[]; - } - export interface SizeSettings { + enum BeginEditAction { - /** Height of the TreeGrid. - * @Default {null} - */ - height?: string; + ///you can begin the editing at double click + DblClick, - /** Width of the TreeGrid. - * @Default {null} - */ - width?: string; - } + ///you can begin the editing at single click + Click + } - export interface SortSettingsSortedColumn { - /** Specifies the field to be sorted in TreeGrid - */ - field?: string; + enum EditMode { - /** Specifies the sort direction in TreeGrid - */ - direction?: string; - } + ///you can edit a cell. + CellEditing, - export interface SortSettings { + ///you can edit a row. + RowEditing, - /** Option to add columns based on which the rows have to be sorted recursively. - * @Default {[]} - */ - sortedColumns?: SortSettingsSortedColumn[]; - } + ///you can edit a row in dialog form. + DialogEditing + } - export interface ToolbarSettingsCustomToolbarItem { - /** Allows the user to insert the custom icons in toolbar using CSS class name selector. - */ - text?: string; + enum RowPosition { - /** Allows the user to insert the custom icons in toolbar using script templates. Using this property we can bind HTML elements and other EJ controls to TreeGrid toolbar. - */ - templateID?: string; + ///you can add a new row at top. + Top, - /** Allows the user to display custom tooltip text for TreeGrid custom toolbar items. - */ - tooltipText?: string; - } + ///you can add a new row at bottom. + Bottom, - export interface ToolbarSettings { + ///you can add a new row to above selected row. + Above, - /** Shows/hides the toolbar. - * @Default {false} - */ - showToolbar?: boolean; + ///you can add a new row to below selected row. + Below, - /** Specifies the list of toolbar items to be rendered in TreeGrid toolbar - * @Default {[]} - */ - toolbarItems?: any[]; + ///you can add a new row as a child for selected row. + Child + } - /** Allows the user to insert custom toolbar items. - */ - customToolbarItems?: ToolbarSettingsCustomToolbarItem[]; - } - enum EditingType { + enum ColumnResizeMode { - ///It Specifies String edit type. - String, + ///At load time column are rendered with given width value, while resizing the column only current column width is changed + FixedColumns, - ///It Specifies Boolean edit type. - Boolean, + ///At load time columns are stretched with control width,while resizing the column, current column width updated based on next column + Normal, - ///It Specifies Numeric edit type. - Numeric, + ///In this mode columns are stretched with control width in load time and on resizing action. + NextColumn + } - ///It Specifies Dropdown edit type. - Dropdown, - ///It Specifies DatePicker edit type. - DatePicker, + enum FilterType { - ///It Specifies DateTimePicker edit type. - DateTimePicker, + ///Enables the filterbar filtering + FilterBar, - ///It Specifies Maskedit edit type. - Maskedit - } + ///Enables the menu filtering + Menu + } - enum ClipMode { + enum PageSizeMode { - ///Shows ellipsis for the overflown cell. - Ellipsis, + ///To count all the parent and child records. + All, - ///Truncate the text in the cell. - Clip - } + ///To count the Zeroth level parent records. + Root + } - enum HeaderTextOverflow { + enum PrintMode { - ///You can disable the word wrap - None, + ///To print all the pages + AllPages, - ///You can wrap the header content - Wrap - } + ///To print only the current page content. + CurrentPage + } - enum BeginEditAction { + enum SelectionMode { - ///you can begin the editing at double click - DblClick, + ///you can select a row. + Row, - ///you can begin the editing at single click - Click - } + ///you can select a cell. + Cell + } - enum EditMode { + enum SelectionType { - ///you can edit a cell. - CellEditing, + ///you can select a single row. + Single, - ///you can edit a row. - RowEditing - } + ///you can select a multiple row. + Multiple, + ///you can select rows using checkbox. + Checkbox + } - enum RowPosition { - ///you can add a new row at top. - Top, + enum SummaryType { - ///you can add a new row at bottom. - Bottom, + ///Displays the sum of summary column + Sum, - ///you can add a new row to above selected row. - Above, + ///Displays the average of summary column + Average, - ///you can add a new row to below selected row. - Below, + ///Displays the maximum value of summary column + Maximum, - ///you can add a new row as a child for selected row. - Child - } + ///Displays the minimum value of summary column + Minimum, + ///Displays the total count of summary column + Count, - enum ColumnResizeMode { + ///Displays the minimum date value in summary column + MinimumDate, - ///At load time column are rendered with given width value, while resizing the column only current column width is changed - FixedColumns, + ///Displays the maximum date value in summary column + MaximumDate, - ///At load time columns are stretched with control width,while resizing the column, current column width updated based on next column - Normal, + ///Displays the true count value for boolean summary columns + TrueCount, - ///In this mode columns are stretched with control width in load time and on resizing action. - NextColumn - } + ///Displays the false count value for boolean summary columns + FalseCount + } + } - enum FilterType { + class GroupButton extends ej.Widget { + static fn: GroupButton; + constructor(element: JQuery | Element, options?: GroupButton.Model); + static Locale: any; + model: GroupButton.Model; + defaults: GroupButton.Model; - ///Enables the filterbar filtering - FilterBar, + /** Remove the selection state of the specified the button element from the GroupButton + * @param {JQuery} Specific button element + * @returns {void} + */ + deselectItem(element: JQuery): void; - ///Enables the menu filtering - Menu - } + /** Destroy the GroupButton widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + /** Disables the GroupButton control + * @returns {void} + */ + disable(): void; - enum PageSizeMode { + /** Disable the specified button element from the ejGroupButton control. + * @param {JQuery} Specific button element + * @returns {void} + */ + disableItem(element: JQuery): void; - ///To count all the parent and child records. - All, + /** Enables the disabled ejGroupButton control. + * @returns {void} + */ + enable(): void; - ///To count the Zeroth level parent records. - Root - } + /** Enable the specified disabled button element from the ejGroupButton control. + * @param {JQuery} Specific button element + * @returns {void} + */ + enableItem(element: JQuery): void; + + /** Returns the index value for specified button element in the GroupButton control. + * @param {JQuery} Specific button element + * @returns {number} + */ + getIndex(element: JQuery): number; + + /** This method returns the list of active state button elements from the GroupButton control. + * @returns {any} + */ + getSelectedItem(): any; + + /** Hides the GroupButton control + * @returns {void} + */ + hide(): void; + + /** Hide the specified button element from the ejGroupButton control. + * @param {JQuery} Specific button element + * @returns {void} + */ + hideItem(element: JQuery): void; + + /** Returns the disabled state of the specified element button element in GroupButton as Boolean. + * @returns {boolean} + */ + isDisabled(): boolean; + + /** Returns the state of the specified button element as Boolean. + * @returns {boolean} + */ + isSelected(): boolean; + + /** Public method used to select the specified button element from the ejGroupButton control. + * @param {JQuery} Specific button element + * @returns {void} + */ + selectItem(element: JQuery): void; + + /** Shows the GroupButton control, if its hide. + * @returns {void} + */ + show(): void; + + /** Show the specified hidden button element from the ejGroupButton control. + * @param {JQuery} Specific button element + * @returns {void} + */ + showItem(element: JQuery): void; + } + export namespace GroupButton { + + export interface Model { + + /** Sets the specified class to GroupButton wrapper element, which allows for custom skinning option in ejGroupButton control. + */ + cssClass?: string; + + /** To set the local JSON data, define a JSON array and initialize the GroupButton with dataSource property. Specify the column names in the fields property. + * @Default {null} + */ + dataSource?: any; + + /** Displays the ejGroupButton in Right to Left direction. + * @Default {false} + */ + enableRTL?: boolean; + + /** Used to enable or disable the ejGroupButton control. + * @Default {true} + */ + enabled?: boolean; + + /** Gets or sets a value that indicates to display the values of the data. + * @Default {null} + */ + fields?: any; + + /** Sets the GroupButton behavior to works as Checkbox mode/ radio button mode based on the specified option. + * @Default {ej.GroupButtonMode.RadioButton} + */ + groupButtonMode?: ej.GroupButtonMode|string; + + /** Used to sets the height of the ejGroupButton control. + * @Default {28} + */ + height?: string|number; + + /** Defines the characteristics of the ejGroupButton control and extend the capability of an HTML element by adding specified attributes to element tag and by performing the related + * actions + * @Default {{}} + */ + htmlAttributes?: any; + + /** Specify the orientation of the GroupButton. See below to get available orientations + * @Default {ej.Orientation.Horizontal} + */ + orientation?: ej.Orientation|string; + + /** Query the dataSource from the table for Groupbutton + * @Default {null} + */ + query?: any; + + /** Sets the list of button elements to be selected. To enable this option groupButtonMode should be in “checkbox” mode. + * @Default {[]} + */ + selectedItemIndex?: number[]|string[]; + + /** Sets the rounder corner to the GroupButton, if sets as true. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Specifies the size of the button. See available size + * @Default {ej.ButtonSize.Normal} + */ + size?: ej.ButtonSize|string; + + /** Defines the width of the ejGroupButton control. + */ + width?: string|number; + + /** Triggered before any button element in the GroupButton get selected. + */ + beforeSelect?(e: BeforeSelectEventArgs): void; + + /** Fires after GroupButton control is created.If the user want to perform any operation after the button control creation then the user can make use of this create event. + */ + create?(e: CreateEventArgs): void; + + /** Fires when the GroupButton is destroyed successfully.If the user want to perform any operation after the destroy button control then the user can make use of this destroy event. + */ + destroy?(e: DestroyEventArgs): void; + + /** Triggered once the key is pressed, when the control is in focused state. + */ + keyPress?(e: KeyPressEventArgs): void; + + /** Triggered when the button element get selected. + */ + select?(e: SelectEventArgs): void; + } + + export interface BeforeSelectEventArgs { + + /** Boolean value based on whether the button element is disabled or not. + */ + disabled?: boolean; + + /** Returns the selection button element. + */ + element?: any; + + /** Event object + */ + event?: any; + + /** Return the button element ID. + */ + id?: string; + + /** Button item index. + */ + index?: number; + + /** returns the button model + */ + model?: ej.GroupButton.Model; + + /** Boolean value based on whether the button element is selected or not. + */ + selected?: boolean; + + /** returns the name of the event + */ + type?: string; + /** return the button state + */ + status?: boolean; + } - enum SelectionMode { + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the GroupButton model + */ + model?: ej.GroupButton.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface DestroyEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the GroupButton model + */ + model?: ej.GroupButton.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface KeyPressEventArgs { + + /** Boolean value based on whether the button element is disabled or not. + */ + disabled?: boolean; + + /** Returns the selection button element. + */ + element?: any; + + /** Event object + */ + event?: any; + + /** Return the button element ID. + */ + id?: string; + + /** Button item index. + */ + index?: number; + + /** returns the button model + */ + model?: ej.GroupButton.Model; + + /** Boolean value based on whether the button element is selected or not. + */ + selected?: boolean; + + /** returns the name of the event + */ + type?: string; + + /** return the button state + */ + status?: boolean; + } + + export interface SelectEventArgs { + + /** Boolean value based on whether the selected button element is disabled or not. + */ + disabled?: boolean; + + /** Returns the selection button element. + */ + element?: any; + + /** Event object + */ + event?: any; + + /** Return the selected button element ID. + */ + id?: string; + + /** Selected button item index. + */ + index?: number; + + /** returns the button model + */ + model?: ej.GroupButton.Model; + + /** Boolean value based on whether the button element is selected or not. + */ + selected?: boolean; + + /** returns the name of the event + */ + type?: string; + + /** return the button state + */ + status?: boolean; + } + } + enum GroupButtonMode { + //Sets the GroupButton to work as checkbox mode + CheckBox, + //Sets the RadioButton to work as radio button mode + RadioButton, + } + + class NavigationDrawer extends ej.Widget { + static fn: NavigationDrawer; + constructor(element: JQuery | Element, options?: NavigationDrawer.Model); + static Locale: any; + model: NavigationDrawer.Model; + defaults: NavigationDrawer.Model; + + /** To close the navigation drawer control + * @returns {void} + */ + close(): void; + + /** To load AJAX content into NavigationDrawer container. + * @returns {void} + */ + loadContent(): void; + + /** To open the navigation drawer control + * @returns {void} + */ + open(): void; + + /** To Toggle the navigation drawer control + * @returns {void} + */ + toggle(): void; + } + export namespace NavigationDrawer { + + export interface Model { + + /** Specifies the ajaxSettings option to load the content to the NavigationDrawer control. + * @Default {null} + */ + ajaxSettings?: AjaxSettings; + + /** Specifies the contentId for navigation drawer, where the AJAX content need to updated + * @Default {null} + */ + contentId?: string; + + /** Sets the root class for NavigationDrawer theme. This cssClass API helps to use custom skinning option for NavigationDrawer control. By defining the root class using this API, we + * need to include this root class in CSS. + */ + cssClass?: string; + + /** Sets the Direction for the control. See Direction + * @Default {left} + */ + direction?: ej.Direction|string; + + /** Sets the listview to be enabled or not + * @Default {false} + */ + enableListView?: boolean; + + /** Specifies the listview items as an array of object. + * @Default {[]} + */ + items?: any[]; + + /** Sets all the properties of listview to render in navigation drawer + */ + listViewSettings?: any; + + /** Specifies position whether it is in fixed or relative to the page. See Position + * @Default {normal} + */ + position?: string; + + /** Specifies the targetId for navigation drawer + */ + targetId?: string; + + /** Sets the rendering type of the control. See Type + * @Default {overlay} + */ + type?: string; + + /** Specifies the width of the control + * @Default {auto} + */ + width?: number; + + /** Navigation pane opened initially when isPaneOpen property is true. + * @Default {false} + */ + isPaneOpen?: boolean; + + /** Event triggers after the AJAX content loaded completely. + */ + ajaxComplete?(e: AjaxCompleteEventArgs): void; + + /** Event triggers when the AJAX request failed. + */ + ajaxError?(e: AjaxErrorEventArgs): void; + + /** Event triggers after the AJAX content loaded successfully. + */ + ajaxSuccess?(e: AjaxSuccessEventArgs): void; + + /** Event triggers before the control gets closed. + */ + beforeClose?(e: BeforeCloseEventArgs): void; + + /** Event triggers when the control open. + */ + open?(e: OpenEventArgs): void; + + /** Event triggers when the Swipe happens. + */ + swipe?(e: SwipeEventArgs): void; + } + + export interface AjaxCompleteEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.NavigationDrawer.Model; + } - ///you can select a row. - Row, + export interface AjaxErrorEventArgs { - ///you can select a cell. - Cell - } + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + /** returns the name of the event. + */ + type?: string; - enum SelectionType { + /** returns the model value of the control. + */ + model?: ej.NavigationDrawer.Model; - ///you can select a single row. - Single, + /** returns the error thrown in the AJAX post. + */ + errorThrown?: any; + + /** returns the status. + */ + textStatus?: any; + } + + export interface AjaxSuccessEventArgs { + + /** returns true if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the name of the event. + */ + type?: string; + + /** returns the model value of the control. + */ + model?: ej.NavigationDrawer.Model; + + /** returns the AJAX current content. + */ + content?: string; - ///you can select a multiple row. - Multiple, + /** returns the current URL of the AJAX post. + */ + URL?: string; + } + + export interface BeforeCloseEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Navigation Drawer model + */ + model?: ej.NavigationDrawer.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface OpenEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Navigation Drawer model + */ + model?: ej.NavigationDrawer.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface SwipeEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Navigation Drawer model + */ + model?: ej.NavigationDrawer.Model; + + /** returns the name of the event + */ + type?: string; + } + + export interface AjaxSettings { + + /** It specifies, whether to enable or disable asynchronous request. + */ + async?: boolean; + + /** It specifies the page will be cached in the web browser. + */ + cache?: boolean; + + /** It specifies the type of data is send in the query string. + */ + contentType?: string; + + /** It specifies the data as an object, will be passed in the query string. + */ + data?: any; + + /** It specifies the type of data that you're expecting back from the response. + */ + dataType?: string; + + /** It specifies the HTTP request type. + */ + type?: string; + } + } + + class RadialMenu extends ej.Widget { + static fn: RadialMenu; + constructor(element: JQuery | Element, options?: RadialMenu.Model); + static Locale: any; + model: RadialMenu.Model; + defaults: RadialMenu.Model; + + /** To hide the radialmenu + * @returns {void} + */ + hide(): void; + + /** To hide the radialmenu items + * @returns {void} + */ + hideMenu(): void; + + /** To Show the radial menu + * @returns {void} + */ + show(): void; + + /** To show menu items + * @returns {void} + */ + showMenu(): void; + + /** To enable menu item using index + * @param {number} Index of the Radialmenu to be enabled. + * @returns {void} + */ + enableItemByIndex(itemIndex: number): void; + + /** To enable menu items using indices + * @param {any[]} Index of the Radialmenu to be enabled. + * @returns {void} + */ + enableItemsByIndices(itemIndices: any[]): void; + + /** To disable menu item using index + * @param {number} Index of the Radialmenu to be disabled. + * @returns {void} + */ + disableItemByIndex(itemIndex: number): void; + + /** To disable menu items using indices + * @param {any[]} items of the Radialmenu to disable. + * @returns {void} + */ + disableItemsByIndices(itemIndices: any[]): void; + + /** To enable menu item using item text + * @param {string} item of the Radialmenu item to enable. + * @returns {void} + */ + enableItem(item: string): void; + + /** To disable menu item using item text + * @param {string} item of the Radialmenu item to disable. + * @returns {void} + */ + disableItem(item: string): void; + + /** To enable menu items using item texts + * @param {any[]} items of the Radialmenu item to enable. + * @returns {void} + */ + enableItems(items: any[]): void; + + /** To disable menu items using item texts + * @param {any[]} items of the Radialmenu item to disable. + * @returns {void} + */ + disableItems(items: any[]): void; + + /** To update menu item badge value + * @param {number} The index value to add the given items at the specified index. If index is not specified, the given value will not be updated. + * @param {number} The Value to be updated in the badge. It will be updated based on the given index + * @returns {void} + */ + updateBadgeValue(index: number, value: number): void; + + /** To show menu item badge + * @param {number} Index of the Radialmenu item to be shown badge. + * @returns {void} + */ + showBadge(index: number): void; + + /** To hide menu item badge + * @param {number} Index of the Radialmenu item to hide the badge. + * @returns {void} + */ + hideBadge(index: number): void; + } + export namespace RadialMenu { + + export interface Model { + + /** To show the Radial in initial render. + */ + autoOpen?: boolean; + + /** Renders the back button Image for Radial using class. + */ + backImageClass?: string; + + /** Sets the root class for RadialMenu theme. This cssClass API helps to use custom skinning option for RadialMenu control. By defining the root class using this API, we need to + * include this root class in CSS. + */ + cssClass?: string; + + /** To enable Animation for Radial Menu. + */ + enableAnimation?: boolean; + + /** Renders the Image for Radial using Class. + */ + imageClass?: string; + + /** Specify the items of radial menu + */ + items?: Item[]; + + /** Specifies the radius of radial menu + */ + radius?: number; + + /** To show the Radial while clicking given target element. + */ + targetElementId?: string; + + /** To set radial render position. + */ + position?: any; + + /** Event triggers when we click an item. + */ + click?(e: ClickEventArgs): void; + + /** Event triggers when the menu is opened. + */ + open?(e: OpenEventArgs): void; + + /** Event triggers when the menu is closed. + */ + close?(e: CloseEventArgs): void; + } + + export interface ClickEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Radialmenu model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the item of element + */ + item?: any; + + /** returns the name of item + */ + itemName?: string; + } + + export interface OpenEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Radialmenu model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface CloseEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Radialmenu model + */ + model?: any; - ///you can select rows using checkbox. - Checkbox - } + /** returns the name of the event + */ + type?: string; + } + + export interface ItemsBadge { + + /** Specifies whether to enable radialmenu item badge or not. + */ + enabled?: boolean; + + /** Specifies the value of radial menu item badge. + */ + value?: number; + } + + export interface ItemsSliderSettings { + + /** Specifies the sliderSettings ticks values of nested radial menu items. + */ + ticks?: any[]; + + /** Specifies the sliderSettings stroke Width value. + */ + strokeWidth?: number; + + /** Specifies the value of sliderSettings labelSpace . + */ + labelSpace?: number; + } + + export interface Item { + + /** Specify the URL of the frame background image for radial menu item. + */ + imageUrl?: string; + + /** Specifies the template property of RadialMenu for SVG icon. + */ + prependTo?: string; + + /** Specifies the text of RadialMenu item. + */ + text?: string; + + /** Specifies the enable state of RadialMenu item. + */ + enabled?: boolean; + + /** specify the click event to corresponding image/text for performing some specific action. + */ + click?: string; + + /** Specifies radialmenu item badges. + */ + badge?: ItemsBadge; + + /** Specifies the type of nested radial menu item. + */ + type?: string; + + /** Specifies the sliderSettings ticks for nested radial menu items. + */ + sliderSettings?: ItemsSliderSettings; + + /** Specifies to add sub level items . + */ + items?: any[]; + } + } + + class Tile extends ej.Widget { + static fn: Tile; + constructor(element: JQuery | Element, options?: Tile.Model); + static Locale: any; + model: Tile.Model; + defaults: Tile.Model; + + /** Update the image template of tile item to another one. + * @param {string} UpdateTemplate by using id + * @param {number} index of the tile + * @returns {void} + */ + updateTemplate(id: string, index: number): void; + } + export namespace Tile { + + export interface Model { + + /** Section for badge specific functionalities and it represents the notification for tile items. + */ + badge?: Badge; + + /** Section for caption specific functionalities and it represents the notification for tile items. + */ + caption?: Caption; + + /** Sets the root class for Tile theme. This cssClass API helps to use custom skinning option for Tile control. By defining the root class using this API, we need to include this root + * class in CSS. + */ + cssClass?: string; + + /** Saves current model value to browser cookies for state maintains. While refreshing the page retains the model value applies from browser cookies. + * @Default {false} + */ + enablePersistence?: boolean; + + /** Customize the tile size height. + * @Default {null} + */ + height?: string|number; + + /** Specifies Tile imageClass, using this property we can give images for each tile through CSS classes. + * @Default {null} + */ + imageClass?: string; + + /** Specifies the position of tile image. + * @Default {center} + */ + imagePosition?: ej.Tile.ImagePosition|string; + + /** Specifies the tile image in outside of template content. + * @Default {null} + */ + imageTemplateId?: string; + + /** Specifies the URL of tile image. + * @Default {null} + */ + imageUrl?: string; + + /** Set the localization culture for Tile Widget. + */ + locale?: string; + + /** Section for liveTile specific functionalities. + */ + liveTile?: LiveTile; + + /** Specifies the size of a tile. See tileSize + * @Default {small} + */ + tileSize?: ej.Tile.TileSize|string; + + /** Customize the tile size width. + * @Default {null} + */ + width?: string|number; + + /** Sets the rounded corner to tile. + * @Default {false} + */ + showRoundedCorner?: boolean; + + /** Sets allowSelection to tile. + * @Default {false} + */ + allowSelection?: boolean; + + /** Sets the background color to tile. + * @Default {null} + */ + backgroundColor?: string; + + /** Event triggers when the mouseDown happens in the tile + */ + mouseDown?(e: MouseDownEventArgs): void; + + /** Event triggers when the mouseUp happens in the tile + */ + mouseUp?(e: MouseUpEventArgs): void; + } + + export interface MouseDownEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the tile model + */ + model?: boolean; + + /** returns the name of the event + */ + type?: boolean; + + /** returns the current tile text + */ + text?: string; + + /** returns the index of current tile item + */ + index?: number; + } + + export interface MouseUpEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the tile model + */ + model?: boolean; + + /** returns the name of the event + */ + type?: boolean; + + /** returns the current tile text + */ + text?: boolean; + + /** returns the index of current tile item + */ + index?: number; + } + + export interface Badge { + + /** Specifies whether to enable badge or not. + * @Default {false} + */ + enabled?: boolean; + + /** Specifies maximum value for tile badge. + * @Default {100} + */ + maxValue?: number; + + /** Specifies minimum value for tile badge. + * @Default {1} + */ + minValue?: number; + + /** Specifies text instead of number for tile badge. + * @Default {null} + */ + text?: string; + + /** Sets value for tile badge. + * @Default {1} + */ + value?: number; + /** Sets position for tile badge. + * @Default {“bottomright”} + */ + position?: ej.Tile.BadgePosition|string; + } - enum SummaryType { + export interface Caption { - ///Displays the sum of summary column - Sum, + /** Specifies whether the tile text to be shown or hidden. + * @Default {true} + */ + enabled?: boolean; - ///Displays the average of summary column - Average, + /** Changes the text of a tile. + * @Default {Text} + */ + text?: string; - ///Displays the maximum value of summary column - Maximum, + /** It is used to align the text of a tile. + * @Default {normal} + */ + alignment?: ej.Tile.CaptionAlignment|string; - ///Displays the minimum value of summary column - Minimum, + /** It is used to specify the caption position like Inner top, inner bottom and outer. + * @Default {Innerbottom} + */ + position?: ej.Tile.CaptionPosition|string; - ///Displays the total count of summary column - Count, + /** sets the icon instead of text. + * @Default {null} + */ + icon?: string; + } - ///Displays the minimum date value in summary column - MinimumDate, + export interface LiveTile { - ///Displays the maximum date value in summary column - MaximumDate, + /** Specifies whether to enable liveTile or not. + * @Default {false} + */ + enabled?: boolean; - ///Displays the true count value for boolean summary columns - TrueCount, + /** Specifies liveTile images in CSS classes. + * @Default {null} + */ + imageClass?: any[]; - ///Displays the false count value for boolean summary columns - FalseCount - } + /** Specifies liveTile images in templates. + * @Default {null} + */ + imageTemplateId?: any[]; - } + /** Specifies liveTile images in CSS classes. + * @Default {null} + */ + imageUrl?: any[]; - class GroupButton extends ej.Widget { - static fn: GroupButton; - constructor(element: JQuery | Element, options?: GroupButton.Model); - static Locale: any; - model: GroupButton.Model; - defaults: GroupButton.Model; + /** Specifies liveTile type for Tile. See orientation + * @Default {flip} + */ + type?: ej.Tile.liveTileType|string; - /** Remove the selection state of the specified the button element from the GroupButton - * @param {JQuery} Specific button element - * @returns {void} - */ - deselectItem(element: JQuery): void; + /** Specifies time interval between two successive liveTile animation + * @Default {2000} + */ + updateInterval?: number; - /** Destroy the GroupButton widget all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; + /** Sets the text to each living tile + * @Default {Null} + */ + text?: any[]; + } - /** Disables the GroupButton control - * @returns {void} - */ - disable(): void; + enum BadgePosition { - /** Disable the specified button element from the ejGroupButton control. - * @param {JQuery} Specific button element - * @returns {void} - */ - disableItem(element: JQuery): void; + ///To set the topright position of tile badge + Topright, - /** Enables the disabled ejGroupButton control. - * @returns {void} - */ - enable(): void; + ///To set the bottomright of tile badge + Bottomright + } - /** Enable the specified disabled button element from the ejGroupButton control. - * @param {JQuery} Specific button element - * @returns {void} - */ - enableItem(element: JQuery): void; - - /** Returns the index value for specified button element in the GroupButton control. - * @param {JQuery} Specific button element - * @returns {number} - */ - getIndex(element: JQuery): number; - - /** This method returns the list of active state button elements from the GroupButton control. - * @returns {any} - */ - getSelectedItem(): any; - - /** Hides the GroupButton control - * @returns {void} - */ - hide(): void; - - /** Hide the specified button element from the ejGroupButton control. - * @param {JQuery} Specific button element - * @returns {void} - */ - hideItem(element: JQuery): void; - - /** Returns the disabled state of the specified element button element in GroupButton as Boolean. - * @returns {boolean} - */ - isDisabled(): boolean; - - /** Returns the state of the specified button element as Boolean. - * @returns {boolean} - */ - isSelected(): boolean; - - /** Public method used to select the specified button element from the ejGroupButton control. - * @param {JQuery} Specific button element - * @returns {void} - */ - selectItem(element: JQuery): void; - - /** Shows the GroupButton control, if its hide. - * @returns {void} - */ - show(): void; - - /** Show the specified hidden button element from the ejGroupButton control. - * @param {JQuery} Specific button element - * @returns {void} - */ - showItem(element: JQuery): void; - } - export namespace GroupButton { - - export interface Model { - - /** Sets the specified class to GroupButton wrapper element, which allows for custom skinning option in ejGroupButton control. - */ - cssClass?: string; - - /** To set the local JSON data, define a JSON array and initialize the GroupButton with dataSource property. Specify the column names in the fields property. - * @Default {null} - */ - dataSource?: any; - - /** Displays the ejGroupButton in Right to Left direction. - * @Default {false} - */ - enableRTL?: boolean; - - /** Used to enable or disable the ejGroupButton control. - * @Default {true} - */ - enabled?: boolean; - - /** Gets or sets a value that indicates to display the values of the data. - * @Default {null} - */ - fields?: any; - - /** Sets the GroupButton behavior to works as Checkbox mode/ radio button mode based on the specified option. - * @Default {ej.GroupButtonMode.RadioButton} - */ - groupButtonMode?: ej.GroupButtonMode | string; - - /** Used to sets the height of the ejGroupButton control. - * @Default {28} - */ - height?: string | number; - - /** Defines the characteristics of the ejGroupButton control and extend the capability of an HTML element by adding specified attributes to element tag and by performing the related actions - * @Default {{}} - */ - htmlAttributes?: any; - - /** Specify the orientation of the GroupButton. See below to get available orientations - * @Default {ej.Orientation.Horizontal} - */ - orientation?: ej.Orientation | string; - - /** Query the dataSource from the table for Groupbutton - * @Default {null} - */ - query?: any; - - /** Sets the list of button elements to be selected. To enable this option groupButtonMode should be in “checkbox” mode. - * @Default {[]} - */ - selectedItemIndex?: number[] | string[]; - - /** Sets the rounder corner to the GroupButton, if sets as true. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Specifies the size of the button. See available size - * @Default {ej.ButtonSize.Normal} - */ - size?: ej.ButtonSize | string; - - /** Defines the width of the ejGroupButton control. - */ - width?: string | number; - - /** Triggered before any button element in the GroupButton get selected. */ - beforeSelect?(e: BeforeSelectEventArgs): void; - - /** Fires after GroupButton control is created.If the user want to perform any operation after the button control creation then the user can make use of this create event. */ - create?(e: CreateEventArgs): void; - - /** Fires when the GroupButton is destroyed successfully.If the user want to perform any operation after the destroy button control then the user can make use of this destroy event. */ - destroy?(e: DestroyEventArgs): void; - - /** Triggered once the key is pressed, when the control is in focused state. */ - keyPress?(e: KeyPressEventArgs): void; - - /** Triggered when the button element get selected. */ - select?(e: SelectEventArgs): void; - } - - export interface BeforeSelectEventArgs { - - /** Boolean value based on whether the button element is disabled or not. - */ - disabled?: boolean; - - /** Returns the selection button element. - */ - element?: any; - /** Event object - */ - event?: any; + enum CaptionAlignment { - /** Return the button element ID. - */ - id?: string; + ///To set the normal alignment of text in tile control + Normal, - /** Button item index. - */ - index?: number; + ///To set the left alignment of text in tile control + Left, - /** returns the button model - */ - model?: ej.GroupButton.Model; + ///To set the right alignment of text in tile control + Right, - /** Boolean value based on whether the button element is selected or not. - */ - selected?: boolean; + ///To set the center alignment of text in tile control + Center + } - /** returns the name of the event - */ - type?: string; - /** return the button state - */ - status?: boolean; - } + enum CaptionPosition { - export interface CreateEventArgs { + ///To set the inner top position of the tile text + Innertop, - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + ///To set the inner bottom position of the tile text + Innerbottom, - /** returns the GroupButton model - */ - model?: ej.GroupButton.Model; + ///To set the outer position of the tile text + Outer + } - /** returns the name of the event - */ - type?: string; - } - export interface DestroyEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the GroupButton model - */ - model?: ej.GroupButton.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface KeyPressEventArgs { - - /** Boolean value based on whether the button element is disabled or not. - */ - disabled?: boolean; - - /** Returns the selection button element. - */ - element?: any; - - /** Event object - */ - event?: any; - - /** Return the button element ID. - */ - id?: string; - - /** Button item index. - */ - index?: number; - - /** returns the button model - */ - model?: ej.GroupButton.Model; - - /** Boolean value based on whether the button element is selected or not. - */ - selected?: boolean; - - /** returns the name of the event - */ - type?: string; - - /** return the button state - */ - status?: boolean; - } - - export interface SelectEventArgs { - - /** Boolean value based on whether the selected button element is disabled or not. - */ - disabled?: boolean; - - /** Returns the selection button element. - */ - element?: any; - - /** Event object - */ - event?: any; - - /** Return the selected button element ID. - */ - id?: string; - - /** Selected button item index. - */ - index?: number; - - /** returns the button model - */ - model?: ej.GroupButton.Model; - - /** Boolean value based on whether the button element is selected or not. - */ - selected?: boolean; - - /** returns the name of the event - */ - type?: string; - - /** return the button state - */ - status?: boolean; - } - } - enum GroupButtonMode { - //Sets the GroupButton to work as checkbox mode - CheckBox, - //Sets the RadioButton to work as radio button mode - RadioButton, - } - - class NavigationDrawer extends ej.Widget { - static fn: NavigationDrawer; - constructor(element: JQuery | Element, options?: NavigationDrawer.Model); - static Locale: any; - model: NavigationDrawer.Model; - defaults: NavigationDrawer.Model; - - /** To close the navigation drawer control - * @returns {void} - */ - close(): void; - - /** To load AJAX content into NavigationDrawer container. - * @returns {void} - */ - loadContent(): void; - - /** To open the navigation drawer control - * @returns {void} - */ - open(): void; - - /** To Toggle the navigation drawer control - * @returns {void} - */ - toggle(): void; - } - export namespace NavigationDrawer { - - export interface Model { - - /** Specifies the ajaxSettings option to load the content to the NavigationDrawer control. - * @Default {null} - */ - ajaxSettings?: AjaxSettings; - - /** Specifies the contentId for navigation drawer, where the AJAX content need to updated - * @Default {null} - */ - contentId?: string; - - /** Sets the root class for NavigationDrawer theme. This cssClass API helps to use custom skinning option for NavigationDrawer control. - * By defining the root class using this API, we need to include this root class in CSS. - */ - cssClass?: string; - - /** Sets the Direction for the control. See Direction - * @Default {left} - */ - direction?: ej.Direction | string; - - /** Sets the listview to be enabled or not - * @Default {false} - */ - enableListView?: boolean; - - /** Specifies the listview items as an array of object. - * @Default {[]} - */ - items?: any[]; - - /** Sets all the properties of listview to render in navigation drawer - */ - listViewSettings?: any; - - /** Specifies position whether it is in fixed or relative to the page. See Position - * @Default {normal} - */ - position?: string; - - /** Specifies the targetId for navigation drawer - */ - targetId?: string; - - /** Sets the rendering type of the control. See Type - * @Default {overlay} - */ - type?: string; - - /** Specifies the width of the control - * @Default {auto} - */ - width?: number; - - /** Navigation pane opened initially when isPaneOpen property is true. - * @Default {false} - */ - isPaneOpen?: boolean; - - /** Event triggers after the AJAX content loaded completely. */ - ajaxComplete?(e: AjaxCompleteEventArgs): void; - - /** Event triggers when the AJAX request failed. */ - ajaxError?(e: AjaxErrorEventArgs): void; - - /** Event triggers after the AJAX content loaded successfully. */ - ajaxSuccess?(e: AjaxSuccessEventArgs): void; - - /** Event triggers before the control gets closed. */ - beforeClose?(e: BeforeCloseEventArgs): void; - - /** Event triggers when the control open. */ - open?(e: OpenEventArgs): void; - - /** Event triggers when the Swipe happens. */ - swipe?(e: SwipeEventArgs): void; - } - - export interface AjaxCompleteEventArgs { + enum ImagePosition { - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + ///To set the center position of tile image + Center, - /** returns the name of the event. - */ - type?: string; + ///To set the top center position of tile image + TopCenter, - /** returns the model value of the control. - */ - model?: ej.NavigationDrawer.Model; - } + ///To set the bottom center position of tile image + BottomCenter, - export interface AjaxErrorEventArgs { + ///To set the right center position of tile image + RightCenter, - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + ///To set the left center position of tile image + LeftCenter, - /** returns the name of the event. - */ - type?: string; + ///To set the topleft position of tile image + TopLeft, - /** returns the model value of the control. - */ - model?: ej.NavigationDrawer.Model; + ///To set the topright position of tile image + TopRight, - /** returns the error thrown in the AJAX post. - */ - errorThrown?: any; + ///To set the bottomright position of tile image + BottomRight, - /** returns the status. - */ - textStatus?: any; - } + ///To set the bottomleft position of tile image + BottomLeft, - export interface AjaxSuccessEventArgs { + ///To set the fill position of tile image + Fill + } - /** returns true if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - /** returns the name of the event. - */ - type?: string; + enum liveTileType { - /** returns the model value of the control. - */ - model?: ej.NavigationDrawer.Model; + ///To set flip type of liveTile for tile control + Flip, - /** returns the AJAX current content. - */ - content?: string; + ///To set slide type of liveTile for tile control + Slide, - /** returns the current URL of the AJAX post. - */ - URL?: string; - } + ///To set carousel type of liveTile for tile control + Carousel + } - export interface BeforeCloseEventArgs { - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + enum TileSize { - /** returns the Navigation Drawer model - */ - model?: ej.NavigationDrawer.Model; + ///To set the medium size for tile control + Medium, - /** returns the name of the event - */ - type?: string; - } + ///To set the small size for tile control + Small, - export interface OpenEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Navigation Drawer model - */ - model?: ej.NavigationDrawer.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface SwipeEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Navigation Drawer model - */ - model?: ej.NavigationDrawer.Model; - - /** returns the name of the event - */ - type?: string; - } - - export interface AjaxSettings { - - /** It specifies, whether to enable or disable asynchronous request. - */ - async?: boolean; - - /** It specifies the page will be cached in the web browser. - */ - cache?: boolean; - - /** It specifies the type of data is send in the query string. - */ - contentType?: string; - - /** It specifies the data as an object, will be passed in the query string. - */ - data?: any; - - /** It specifies the type of data that you're expecting back from the response. - */ - dataType?: string; - - /** It specifies the HTTP request type. - */ - type?: string; - } - } - - class RadialMenu extends ej.Widget { - static fn: RadialMenu; - constructor(element: JQuery | Element, options?: RadialMenu.Model); - static Locale: any; - model: RadialMenu.Model; - defaults: RadialMenu.Model; - - /** To hide the radialmenu - * @returns {void} - */ - hide(): void; - - /** To hide the radialmenu items - * @returns {void} - */ - hideMenu(): void; - - /** To Show the radial menu - * @returns {void} - */ - show(): void; - - /** To show menu items - * @returns {void} - */ - showMenu(): void; - - /** To enable menu item using index - * @param {number} Index of the Radialmenu to be enabled. - * @returns {void} - */ - enableItemByIndex(itemIndex: number): void; - - /** To enable menu items using indices - * @param {Array} Index of the Radialmenu to be enabled. - * @returns {void} - */ - enableItemsByIndices(itemIndices: any[]): void; - - /** To disable menu item using index - * @param {number} Index of the Radialmenu to be disabled. - * @returns {void} - */ - disableItemByIndex(itemIndex: number): void; - - /** To disable menu items using indices - * @param {Array} items of the Radialmenu to disable. - * @returns {void} - */ - disableItemsByIndices(itemIndices: any[]): void; - - /** To enable menu item using item text - * @param {string} item of the Radialmenu item to enable. - * @returns {void} - */ - enableItem(item: string): void; - - /** To disable menu item using item text - * @param {string} item of the Radialmenu item to disable. - * @returns {void} - */ - disableItem(item: string): void; - - /** To enable menu items using item texts - * @param {Array} items of the Radialmenu item to enable. - * @returns {void} - */ - enableItems(items: any[]): void; - - /** To disable menu items using item texts - * @param {Array} items of the Radialmenu item to disable. - * @returns {void} - */ - disableItems(items: any[]): void; - - /** To update menu item badge value - * @param {number} The index value to add the given items at the specified index. If index is not specified, the given value will not be updated. - * @param {number} The Value to be updated in the badge. It will be updated based on the given index - * @returns {void} - */ - updateBadgeValue(index: number, value: number): void; - - /** To show menu item badge - * @param {number} Index of the Radialmenu item to be shown badge. - * @returns {void} - */ - showBadge(index: number): void; - - /** To hide menu item badge - * @param {number} Index of the Radialmenu item to hide the badge. - * @returns {void} - */ - hideBadge(index: number): void; - } - export namespace RadialMenu { - - export interface Model { - - /** To show the Radial in initial render. - */ - autoOpen?: boolean; - - /** Renders the back button Image for Radial using class. - */ - backImageClass?: string; - - /** Sets the root class for RadialMenu theme. This cssClass API helps to use custom skinning option for RadialMenu control. By defining the root class using this API, - * we need to include this root class in CSS. - */ - cssClass?: string; - - /** To enable Animation for Radial Menu. - */ - enableAnimation?: boolean; - - /** Renders the Image for Radial using Class. - */ - imageClass?: string; - - /** Specify the items of radial menu - */ - items?: Item[]; - - /** Specifies the radius of radial menu - */ - radius?: number; - - /** To show the Radial while clicking given target element. - */ - targetElementId?: string; - - /** To set radial render position. - */ - position?: any; - - /** Event triggers when we click an item. */ - click?(e: ClickEventArgs): void; - - /** Event triggers when the menu is opened. */ - open?(e: OpenEventArgs): void; - - /** Event triggers when the menu is closed. */ - close?(e: CloseEventArgs): void; - } - - export interface ClickEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Radialmenu model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the item of element - */ - item?: any; - - /** returns the name of item - */ - itemName?: string; - } - - export interface OpenEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Radialmenu model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface CloseEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Radialmenu model - */ - model?: any; + ///To set the large size for tile control + Large, - /** returns the name of the event - */ - type?: string; - } + ///To set the wide size for tile control + Wide + } - export interface ItemsBadge { + } - /** Specifies whether to enable radialmenu item badge or not. - */ - enabled?: boolean; - - /** Specifies the value of radial menu item badge. - */ - value?: number; - } - - export interface ItemsSliderSettings { + class Signature extends ej.Widget { + static fn: Signature; + constructor(element: JQuery | Element, options?: Signature.Model); + static Locale: any; + model: Signature.Model; + defaults: Signature.Model; - /** Specifies the sliderSettings ticks values of nested radial menu items. - */ - ticks?: any[]; + /** Clears the strokes in the signature. + * @returns {void} + */ + clear(): void; - /** Specifies the sliderSettings stroke Width value. - */ - strokeWidth?: number; - - /** Specifies the value of sliderSettings labelSpace . - */ - labelSpace?: number; - } - - export interface Item { - - /** Specify the URL of the frame background image for radial menu item. - */ - imageUrl?: string; - - /** Specifies the text of RadialMenu item. - */ - text?: string; - - /** Specifies the enable state of RadialMenu item. - */ - enabled?: boolean; - - /** specify the click event to corresponding image/text for performing some specific action. - */ - click?: string; - - /** Specifies radialmenu item badges. - */ - badge?: ItemsBadge; - - /** Specifies the type of nested radial menu item. - */ - type?: string; - - /** Specifies the sliderSettings ticks for nested radial menu items. - */ - sliderSettings?: ItemsSliderSettings; - - /** Specifies to add sub level items . - */ - items?: any[]; - } - } - - class Tile extends ej.Widget { - static fn: Tile; - constructor(element: JQuery | Element, options?: Tile.Model); - static Locale: any; - model: Tile.Model; - defaults: Tile.Model; - - /** Update the image template of tile item to another one. - * @param {string} UpdateTemplate by using id - * @param {number} index of the tile - * @returns {void} - */ - updateTemplate(id: string, index: number): void; - } - export namespace Tile { - - export interface Model { - - /** Section for badge specific functionalities and it represents the notification for tile items. - */ - badge?: Badge; - - /** Section for caption specific functionalities and it represents the notification for tile items. - */ - caption?: Caption; - - /** Sets the root class for Tile theme. This cssClass API helps to use custom skinning option for Tile control. By defining the root class using this API, we need to include this root class in CSS. - */ - cssClass?: string; - - /** Saves current model value to browser cookies for state maintains. While refreshing the page retains the model value applies from browser cookies. - * @Default {false} - */ - enablePersistence?: boolean; - - /** Customize the tile size height. - * @Default {null} - */ - height?: number; - - /** Specifies Tile imageClass, using this property we can give images for each tile through CSS classes. - * @Default {null} - */ - imageClass?: string; - - /** Specifies the position of tile image. - * @Default {center} - */ - imagePosition?: ej.Tile.ImagePosition | string; - - /** Specifies the tile image in outside of template content. - * @Default {null} - */ - imageTemplateId?: string; - - /** Specifies the URL of tile image. - * @Default {null} - */ - imageUrl?: string; - - /** Set the localization culture for Tile Widget. - */ - locale?: string; - - /** Section for liveTile specific functionalities. - */ - liveTile?: LiveTile; - - /** Specifies the size of a tile. See tileSize - * @Default {small} - */ - tileSize?: ej.Tile.TileSize | string; - - /** Customize the tile size width. - * @Default {null} - */ - width?: number; - - /** Sets the rounded corner to tile. - * @Default {false} - */ - showRoundedCorner?: boolean; - - /** Sets allowSelection to tile. - * @Default {false} - */ - allowSelection?: boolean; - - /** Sets the background color to tile. - * @Default {null} - */ - backgroundColor?: string; - - /** Event triggers when the mouseDown happens in the tile */ - mouseDown?(e: MouseDownEventArgs): void; - - /** Event triggers when the mouseUp happens in the tile */ - mouseUp?(e: MouseUpEventArgs): void; - } - - export interface MouseDownEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the tile model - */ - model?: boolean; - - /** returns the name of the event - */ - type?: boolean; - - /** returns the current tile text - */ - text?: string; - - /** returns the index of current tile item - */ - index?: number; - } - - export interface MouseUpEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the tile model - */ - model?: boolean; - - /** returns the name of the event - */ - type?: boolean; - - /** returns the current tile text - */ - text?: boolean; - - /** returns the index of current tile item - */ - index?: number; - } - - export interface Badge { - - /** Specifies whether to enable badge or not. - * @Default {false} - */ - enabled?: boolean; - - /** Specifies maximum value for tile badge. - * @Default {100} - */ - maxValue?: number; - - /** Specifies minimum value for tile badge. - * @Default {1} - */ - minValue?: number; - - /** Specifies text instead of number for tile badge. - * @Default {null} - */ - text?: string; - - /** Sets value for tile badge. - * @Default {1} - */ - value?: number; + /** Destroys the signature widget. + * @returns {void} + */ + destroy(): void; - /** Sets position for tile badge. - * @Default {“bottomright”} - */ - position?: ej.Tile.BadgePosition | string; - } + /** Disables the signature widget. + * @returns {void} + */ + disable(): void; - export interface Caption { + /** Enables the signature widget. + * @returns {void} + */ + enable(): void; - /** Specifies whether the tile text to be shown or hidden. - * @Default {true} - */ - enabled?: boolean; + /** Hides the signature widget. + * @returns {void} + */ + hide(): void; - /** Changes the text of a tile. - * @Default {Text} - */ - text?: string; + /** redo the last drawn stroke of the signature + * @returns {void} + */ + redo(): void; - /** It is used to align the text of a tile. - * @Default {normal} - */ - alignment?: ej.Tile.CaptionAlignment | string; + /** used to save the drawn image. + * @param {string} The file name of the signature to be downloaded. + * @returns {void} + */ + save(Filename: string): void; - /** It is used to specify the caption position like Inner top, inner bottom and outer. - * @Default {Innerbottom} - */ - position?: ej.Tile.CaptionPosition | string; + /** Used to Show the signature widget, if it is already hided. + * @returns {void} + */ + show(): void; - /** sets the icon instead of text. - * @Default {null} - */ - icon?: string; - } + /** undo the last drawn stroke of the signature. + * @returns {void} + */ + undo(): void; + } + export namespace Signature { - export interface LiveTile { + export interface Model { - /** Specifies whether to enable liveTile or not. - * @Default {false} - */ - enabled?: boolean; + /** This property is used to set the background color for the signature. + * @Default {#ffffff} + */ + backgroundColor?: string; - /** Specifies liveTile images in CSS classes. - * @Default {null} - */ - imageClass?: any[]; + /** This property is used to set the background image for the signature. + */ + backgroundImage?: string; + + /** Enables or disables the Signature textbox widget. + * @Default {true} + */ + enabled?: boolean; + + /** Sets the height of the Signature control. + * @Default {100%} + */ + height?: string; + + /** Enables/disables responsive support for the signature control (i.e) maintain the signature drawing during the window resizing time. + * @Default {false} + */ + isResponsive?: boolean; + + /** Allows the type of the image format to be saved when the signature image is saved. + */ + saveImageFormat?: ej.Signature.SaveImageFormat|string; + + /** Allows the signature image to be saved along with its background. + * @Default {false} + */ + saveWithBackground?: boolean; + + /** Enables or disables rounded corner. + * @Default {true} + */ + showRoundedCorner?: boolean; + + /** Sets the stroke color for the stroke of the signature. + * @Default {#000000} + */ + strokeColor?: string; + + /** Sets the stroke width for the stroke of the signature. + * @Default {2} + */ + strokeWidth?: number; + + /** Sets the width of the Signature control. + * @Default {100%} + */ + width?: string; + + /** Triggers when the stroke is changed. + */ + change?(e: ChangeEventArgs): void; + + /** Triggered when the pointer is clicked or touched in the signature canvas. + */ + mouseDown?(e: MouseDownEventArgs): void; + + /** Triggered when the pointer is moved in the signature canvas. + */ + mouseMove?(e: MouseMoveEventArgs): void; + + /** Triggered when the pointer is released after click or touch in the signature canvas. + */ + mouseUp?(e: MouseUpEventArgs): void; + } + + export interface ChangeEventArgs { + + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Instance of the signature model object. + */ + model?: ej.Signature.Model; + + /** Name of the event. + */ + type?: string; + + /** Gives the last stored image + */ + lastImage?: string; + } + + export interface MouseDownEventArgs { + + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Instance of the signature model object. + */ + model?: ej.Signature.Model; + + /** Name of the event. + */ + type?: string; + + /** returns all the event values + */ + value?: any; + } + + export interface MouseMoveEventArgs { + + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Instance of the signature model object. + */ + model?: ej.Signature.Model; + + /** Name of the event. + */ + type?: string; + + /** returns all the event values + */ + value?: any; + } + + export interface MouseUpEventArgs { + + /** Set this option to true to cancel the event. + */ + cancel?: boolean; + + /** Instance of the signature model object. + */ + model?: ej.Signature.Model; + + /** Name of the event. + */ + type?: string; + + /** returns all the event values + */ + value?: any; + } + + enum SaveImageFormat { + + ///To save the signature image with PNG format only. + PNG, + + ///To save the signature image with JPG format only. + JPG, + + ///To save the signature image with BMP format only. + BMP, + + ///To save the signature image with TIFF format only. + TIFF + } + + } + + class RadialSlider extends ej.Widget { + static fn: RadialSlider; + constructor(element: JQuery | Element, options?: RadialSlider.Model); + static Locale: any; + model: RadialSlider.Model; + defaults: RadialSlider.Model; + + /** To show the radialslider + * @returns {void} + */ + show(): void; + + /** To hide the radialslider + * @returns {void} + */ + hide(): void; + } + export namespace RadialSlider { + + export interface Model { + + /** To show the RadialSlider in initial render. + * @Default {false} + */ + autoOpen?: boolean; + + /** Sets the root class for RadialSlider theme. This cssClass API helps to use custom skinning option for RadialSlider control. By defining the root class using this API, we need to + * include this root class in CSS. + */ + cssClass?: string; + + /** To enable Animation for Radial Slider. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Enable/Disable the Roundoff property of RadialSlider + * @Default {true} + */ + enableRoundOff?: boolean; + + /** Specifies the endAngle value for radial slider circle. + * @Default {360} + */ + endAngle?: number; + + /** Specifies the inline for label show or not on given radius. + * @Default {false} + */ + inline?: boolean; + + /** Specifies innerCircleImageClass, using this property we can give images for center radial circle through CSS classes. + * @Default {null} + */ + innerCircleImageClass?: string; + + /** Specifies the file name of center circle icon + * @Default {null} + */ + innerCircleImageUrl?: string; + + /** Specifies the Space between the radial slider element and the label. + * @Default {30} + */ + labelSpace?: number; + + /** Specifies the radius of radial slider + * @Default {200} + */ + radius?: number; + + /** To show the RadialSlider inner circle. + * @Default {true} + */ + showInnerCircle?: boolean; + + /** Specifies the endAngle value for radial slider circle. + * @Default {0} + */ + startAngle?: number; + + /** Specifies the strokeWidth for customize the needle, outer circle and inner circle. + * @Default {2} + */ + strokeWidth?: number; + + /** Specifies the ticks value of radial slider + */ + ticks?: any[]; + + /** Specifies the value of radial slider + * @Default {10} + */ + value?: number; + + /** Event triggers when the change occurs. + */ + change?(e: ChangeEventArgs): void; + + /** Event triggers when the radial slider is created. + */ + create?(e: CreateEventArgs): void; + + /** Event triggers when the mouse pointer is dragged over the radial slider. + */ + mouseover?(e: MouseoverEventArgs): void; + + /** Event triggers when the Radial slider slides. + */ + slide?(e: SlideEventArgs): void; + + /** Event triggers when the radial slider starts. + */ + start?(e: StartEventArgs): void; + + /** Event triggers when the radial slider stops. + */ + stop?(e: StopEventArgs): void; + } + + export interface ChangeEventArgs { + + /** returns the Radialslider model + */ + model?: any; + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the initial value of Radial slider + */ + oldValue?: number; + + /** returns the name of the event + */ + type?: string; + + /** returns the current value of the Radial slider + */ + value?: number; + } + + export interface CreateEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Radialslider model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface MouseoverEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Radialslider model + */ + model?: any; + + /** returns the value selected + */ + selectedValue?: number; + + /** returns the name of the event + */ + type?: string; + + /** returns the current value selected in Radial slider + */ + value?: number; + } + + export interface SlideEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Radialslider model + */ + model?: any; + + /** returns the value selected in Radial slider + */ + selectedValue?: number; + + /** returns the name of the event + */ + type?: string; + + /** returns the currently selected value + */ + value?: number; + } + + export interface StartEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Radialslider model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the current value selected in Radial slider + */ + value?: number; + } + + export interface StopEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the Radialslider model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** returns the current value selected in Radial slider + */ + value?: number; + } + } + + class Spreadsheet extends ej.Widget { + static fn: Spreadsheet; + constructor(element: JQuery | Element, options?: Spreadsheet.Model); + static Locale: any; + model: Spreadsheet.Model; + defaults: Spreadsheet.Model; + + /** This method is used to add custom formulas in Spreadsheet. + * @param {string} Pass the name of the formula. + * @param {string} Pass the name of the function. + * @returns {void} + */ + addCustomFormula(formulaName: string, functionName: string): void; + + /** This method is used to add a new sheet in the last position of the sheet container. + * @returns {void} + */ + addNewSheet(): void; + + /** It is used to clear all the data and format in the specified range of cells in Spreadsheet. + * @param {string|any[]} Optional. If range is specified, then it will clear all content in the specified range else it will use the current selected range. + * @returns {void} + */ + clearAll(range?: string|any[]): void; + + /** This property is used to clear all the formats applied in the specified range in Spreadsheet. + * @param {string|any[]} Optional. If range is specified, then it will clear all format in the specified range else it will use the current selected range. + * @returns {void} + */ + clearAllFormat(range?: string|any[]): void; + + /** Used to clear the applied border in the specified range in Spreadsheet. + * @param {string|any[]} Optional. If range is specified, then it will clear border in the specified range else it will use the current selected range. + * @returns {void} + */ + clearBorder(range?: string|any[]): void; + + /** This property is used to clear the contents in the specified range in Spreadsheet. + * @param {string|any[]} Optional. If the range is specified, then it will clear the content in the specified range else it will use the current selected range. + * @returns {void} + */ + clearContents(range?: string|any[]): void; + + /** This method is used to remove only the data in the range denoted by the specified range name. + * @param {string} Pass the defined rangeSettings property name. + * @returns {void} + */ + clearRange(rangeName: string): void; + + /** It is used to remove data in the specified range of cells based on the defined property. + * @param {any[]|string} Optional. If range is specified, it will clear data for the specified range else it will use the current selected range. + * @param {string} Optional. If property is specified, it will remove the specified property in the range else it will remove default properties + * @param {any} Optional. + * @param {boolean} Optional. pass {{'`true`' | markdownify}}, if you want to skip the hidden rows + * @param {any} Optional. Pass the status to perform undo and redo operation. + * @param {any} Optional. It specifies whether to skip element processing or not. + * @returns {void} + */ + clearRangeData(range?: any[]|string, property?: string, cells?: any, skipHiddenRow?: boolean, status?: any, skipCell?: any): void; + + /** This method is used to clear undo and redo collections in the Spreadsheet. + * @returns {void} + */ + clearUndoRedo(): void; + + /** This method is used to copy or move the sheets in Spreadsheet. + * @param {number} Pass the sheet index that you want to copy or move. + * @param {number} Pass the position index where you want to copy or move. + * @param {boolean} Pass {{'`true`' | markdownify}},If you want to copy sheet or else it will move sheet. + * @returns {void} + */ + copySheet(fromIdx: number, toIdx: number, isCopySheet: boolean): void; + + /** This method is used to delete the entire column which is selected. + * @param {number} Pass the start column index. + * @param {number} Pass the end column index. + * @returns {void} + */ + deleteEntireColumn(startCol: number, endCol: number): void; + + /** This method is used to delete the entire row which is selected. + * @param {number} Pass the start row index. + * @param {number} Pass the end row index. + * @returns {void} + */ + deleteEntireRow(startRow: number, endRow: number): void; + + /** This method is used to delete a particular sheet in the Spreadsheet. + * @param {number} Pass the sheet index to perform delete action. + * @returns {void} + */ + deleteSheet(idx: number): void; + + /** This method is used to delete the selected cells and shift the remaining cells to left. + * @param {any} Row index and column index of the starting cell. + * @param {any} Row index and column index of the ending cell. + * @returns {void} + */ + deleteShiftLeft(startCell: any, endCell: any): void; + + /** This method is used to delete the selected cells and shift the remaining cells up. + * @param {any} Row index and column index of the start cell. + * @param {any} Row index and column index of the end cell. + * @returns {void} + */ + deleteShiftUp(startCell: any, endCell: any): void; + + /** This method is used to edit data in the specified range of cells based on its corresponding rangeSettings. + * @param {string} Pass the defined rangeSettings property name. + * @param {() => void} Pass the function that you want to perform range edit. + * @returns {void} + */ + editRange(rangeName: string, fn: () => void): void; + + /** This method is used to get the activation panel in the Spreadsheet. + * @returns {HTMLElement} + */ + getActivationPanel(): HTMLElement; + + /** This method is used to get the active cell object in Spreadsheet. It will returns object which contains rowIndex and colIndex of the active cell. + * @param {number} Optional. If sheetIdx is specified, it will return the active cell object in specified sheet index else it will use the current sheet index + * @returns {any} + */ + getActiveCell(sheetIdx?: number): any; + + /** This method is used to get the active cell element based on the given sheet index in the Spreadsheet. + * @param {number} Optional. If sheetIndex is specified, it will return the active cell element in specified sheet index else it will use the current active sheet index. + * @returns {HTMLElement} + */ + getActiveCellElem(sheetIdx?: number): HTMLElement; + + /** This method is used to get the current active sheet index in Spreadsheet. + * @returns {number} + */ + getActiveSheetIndex(): number; + + /** This method is used to get the auto fill element in Spreadsheet. + * @returns {HTMLElement} + */ + getAutoFillElem(): HTMLElement; + + /** This method is used to get the cell element based on specified row and column index in the Spreadsheet. + * @param {number} Pass the row index. + * @param {number} Pass the column index. + * @param {number} Optional. Pass the sheet index that you want to get cell. + * @returns {HTMLElement} + */ + getCell(rowIdx: number, colIdx: number, sheetIdx?: number): HTMLElement; + + /** This method is used to get the data settings in the Spreadsheet. + * @param {number} Pass the sheet index. + * @returns {number} + */ + getDataSettings(sheetIdx: number): number; + + /** This method is used to get the frozen columns index in the Spreadsheet. + * @param {number} Pass the sheet index. + * @returns {number} + */ + getFrozenColumns(sheetIdx: number): number; + + /** This method is used to get the frozen row index in Spreadsheet. + * @param {number} Pass the sheet index. + * @returns {number} + */ + getFrozenRows(sheetIdx: number): number; + + /** This method is used to get the hyperlink data as object from the specified cell in Spreadsheet. + * @param {HTMLElement} Pass the DOM element to get hyperlink + * @returns {any} + */ + getHyperlink(cell: HTMLElement): any; + + /** This method is used to get all cell elements in the specified range. + * @param {string} Pass the range that you want to get the cells. + * @param {number} Pass the index of the sheet. + * @param {boolean} Optional. Pass {{'`true`' | markdownify}}, if you want to skip the hidden rows. + * @returns {HTMLElement} + */ + getRange(range: string, sheetIdx: number, skipHiddenRow?: boolean): HTMLElement; + + /** This method is used to get the data in specified range in Spreadsheet. + * @param {any} Optional. Pass the range, property, sheetIdx, valueOnly in options. + * @returns {any[]} + */ + getRangeData(options?: any): any[]; + + /** This method is used to get the range indices array based on the specified alpha range in Spreadsheet. + * @param {string} Pass the alpha range that you want to get range indices. + * @returns {any[]} + */ + getRangeIndices(range: string): any[]; + + /** This method is used to get the sheet details based on the given sheet index in Spreadsheet. + * @param {number} Pass the sheet index to get the sheet object. + * @returns {any} + */ + getSheet(sheetIdx: number): any; + + /** This method is used to get the sheet content div element of Spreadsheet. + * @param {number} Pass the sheet index to get the sheet content. + * @returns {HTMLElement} + */ + getSheetElement(sheetIdx: number): HTMLElement; + + /** This method is used to get all the sheets in workbook. + * @returns {any[]} + */ + getSheets(): any[]; + + /** This method is used to send a paging request to the specified sheet Index in the Spreadsheet. + * @param {number} Pass the sheet index to perform paging at specified sheet index + * @param {boolean} Pass {{'`true`' | markdownify}} to create a new sheet. If the specified sheet index is already exist, it navigate to that sheet else it create a new sheet. + * @returns {void} + */ + gotoPage(sheetIdx: number, newSheet: boolean): void; + + /** This method is used to hide the pivot table activationPanel in the Spreadsheet. + * @returns {void} + */ + hideActivationPanel(): void; + + /** This method is used to hide the entire columns from the specified range (startCol, endCol) in Spreadsheet. + * @param {number} Index of the start column. + * @param {number} Optional. Index of the end column. + * @returns {void} + */ + hideColumn(startCol: number, endCol: number): void; + + /** This method is used to hide the formula bar in Spreadsheet. + * @returns {void} + */ + hideFormulaBar(): void; + + /** This method is used to hide the rows, based on the specified row index in Spreadsheet. + * @param {number} Index of the start row. + * @param {number} Optional. Index of the end row. + * @returns {void} + */ + hideRow(startRow: number, endRow: number): void; + + /** This method is used to hide the sheet based on the specified sheetIndex or sheet name in the Spreadsheet. + * @param {string|number} Pass the sheet name or index that you want to hide. + * @returns {void} + */ + hideSheet(sheetIdx: string|number): void; + + /** This method is used to hide the displayed waiting pop-up in Spreadsheet. + * @returns {void} + */ + hideWaitingPopUp(): void; + + /** This method is used to insert a column before the active cell's column in the Spreadsheet. + * @param {number} Pass start column. + * @param {number} Pass end column. + * @returns {void} + */ + insertEntireColumn(startCol: number, endCol: number): void; + + /** This method is used to insert a row before the active cell's row in the Spreadsheet. + * @param {number} Pass start row. + * @param {number} Pass end row. + * @returns {void} + */ + insertEntireRow(startRow: number, endRow: number): void; + + /** This method is used to insert a new sheet to the left of the current active sheet. + * @returns {void} + */ + insertSheet(): void; + + /** This method is used to insert cells in the selected or specified range and shift remaining cells to bottom. + * @param {any} Row index and column index of the start cell. + * @param {any} Row index and column index of the end cell. + * @returns {void} + */ + insertShiftBottom(startCell: any, endCell: any): void; + + /** This method is used to insert cells in the selected or specified range and shift remaining cells to right. + * @param {any} Row index and column index of the start cell. + * @param {any} Row index and column index of the end cell. + * @returns {void} + */ + insertShiftRight(startCell: any, endCell: any): void; + + /** This method is used to import excel file manually by using form data. + * @param {any} Pass the form data object to import files manually. + * @returns {void} + */ + import(importRequest: any): void; + + /** This method is used to load JSON data in Spreadsheet. + * @param {any} Pass the response that you want to load. + * @returns {void} + */ + loadFromJSON(response: any): void; + + /** This method is used to lock/unlock the range of cells in active sheet. Lock cells are activated only after the sheet is protected. Once the sheet is protected it is unable to + * lock/unlock cells. + * @param {string|any[]} Pass the alpha range cells or array range of cells. + * @param {string} Optional. By default is {{'`true`' | markdownify}}. If it is {{'`false`' | markdownify}} locked cells are unlocked. + * @returns {void} + */ + lockCells(range: string|any[], isLocked?: string): void; + + /** This method is used to merge cells by across in the Spreadsheet. + * @param {string} Optional. To pass the cell range or selected cells are process. + * @param {boolean} Optional. If pass {{'`true`' | markdownify}} it does not show alert. + * @returns {void} + */ + mergeAcrossCells(range?: string, alertStatus?: boolean): void; + + /** This method is used to merge the selected cells in the Spreadsheet. + * @param {string|any[]} Optional. To pass the cell range or selected cells are process. + * @param {boolean} Optional. If pass {{'`true`' | markdownify}} it does not show alert. + * @returns {void} + */ + mergeCells(range?: string|any[], alertStatus?: boolean): void; + + /** This method is used to select a cell or range in the Spreadsheet. + * @param {any} Pass the start cell to perform selection. + * @param {any} Pass the end cell to perform selection. + * @returns {void} + */ + performSelection(startCell: any, endCell: any): void; + + /** This method is used to protect or unprotect active sheet. + * @param {boolean} Optional. By default is {{'`true`' | markdownify}}. If it is {{'`false`' | markdownify}} active sheet is unprotected. + * @returns {void} + */ + protectSheet(isProtected?: boolean): void; + + /** This method is used to refresh the content in Spreadsheet. + * @param {number} Pass the index of the sheet. + * @returns {void} + */ + refreshContent(sheetIdx: number): void; + + /** This method is used to refresh the Spreadsheet. + * @returns {void} + */ + refreshSpreadsheet(): void; + + /** This method is used to remove custom formulae in Spreadsheet. + * @param {string} Pass the name of the formula. + * @param {string} Pass the name of the function. + * @returns {void} + */ + removeCustomFormula(formulaName: string, functionName: string): void; + + /** This method is used to remove the hyperlink from selected cells of current sheet. + * @param {string} Hyperlink remove from the specified range. + * @param {boolean} Optional. If it is {{'`true`' | markdownify}}, It will clear link only not format. + * @param {boolean} Optional. Pass the status to perform undo and redo operations. + * @param {any} Optional. Pass the cells that you want to remove hyperlink. + * @param {boolean} Optional. Pass {{'`true`' | markdownify}}, if you want to skip the hidden rows. + * @returns {void} + */ + removeHyperlink(range: string, isClearHLink?: boolean, status?: boolean, cells?: any, skipHiddenRow?: boolean): void; + + /** This method is used to remove the range data and its defined rangeSettings property based on the specified range name. + * @param {string} Pass the defined rangeSetting property name. + * @returns {void} + */ + removeRange(rangeName: string): void; + + /** This method is used to remove the readonly option for the specified range. + * @param {string|any[]} Pass the range. + * @returns {void} + */ + removeReadOnly(range?: string|any[]): void; + + /** This method is used to save JSON data in Spreadsheet. + * @returns {any} + */ + saveAsJSON(): any; + + /** This method is used to save batch changes in Spreadsheet. + * @param {number} Pass the sheet index for Spreadsheet. + * @returns {void} + */ + saveBatchChanges(sheetIdx: number): void; + + /** This method is used to set the active cell in the Spreadsheet. + * @param {number} Pass the row index. + * @param {number} Pass the column index. + * @param {number} Pass the index of the sheet. + * @returns {void} + */ + setActiveCell(rowIdx: number, colIdx: number, sheetIdx: number): void; + + /** This method is used to set active sheet index for the Spreadsheet. + * @param {number} Pass the active sheet index for Spreadsheet. + * @returns {void} + */ + setActiveSheetIndex(sheetIdx: number): void; + + /** This method is used to set border for the specified range of cells in the Spreadsheet. + * @param {any} Pass the border properties that you want to set. + * @param {string} Optional. If range is specified, it will set border for the specified range else it will use the selected range. + * @returns {void} + */ + setBorder(property: any, range?: string): void; + + /** This method is used to set the height for the rows in the Spreadsheet. + * @param {any[]|any} Pass the row index and height of the rows. + * @returns {void} + */ + setHeightToRows(heightColl: any[]|any): void; + + /** This method is used to set the hyperlink in selected cells of the current sheet. + * @param {string|any[]} If range is specified, it will set the hyperlink in range of the cells. + * @param {any} Pass cellAddress or webAddress + * @param {number} If we pass cellAddress then which sheet to be navigate in the applied link. + * @returns {void} + */ + setHyperlink(range: string|any[], link: any, sheetIdx: number): void; + + /** This method is used to set the readonly option for the specified range. + * @param {string|any[]} Pass the range. + * @returns {void} + */ + setReadOnly(range?: string|any[]): void; + + /** This method is used to set the focus to the Spreadsheet. + * @returns {void} + */ + setSheetFocus(): void; + + /** This method is used to set the width for the columns in the Spreadsheet. + * @param {any[]|any} Pass the column index and width of the columns. + * @returns {void} + */ + setWidthToColumns(widthColl: any[]|any): void; + + /** This method is used to rename the active sheet. + * @param {string} Pass the sheet name that you want to change the current active sheet name. + * @returns {void} + */ + sheetRename(sheetName: string): void; + + /** This method is used to display the activationPanel for the specified range name. + * @param {string} Pass the range name that you want to display the activation panel. + * @returns {void} + */ + showActivationPanel(rangeName: string): void; + + /** This method is used to show the hidden columns within the specified range in the Spreadsheet. + * @param {number} Index of the start column. + * @param {number} Optional. Index of the end column. + * @returns {void} + */ + showColumn(startColIdx: number, endColIdx: number): void; + + /** This method is used to show the formula bar in Spreadsheet. + * @returns {void} + */ + showFormulaBar(): void; + + /** This method is used to show/hide gridlines in active sheet in the Spreadsheet. + * @param {boolean} Pass {{'`true`' | markdownify}} to show the gridlines + * @returns {void} + */ + showGridlines(status: boolean): void; + + /** This method is used to show/hide the headers in active sheet in the Spreadsheet. + * @param {boolean} Pass {{'`true`' | markdownify}} to show the sheet headers. + * @returns {void} + */ + showHeadings(startRow: boolean): void; + + /** This method is used to show/hide pager in the Spreadsheet. + * @param {boolean} Pass {{'`true`' | markdownify}} to show pager. + * @returns {void} + */ + showPager(status: boolean): void; + + /** This method is used to show the hidden rows in the specified range in the Spreadsheet. + * @param {number} Index of the start row. + * @param {number} Optional. Index of the end row. + * @returns {void} + */ + showRow(startRow: number, endRow: number): void; + + /** This method is used to show waiting pop-up in Spreadsheet. + * @returns {void} + */ + showWaitingPopUp(): void; + + /** This method is used to unhide the sheet based on specified sheet name or sheet index. + * @param {string|number} Pass the sheet name or index that you want to unhide. + * @returns {void} + */ + unhideSheet(sheetInfo: string|number): void; + + /** This method is used to unmerge the selected range of cells in the Spreadsheet. + * @param {string} Optional. If the range is specified, then it will un merge the specified range else it will use the current selected range. + * @returns {void} + */ + unmergeCells(range?: string): void; + + /** This method is used to unwrap the selected range of cells in the Spreadsheet. + * @param {any[]|string} Optional. If the range is specified, then it will update unwrap in the specified range else it will use the current selected range. + * @returns {void} + */ + unWrapText(range?: any[]|string): void; + + /** This method is used to update the data for the specified range of cells in the Spreadsheet. + * @param {any} Pass the cells data that you want to update. + * @param {any[]|string} Optional. If range is specified, it will update data for the specified range else it will use the current selected range. + * @returns {void} + */ + updateData(data: any, range?: any[]|string): void; + + /** This method is used to update the formula bar in the Spreadsheet. + * @returns {void} + */ + updateFormulaBar(): void; + + /** This method is used to update the range of cells based on the specified settings which we want to update in the Spreadsheet. + * @param {number} Pass the sheet index that you want to update. + * @param {any} Pass the dataSource, startCell and showHeader values as settings. + * @returns {void} + */ + updateRange(sheetIdx: number, settings: any): void; + + /** This method is used to update the details for custom undo and redo operations. + * @param {any} Pass the details to update undo and redo collection + * @returns {void} + */ + updateUndoRedoCollection(details: any): void; + + /** This method is used to update the unique data for the specified range of cells in Spreadsheet. + * @param {any} Pass the data that you want to update in the particular range + * @param {any[]|string} Optional. If range is specified, it will update data for the specified range else it will use the current selected range. + * @param {any} Optional. It specifies whether to skip element processing or not. + * @returns {void} + */ + updateUniqueData(data: any, range?: any[]|string, skipCell?: any): void; + + /** This method is used to wrap the selected range of cells in the Spreadsheet. + * @param {any[]|string} Optional. If the range is specified, then it will update wrap in the specified range else it will use the current selected range. + * @returns {void} + */ + wrapText(range?: any[]|string): void; + + XLCellType: Spreadsheet.XLCellType; + + XLCFormat: Spreadsheet.XLCFormat; + + XLChart: Spreadsheet.XLChart; + + XLClipboard: Spreadsheet.XLClipboard; + + XLComment: Spreadsheet.XLComment; + + XLCMenu: Spreadsheet.XLCMenu; + + XLDragDrop: Spreadsheet.XLDragDrop; + + XLDragFill: Spreadsheet.XLDragFill; + + XLEdit: Spreadsheet.XLEdit; + + XLExport: Spreadsheet.XLExport; + + /** This method is used to get the export properties in the Spreadsheet. + * @returns {any} + */ + getExportProps(): any; + + XLFilter: Spreadsheet.XLFilter; + + XLFormat: Spreadsheet.XLFormat; + + XLFreeze: Spreadsheet.XLFreeze; + + /** This method is used to unfreeze the frozen rows and columns in the Spreadsheet. + * @returns {void} + */ + unfreezePanes(): void; + + XLPivot: Spreadsheet.XLPivot; + + XLPrint: Spreadsheet.XLPrint; + + XLResize: Spreadsheet.XLResize; + + XLRibbon: Spreadsheet.XLRibbon; + + XLSearch: Spreadsheet.XLSearch; + + XLSelection: Spreadsheet.XLSelection; + + XLShape: Spreadsheet.XLShape; + + XLSort: Spreadsheet.XLSort; + + XLValidate: Spreadsheet.XLValidate; + } + export namespace Spreadsheet { + + export interface XLCellType { + + /** This method is used to set a cell type from the specified range of cells in the spreadsheet. + * @param {string} Pass the range where you want apply cell type. + * @param {any} Pass type of cell type and its settings. + * @param {number} Optional. Pass sheet index. + * @returns {void} + */ + addCellTypes(range: string, settings: any, sheetIdx: number): void; + + /** This method is used to remove cell type from the specified range of cells in the Spreadsheet. + * @param {string|any[]} Pass the range where you want remove cell type. + * @param {number} Optional. Pass sheet index. + * @returns {void} + */ + removeCellTypes(range: string|any[], sheetIdx: number): void; + } + + export interface XLCFormat { + + /** This method is used to clear the applied conditional formatting rules in the Spreadsheet. + * @param {any[]|string} Optional. If range is specified, it will clear rules for the specified range else it will use the current selected range. + * @returns {void} + */ + clearCF(range: any[]|string): void; + + /** This method is used to get the applied conditional formatting rules as array of objects based on the specified row Index and column Index in the Spreadsheet. + * @param {number} Pass the row index. + * @param {number} Pass the column index. + * @returns {any[]} + */ + getCFRule(rowIdx: number, colIdx: number): any[]; + + /** This method is used to set the conditional formatting rule in the Spreadsheet. + * @param {any} Pass the rule to set. + * @returns {void} + */ + setCFRule(rule: any): void; + } + + export interface XLChart { + + /** This method is used to change the theme of the chart in the Spreadsheet. + * @param {string} Pass the chart id. + * @param {ej.datavisualization.Chart.Theme} Pass the chart theme which want to update. + * @returns {void} + */ + changeTheme(chartId: string, theme: ej.datavisualization.Chart.Theme): void; + + /** This method is used to change the type of the chart in the Spreadsheet. + * @param {string} Pass the chart id. + * @param {any} Pass the chart type. + * @returns {void} + */ + changeType(chartId: string, option: any): void; + + /** This method is used to change the data range of the chart in the Spreadsheet. + * @param {string} Pass the chart id. + * @param {string} X axis range of chart data. + * @param {string} Y axis range of chart data. + * @param {string} Legend range of chart data. + * @returns {void} + */ + changeDataRange(chartId: string, xRange: string, yRange: string, lRange: string): void; + + /** This method is used to create a chart for specified range in Spreadsheet. + * @param {string|any[]} Optional. If range is specified, it will create chart for the specified range else it will use the current selected range. + * @param {any} Optional. To pass the type of chart and chart name. + * @returns {void} + */ + createChart(range: string|any[], options: any): void; + + /** This method is used to refresh the chart in the Spreadsheet. + * @param {string} To pass the chart Id. + * @param {any} To pass the type of chart and chart name. + * @returns {void} + */ + refreshChart(id: string, options: any): void; + + /** This method is used to resize the chart of specified id in the Spreadsheet. + * @param {string} To pass the chart id. + * @param {number} To pass height value. + * @param {number} To pass the width value. + * @returns {void} + */ + resizeChart(id: string, height: number, width: number): void; + + /** This method is used to update the chart element, such as axes, titles, data labels, grid lines and legends in the Spreadsheet. + * @param {string} Pass the chart id. + * @param {ej.Spreadsheet.ChartProperties} Pass chart element value which you want to update. + * @returns {void} + */ + updateChartElement(chartId: string, value: ej.Spreadsheet.ChartProperties): void; + + /** This method is used switch row to columns and vice versa for chart in the Spreadsheet. So that the data is displayed in the chart the way you want. + * @param {string} Pass the chart id. + * @returns {void} + */ + switchRowColumn(chartId: string): void; + } + + export interface XLClipboard { + + /** This method is used to copy the selected cells in the Spreadsheet. + * @returns {void} + */ + copy(): void; + + /** This method is used to cut the selected cells in the Spreadsheet. + * @returns {void} + */ + cut(): void; + + /** This method is used to paste the cut or copied cells data in the Spreadsheet. + * @returns {void} + */ + paste(): void; + } + + export interface XLComment { + + /** This method is used to delete the comment in the specified range in Spreadsheet. + * @param {any[]|string} Optional. If range is specified, it will delete comments for the specified range else it will use the current selected range. + * @param {number} Optional. If sheetIdx is specified, it will delete comment in specified sheet else it will use active sheet. + * @param {boolean} Optional. Pass {{'`true`' | markdownify}}, if you want to skip the hidden rows data. + * @returns {void} + */ + deleteComment(range: any[]|string, sheetIdx: number, skipHiddenRow: boolean): void; + + /** This method is used to edit the comment in the target Cell in Spreadsheet. + * @param {any} Optional. Pass the row index and column index of the cell which contains comment. + * @returns {void} + */ + editComment(targetCell: any): void; + + /** This method is used to find the next comment from the active cell in Spreadsheet. + * @returns {boolean} + */ + findNextComment(): boolean; + + /** This method is used to find the previous comment from the active cell in Spreadsheet. + * @returns {boolean} + */ + findPrevComment(): boolean; + + /** This method is used to get comment data for the specified cell. + * @param {HTMLElement} Pass the DOM element to get comment data as object. + * @returns {any} + */ + getComment(cell: HTMLElement): any; + + /** This method is used to set new comment in Spreadsheet. + * @param {string|any[]} Optional. If we pass the range comment will set in the range otherwise it will set with selected cells. + * @param {string} Optional. Pass the comment data. + * @param {boolean} Optional. Pass {{'`true`' | markdownify}} to show comment in edit mode + * @param {boolean} Optional. Pass {{'`true`' | markdownify}} to show the user name + * @returns {void} + */ + setComment(range: string|any[], data: string, showEditPanel: boolean, showUserName: boolean): void; + + /** This method is used to show all the comments in the Spreadsheet. + * @returns {void} + */ + showAllComments(): void; + + /** This method is used to show or hide the specific comment in the Spreadsheet. + * @param {HTMLElement} Optional. Pass the cell DOM element to show or hide its comment. If pass empty argument active cell will processed. + * @returns {void} + */ + showHideComment(targetCell: HTMLElement): void; + } + + export interface XLCMenu { + + /** This method is used to dynamically add items in the context menu. + * @param {string} Specifies the context menu type in which the item to be inserted. + * @param {any[]} Pass the items to be inserted + * @param {string} Specifies the type of operation to be performed + * @returns {void} + */ + addItem(target: string, itemColl: any[], operation: string): void; + + /** This method is used to change data source in the context menu. + * @param {string} Specifies the context menu type to bind the data source. + * @param {any[]} Pass the data source to be binded + * @returns {void} + */ + changeDataSource(target: string, data: any[]): void; + + /** This method is used to disable the items in the context menu. + * @param {string} Specifies the context menu type in which the item to be disabled. + * @param {any[]} Specifies the Menu Item id collection to be disabled + * @returns {void} + */ + disableItem(target: string, idxColl: any[]): void; + + /** This method is used to enable the items in the context menu. + * @param {string} Specifies the context menu type in which the item to be enabled. + * @param {any[]} Specifies the Menu Item id collection to be enabled + * @returns {void} + */ + enableItem(target: string, idxColl: any[]): void; + + /** This method is used to remove the items in the context menu. + * @param {string} Specifies the context menu type in which the item to be removed. + * @param {any[]} Specifies the Menu Item id collection to be removed + * @returns {void} + */ + removeItem(target: string, idxColl: any[]): void; + } + + export interface XLDragDrop { + + /** This method is used to drag and drop the selected range of cells to destination range in the Spreadsheet. + * @param {any|any[]} Pass the source range to perform drag and drop. + * @param {any|any[]} Pass the destination range to drop the dragged cells. + * @returns {void} + */ + moveRangeTo(sourceRange: any|any[], destinationRange: any|any[]): void; + } + + export interface XLDragFill { + + /** This method is used to perform auto fill in Spreadsheet. + * @param {any} Pass the options to perform auto fill in Spreadsheet. + * @returns {void} + */ + autoFill(options: any): void; + + /** This method is used to hide the auto fill element in the Spreadsheet. + * @returns {void} + */ + hideAutoFillElement(): void; + + /** This method is used to hide the auto fill options in the Spreadsheet. + * @returns {void} + */ + hideAutoFillOptions(): void; + + /** This method is used to set position of the auto fill element in the Spreadsheet. + * @param {boolean} Pass the isDragFill option as {{'`boolean`' | markdownify}} value to show auto fill options in Spreadsheet. + * @returns {void} + */ + positionAutoFillElement(isDragFill: boolean): void; + } + + export interface XLEdit { + + /** This method is used to calculate formulas in the specified sheet. + * @param {number} Optional. If sheet index is specified, then it will calculate formulas in the specified sheet only else it will calculate formulas in all sheets. + * @returns {void} + */ + calcNow(sheetIdx: number): void; + + /** This method is used to edit a particular cell based on the row index and column index in the Spreadsheet. + * @param {number} Pass the row index to edit particular cell. + * @param {number} Pass the column index to edit particular cell. + * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to maintain previous cell value. + * @returns {void} + */ + editCell(rowIdx: number, colIdx: number, oldData: boolean): void; + + /** This method is used to get the property value of particular cell, based on the row and column index in the Spreadsheet. + * @param {number} Pass the row index to get the property value. + * @param {number} Pass the column index to get the property value. + * @param {string} Optional. Pass the property name that you want("value", "value2", "type", "cFormatRule", "range", "thousandSeparator", "rule", "format", "border", "picture", + * "chart", "calcValue", "align", "hyperlink", "formats", "borders", "tformats", "tborders", "isFilterHeader", "filterState", "tableName", "comment", "formatStr", "decimalPlaces", + * "cellType"). + * @param {number} Optional. Pass the index of the sheet. + * @returns {any|string|any[]} + */ + getPropertyValue(rowIdx: number, colIdx: number, prop: string, sheetIdx: number): any|string|any[]; + + /** This method is used to get the property value in specified cell in Spreadsheet. + * @param {HTMLElement} Pass the cell element to get property value. + * @param {string} Pass the property name that you want ("value", "value2", "type", "cFormatRule", "range", "thousandSeparator", "rule", "format", "border", "picture", "chart", + * "calcValue", "align", "hyperlink", "formats", "borders", "tformats", "tborders", "isFilterHeader", "filterState", "tableName", "comment", "formatStr", "decimalPlaces", + * "cellType"). + * @param {number} Pass the index of sheet. + * @returns {any|string|any[]} + */ + getPropertyValueByElem(elem: HTMLElement, property: string, sheetIdx: number): any|string|any[]; + + /** This method is used to save the edited cell value in the Spreadsheet. + * @returns {void} + */ + saveCell(): void; + + /** This method is used to update a particular cell value in the Spreadsheet. + * @param {any} Pass row index and column index of the cell. + * @param {string|number} Pass the cell value. + * @returns {void} + */ + updateCell(cell: any, value: string|number): void; + + /** This method is used to update a particular cell value and its format in the Spreadsheet. + * @param {any} Pass row index and column index of the cell. + * @param {string|number} Pass the cell value. + * @param {string} Pass the class name to update format. + * @param {number} Pass sheet index. + * @returns {void} + */ + updateCellValue(cellIdx: any, val: string|number, formatClass: string, sheetIdx: number): void; + } + + export interface XLExport { + + /** This method is used to save the sheet data as Excel ,CSV or PDF document (.xls, .xlsx .csv, .pdf) in Spreadsheet. + * @param {string} Pass the export type that you want. + * @returns {void} + */ + export(type: string): void; + + /** This method is used to get the export properties in the Spreadsheet. + * @returns {any} + */ + getExportProps(): any; + } + + export interface XLFilter { + + /** This method is used to clear the filter in filtered columns in the Spreadsheet. + * @returns {void} + */ + clearFilter(): void; + + /** This method is used to apply filter for the selected range of cells in the Spreadsheet. + * @param {string|any[]} Pass the range of the selected cells. + * @returns {void} + */ + filter(range: string|any[]): void; + + /** This method is used to apply filter for the column by active cell's value in the Spreadsheet. + * @returns {void} + */ + filterByActiveCell(): void; + } + + export interface XLFormat { + + /** This method is used to add the font to the Ribbon font family dropdown. + * @param {string} Font name which needs to add into the font family option. + * @returns {void} + */ + addFontFamily(fontName: string): void; + + /** This method is used to convert table range to normal range. + * @param {any} Pass the sheet index and table id. + * @returns {void} + */ + convertToRange(options: any): void; + + /** This method is used to create a table for the selected range of cells in the Spreadsheet. + * @param {any} Pass the table object. + * @param {string|any[]} Optional. If the range is specified, then it will create table in the specified range else it will use the current selected range. + * @returns {string} + */ + createTable(tableObject: any, range: string|any[]): string; + + /** This method is used to set format style and values in a cell or range of cells. + * @param {any} Pass the formatObject which contains style, type, format, groupSeparator and decimalPlaces. + * @param {string} Pass the range to format cells. + * @returns {void} + */ + format(formatObj: any, range: string): void; + + /** This method is used to remove the font from the Ribbon font family dropdown. + * @param {string} Font name which needs to remove from the font family drop down. + * @returns {void} + */ + removeFontFamily(fontName: string): void; + + /** This method is used to remove the style in the specified range. + * @param {any[]|string} Pass the cell range . + * @param {any} Optional. Pass the options for which the style gets removed. + * @returns {void} + */ + removeStyle(range: any[]|string, options: any): void; + + /** This method is used to remove table with specified tableId in the Spreadsheet. + * @param {number} Pass the tableId that you want to remove. + * @returns {void} + */ + removeTable(tableId: number): void; + + /** This method is used to update the decimal places for numeric value for the selected range of cells in the Spreadsheet. + * @param {string} Pass the decimal places type in IncreaseDecimal/DecreaseDecimal. + * @param {string|any[]} Pass the range. + * @returns {void} + */ + updateDecimalPlaces(type: string, range: string|any[]): void; + + /** This method is used to update the format for the selected range of cells in the Spreadsheet. + * @param {any} Pass the format object that you want to update. + * @param {any[]} Optional. If the range is specified, then it will update format in the specified range else it will use the current selected range. + * @returns {void} + */ + updateFormat(formatObj: any, range: any[]): void; + + /** This method is used to update the unique format for selected range of cells in the Spreadsheet. + * @param {string} Pass the unique format class. + * @param {any[]} Optional. If the range is specified, then it will update format in the specified range else it will use the current selected range. + * @returns {void} + */ + updateUniqueFormat(formatClass: string, range: any[]): void; + } + + export interface XLFreeze { + + /** This method is used to freeze columns upto the specified column index in the Spreadsheet. + * @param {number} Index of the column to be freeze. + * @returns {void} + */ + freezeColumns(colIdx: number): void; + + /** This method is used to freeze the first column in the Spreadsheet. + * @returns {void} + */ + freezeLeftColumn(): void; + + /** This method is used to freeze rows and columns before the specified cell in the Spreadsheet. + * @param {number} Index of the row to be freeze. + * @param {number} Index of the column to be freeze. + * @returns {void} + */ + freezePanes(rowIdx: number, colIdx: number): void; + + /** This method is used to freeze rows upto the specified row index in the Spreadsheet. + * @param {number} Index of the row to be freeze. + * @returns {void} + */ + freezeRows(rowIdx: number): void; + + /** This method is used to freeze the top row in the Spreadsheet. + * @returns {void} + */ + freezeTopRow(): void; + + /** This method is used to unfreeze the frozen rows and columns in the Spreadsheet. + * @returns {void} + */ + unfreezePanes(): void; + } + + export interface XLPivot { + + /** This property is used to clear the pivot table list in Spreadsheet. + * @param {string} Pass the name of the pivot table. + * @returns {void} + */ + clearPivotFieldList(pivotName: string): void; + + /** This method is used to create pivot table. + * @param {string} It specifies the range for which the pivot table is created. + * @param {string} It specifies the location in which the pivot table is created. + * @param {string} It specifies the name of the pivot table. + * @param {any} Pass the pivot table settings. + * @param {any} Pass the pivot range, sheet index, address and data source . + * @returns {string} + */ + createPivotTable(range: string, location: string, name: string, settings: any, pvt: any): string; + + /** This method is used to delete the pivot table which is selected. + * @param {string} Pass the name of the pivot table. + * @returns {void} + */ + deletePivotTable(pivotName: string): void; + + /** This method is used to refresh data in pivot table. + * @param {string} Optional. Pass the name of the pivot table. + * @param {number} Optional. Pass the index of the sheet. + * @returns {void} + */ + refreshDataSource(name: string, sheetIdx: number): void; + } + + export interface XLPrint { + + /** This method is used to print the selected contents in the Spreadsheet. + * @returns {void} + */ + printSelection(): void; + + /** This method is used to print the entire contents in the active sheet. + * @returns {void} + */ + printSheet(): void; + } + + export interface XLResize { + + /** This method is used to fit the height of rows in the Spreadsheet. + * @param {any[]} Optional. Pass row index collection that you want to fit its height. + * @returns {void} + */ + fitHeight(rowIndexes: any[]): void; + + /** This method is used to fit the width of columns in the Spreadsheet. + * @param {any[]} Optional. Pass column index collection that you want to fit its width. + * @returns {void} + */ + fitWidth(colIndexes: any[]): void; + + /** This method is used to get the column width of the specified column index in the Spreadsheet. + * @param {number} Pass the column index. + * @returns {number} + */ + getColWidth(colIdx: number): number; + + /** This method is used to get the row height of the specified row index in the Spreadsheet. + * @param {number} Pass the row index which you want to find its height. + * @returns {number} + */ + getRowHeight(rowIdx: number): number; + + /** This method is used to set the column width of the specified column index in the Spreadsheet. + * @param {number} Pass the column index. + * @param {number} Pass the width value that you want to set. + * @returns {void} + */ + setColWidth(colIdx: number, size: number): void; + + /** This method is used to set the row height of the specified row index in the Spreadsheet. + * @param {number} Pass the row index. + * @param {number} Pass the height value that you want to set. + * @returns {void} + */ + setRowHeight(rowIdx: number, size: number): void; + } + + export interface XLRibbon { + + /** This method is used to add a new item in the backstage. + * @param {any} Specifies the item to be added in the backstage. + * @param {number} pass the index of the item to be added in the backstage. + * @returns {void} + */ + addBackStageItem(pageItem: any, index: number): void; + + /** This method is used to dynamically add the contextual tabs in the ribbon. + * @param {any} Specifies the contextual tab set object. + * @param {number} pass the index of the contextual tab. + * @returns {void} + */ + addContextualTabs(contextualTabSet: any, index: number): void; + + /** This method is used to dynamically add the menu item in the file menu. + * @param {any[]} Specifies the item to be added + * @param {number} pass the index of the menu item. + * @returns {void} + */ + addMenuItem(item: any[], index: number): void; + + /** This method is used to add a new name in the Spreadsheet name manager. + * @param {string} Pass the name that you want to define in name manager. + * @param {string} Pass the cell reference. + * @param {string} Optional. Pass comment, if you want. + * @param {number} Optional. Pass the sheet index. + * @returns {void} + */ + addNamedRange(name: string, refersTo: string, comment: string, sheetIdx: number): void; + + /** This method is used to dynamically add the tab in the ribbon. + * @param {any[]} Specifies the text to be displayed in the tab. + * @param {number} pass the groups to be displayed in the ribbon tab. + * @param {number} pass the index of the tab. + * @returns {void} + */ + addTab(tabText: any[], ribbonGroups: number, index: number): void; + + /** This method is used to dynamically add the tab group in the ribbon. + * @param {number} Specifies the ribbon tab index. + * @param {any} pass the groups to be displayed in the ribbon tab. + * @param {number} pass the index of the ribbon group. + * @returns {void} + */ + addTabGroup(tabIndex: number, tabGroup: any, groupIndex: number): void; + + /** This method is used to insert the few type (SUM, MAX, MIN, AVG, COUNT) of formulas in the selected range of cells in the Spreadsheet. + * @param {string} To pass the type("SUM","MAX","MIN","AVG","COUNT"). + * @param {string|any[]} If range is specified, it will apply auto sum for the specified range else it will use the current selected range. + * @returns {void} + */ + autoSum(type: string, range: string|any[]): void; + + /** This method is used to hide the file menu in the ribbon tab. + * @returns {void} + */ + hideMenu(): void; + + /** This method is used to remove the item from the backstage in the spreadsheet. + * @param {number} Specifies the index of the item to be removed from backstage. + * @returns {void} + */ + removeBackStageItem(index: number): void; + + /** This method is used to remove the menu item form file menu in spreadsheet. + * @param {number} Specifies the index of the item to be removed from the file menu. + * @returns {void} + */ + removeMenuItem(index: number): void; + + /** This method is used to delete the defined name in the Spreadsheet name manager. + * @param {string} Pass the defined name that you want to remove from name manager. + * @returns {void} + */ + removeNamedRange(name: string): void; + + /** This method is used to remove the tab form ribbon in the spreadsheet. + * @param {number} Specifies the index of the tab to be removed from the ribbon. + * @param {boolean} pass the boolean value to remove the tab from ribbon + * @returns {void} + */ + removeTab(index: number, isRemoveMenu: boolean): void; + + /** This method is used to remove the tab group form ribbon in the spreadsheet. + * @param {number} Specifies the index of the tab group to be removed from the ribbon. + * @param {string} Specifies the text to be displayed in the tab group + * @returns {void} + */ + removeTabGroup(tabIndex: number, groupText: string): void; + + /** This method is used to show the file menu in the ribbon tab. + * @returns {void} + */ + showMenu(): void; + + /** This method is used to update the menu item in the file menu. + * @param {any} Specifies the menu item to be updated in the ribbon + * @param {number} pass the index of the item to be updated + * @returns {void} + */ + updateMenuItem(item: any, index: number): void; + + /** This method is used to update the ribbon icons in the Spreadsheet. + * @returns {void} + */ + updateRibbonIcons(): void; + } + + export interface XLSearch { + + /** This method is used to find and replace all data by workbook in the Spreadsheet. + * @param {string} Pass the search data. + * @param {string} Pass the replace data. + * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to match with case-sensitive. + * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to match with entire cell contents. + * @returns {void} + */ + replaceAllByBook(findData: string, replaceData: string, isCSen: boolean, isEMatch: boolean): void; + + /** This method is used to find and replace all data by sheet in Spreadsheet. + * @param {string} Pass the search data. + * @param {string} Pass the replace data. + * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to match with case-sensitive. + * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to match with entire cell contents. + * @returns {void} + */ + replaceAllBySheet(findData: string, replaceData: string, isCSen: boolean, isEMatch: boolean): void; + } + + export interface XLSelection { + + /** This method is used to clear the selection of the active sheet in the Spreadsheet. + * @returns {void} + */ + clearAll(): void; + + /** This method is used to get the selected cells element based on specified sheet index in the Spreadsheet. + * @param {number} Pass the sheet index to get the cells element. + * @returns {HTMLElement} + */ + getSelectedCells(sheetIdx: number): HTMLElement; + + /** This method is used to refresh the selection in the Spreadsheet. + * @param {any[]|string} Optional. Pass range to refresh selection. + * @returns {void} + */ + refreshSelection(range: any[]|string): void; + + /** This method is used to select a single column in the Spreadsheet. + * @param {number} Pass the column index value. + * @returns {void} + */ + selectColumn(colIdx: number): void; + + /** This method is used to select entire columns in a specified range (start index and end index) in the Spreadsheet. + * @param {number} Pass the column start index. + * @param {number} Pass the column end index. + * @returns {void} + */ + selectColumns(startIdx: number, endIdx: number): void; + + /** This method is used to select the specified range of cells in the Spreadsheet. + * @param {string} Pass range which want to select. + * @returns {void} + */ + selectRange(range: string): void; + + /** This method is used to select a single row in the Spreadsheet. + * @param {number} Pass the row index value. + * @returns {void} + */ + selectRow(rowIdx: number): void; + + /** This method is used to select entire rows in a specified range (start index and end index) in the Spreadsheet. + * @param {number} Pass the start row index. + * @param {number} Pass the end row index. + * @returns {void} + */ + selectRows(startIdx: number, endIdx: number): void; + + /** This method is used to select all cells in active sheet. + * @returns {void} + */ + selectSheet(): void; + } + + export interface XLShape { + + /** This method is used to set a picture in the Spreadsheet. + * @param {string} Pass the range of the cell. + * @param {string} Pass the path of the specified image. + * @param {number} Optional. Pass the width of the image that you want to set. + * @param {number} Optional. Pass the height of the image that you want to set. + * @param {number} Optional. Pass the top of the image that you want to set. + * @param {number} Optional. Pass the left of the image that you want to set. + * @returns {string} + */ + setPicture(range: string, url: string, width: number, height: number, top: number, left: number): string; + } + + export interface XLSort { + + /** This method is used to sort a particular range of cells based on its cell or font color in the Spreadsheet. + * @param {string} Pass {{'`PutCellColor`' | markdownify}} to sort by cell color or {{'`PutFontColor`' | markdownify}} for sort by font color. + * @param {any} Pass the HEX color code to sort. + * @param {string} Pass the range + * @returns {void} + */ + sortByColor(operation: string, color: any, range: string): void; + + /** This method is used to sort a particular range of cells based on its values in the Spreadsheet. + * @param {any[]|string} Pass the range to sort. + * @param {string} Pass the column name. + * @param {any} Pass the direction to sort (ascending or descending). + * @returns {boolean} + */ + sortByRange(range: any[]|string, columnName: string, direction: any): boolean; + } + + export interface XLValidate { + + /** This method is used to apply data validation rules in a selected range of cells based on the defined condition in the Spreadsheet. + * @param {string|any[]} If range is specified, it will apply rules for the specified range else it will use the current selected range. + * @param {any[]} Pass the validation condition, value1 and value2. + * @param {string} Pass the data type. + * @param {boolean} Pass {{'`true`' | markdownify}} if you ignore blank values. + * @param {boolean} Pass {{'`true`' | markdownify}} if you want to show an error alert. + * @returns {void} + */ + applyDVRules(range: string|any[], values: any[], type: string, required: boolean, showErrorAlert: boolean): void; + + /** This method is used to clear the applied validation rules in a specified range of cells in the Spreadsheet. + * @param {string|any[]} Optional. If range is specified, it will clear rules for the specified range else it will use the current selected range. + * @returns {void} + */ + clearDV(range: string|any[]): void; + + /** This method is used to highlight invalid data in a specified range of cells in the Spreadsheet. + * @param {string|any[]} Optional. If range is specified, it will clear rules for the specified range else it will use the current selected range. + * @returns {void} + */ + highlightInvalidData(range: string|any[]): void; + } + + export interface Model { + + /** Gets or sets an active sheet index in the Spreadsheet. By defining this value, you can specify which sheet should be active in workbook. + * @Default {1} + */ + activeSheetIndex?: number; + + /** Gets or sets a value that indicates whether to enable or disable auto rendering of cell type in the Spreadsheet. + * @Default {false} + */ + allowAutoCellType?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable auto fill feature in the Spreadsheet. + * @Default {true} + */ + allowAutoFill?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable auto sum feature in the Spreadsheet. + * @Default {true} + */ + allowAutoSum?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable cell format feature in the Spreadsheet. By enabling this, you can customize styles and number formats. + * @Default {true} + */ + allowCellFormatting?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable cell type feature in the Spreadsheet. + * @Default {false} + */ + allowCellType?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable chart feature in the Spreadsheet. By enabling this feature, you can create and customize charts in Spreadsheet. + * @Default {true} + */ + allowCharts?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable clear feature in the Spreadsheet. + * @Default {true} + */ + allowClear?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable clipboard feature in the Spreadsheet. By enabling this feature, you can perform cut/copy and paste operations in + * Spreadsheet. + * @Default {true} + */ + allowClipboard?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable comment feature in the Spreadsheet. By enabling this, you can add/delete/modify comments in Spreadsheet. + * @Default {true} + */ + allowComments?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable Conditional Format feature in the Spreadsheet. By enabling this, you can apply formatting to the selected range of + * cells based on the provided conditions (Greater than, Less than, Equal, Between, Contains, etc.). + * @Default {true} + */ + allowConditionalFormats?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable data validation feature in the Spreadsheet. + * @Default {true} + */ + allowDataValidation?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable the delete action in the Spreadsheet. By enabling this feature, you can delete existing rows, columns, cells and + * sheet. + * @Default {true} + */ + allowDelete?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable drag and drop feature in the Spreadsheet. + * @Default {true} + */ + allowDragAndDrop?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable the edit action in the Spreadsheet. + * @Default {true} + */ + allowEditing?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable filtering feature in the Spreadsheet. Filtering can be used to limit the data displayed using required criteria. + * @Default {true} + */ + allowFiltering?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable table feature in the Spreadsheet. By enabling this, you can render table in selected range. + * @Default {true} + */ + allowFormatAsTable?: boolean; + + /** Get or sets a value that indicates whether to enable or disable format painter feature in the Spreadsheet. By enabling this feature, you can copy the format from the selected + * range and apply it to another range. + * @Default {true} + */ + allowFormatPainter?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable formula bar in the Spreadsheet. + * @Default {true} + */ + allowFormulaBar?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable freeze pane support in Spreadsheet. By enabling this feature, you can use freeze top row, freeze first column and + * freeze panes options. + * @Default {true} + */ + allowFreezing?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable hyperlink feature in the Spreadsheet. By enabling this feature, you can add hyperlink which is used to easily + * navigate to the cell reference from one sheet to another or a web page. + * @Default {true} + */ + allowHyperlink?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable import feature in the Spreadsheet. By enabling this feature, you can open existing Spreadsheet documents. + * @Default {true} + */ + allowImport?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable the insert action in the Spreadsheet. By enabling this feature, you can insert new rows, columns, cells and sheet. + * @Default {true} + */ + allowInsert?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable keyboard navigation feature in the Spreadsheet. + * @Default {true} + */ + allowKeyboardNavigation?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable lock cell feature in the Spreadsheet. + * @Default {true} + */ + allowLockCell?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable merge feature in the Spreadsheet. + * @Default {true} + */ + allowMerging?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable overflow feature in the Spreadsheet. + * @Default {true} + */ + allowOverflow?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable resizing feature in the Spreadsheet. By enabling this feature, you can change the column width and row height by + * dragging its header boundaries. + * @Default {true} + */ + allowResizing?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable find and replace feature in the Spreadsheet. By enabling this, you can easily find and replace a specific value in + * the sheet or workbook. By using goto behavior, you can select and highlight all cells that contains specific data or data types. + * @Default {true} + */ + allowSearching?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable selection in the Spreadsheet. By enabling this feature, selected items will be highlighted. + * @Default {true} + */ + allowSelection?: boolean; + + /** Gets or sets a value that indicates whether to enable the sorting feature in the Spreadsheet. + * @Default {true} + */ + allowSorting?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable undo and redo feature in the Spreadsheet. + * @Default {true} + */ + allowUndoRedo?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable wrap text feature in the Spreadsheet. By enabling this, cell content can wrap to the next line, if the cell + * content exceeds the boundary of the cell. + * @Default {true} + */ + allowWrap?: boolean; + + /** Gets or sets a value that indicates to define the width of the activation panel in Spreadsheet. + * @Default {300} + */ + apWidth?: number; + + /** Gets or sets an object that indicates to customize the auto fill behavior in the Spreadsheet. + */ + autoFillSettings?: AutoFillSettings; + + /** Gets or sets an object that indicates to customize the chart behavior in the Spreadsheet. + */ + chartSettings?: ChartSettings; + + /** Gets or sets a value that defines the number of columns displayed in the sheet. + * @Default {21} + */ + columnCount?: number; + + /** Gets or sets a value that indicates to define the common width for each column in the Spreadsheet. + * @Default {64} + */ + columnWidth?: number; + + /** Gets or sets a value to add root CSS class for customizing Spreadsheet skins. + */ + cssClass?: string; + + /** Gets or sets a value that indicates custom formulas in Spreadsheet. + * @Default {[]} + */ + customFormulas?: any[]; + + /** Gets or sets a value that indicates whether to enable or disable context menu in the Spreadsheet. + * @Default {true} + */ + enableContextMenu?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable pivot table in the Spreadsheet. + * @Default {false} + */ + enablePivotTable?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable touch support in the Spreadsheet. + * @Default {true} + */ + enableTouch?: boolean; + + /** Gets or sets an object that indicates to customize the exporting behavior in Spreadsheet. + */ + exportSettings?: ExportSettings; + + /** Gets or sets an object that indicates to customize the format behavior in the Spreadsheet. + */ + formatSettings?: FormatSettings; + + /** Gets or sets an object that indicates to customize the import behavior in the Spreadsheet. + */ + importSettings?: ImportSettings; + + /** Gets or sets a value that indicates whether to enable or disable readonly support in the Spreadsheet. + * @Default {false} + */ + isReadOnly?: boolean; + + /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data (i.e.) in a language and culture specific + * to a particular country or region. + * @Default {en-US} + */ + locale?: string; + + /** Gets or sets a value that indicates name manager in Spreadsheet. + */ + nameManager?: NameManager[]; + + /** Gets or sets an object that indicates to customize the picture behavior in the Spreadsheet. + */ + pictureSettings?: PictureSettings; + + /** Gets or sets an object that indicates to customize the print option in Spreadsheet. + */ + printSettings?: PrintSettings; + + /** Gets or sets an object that indicates to customize the ribbon settings in Spreadsheet. + */ + ribbonSettings?: RibbonSettings; + + /** Gets or sets a value that indicates whether to define the number of rows to be displayed in the sheet. + * @Default {20} + */ + rowCount?: number; + + /** Gets or sets a value that indicates to define the common height for each row in the sheet. + * @Default {20} + */ + rowHeight?: number; + + /** Gets or sets an object that indicates to customize the scroll options in the Spreadsheet. + */ + scrollSettings?: ScrollSettings; + + /** Gets or sets an object that indicates to customize the selection options in the Spreadsheet. + */ + selectionSettings?: SelectionSettings; + + /** Gets or sets a value that indicates to define the number of sheets to be created at the initial load. + * @Default {1} + */ + sheetCount?: number; + + /** Gets or sets an object that indicates to customize the sheet behavior in Spreadsheet. + */ + sheets?: Sheet[]; + + /** Gets or sets a value that indicates whether to show or hide pager in the Spreadsheet. + * @Default {true} + */ + showPager?: boolean; + + /** Gets or sets a value that indicates whether to show or hide ribbon in the Spreadsheet. + * @Default {true} + */ + showRibbon?: boolean; + + /** This is used to set the number of undo-redo steps in the Spreadsheet. + * @Default {20} + */ + undoRedoStep?: number; + + /** Define the username for the Spreadsheet which is displayed in comment. + * @Default {User Name} + */ + userName?: string; + + /** Triggered for every action before its starts. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Triggered for every action complete. + */ + actionComplete?(e: ActionCompleteEventArgs): void; + + /** Triggered when the auto fill operation begins. + */ + autoFillBegin?(e: AutoFillBeginEventArgs): void; + + /** Triggered when the auto fill operation completes. + */ + autoFillComplete?(e: AutoFillCompleteEventArgs): void; + + /** Triggered before the batch save. + */ + beforeBatchSave?(e: BeforeBatchSaveEventArgs): void; + + /** Triggered before the cells to be formatted. + */ + beforeCellFormat?(e: BeforeCellFormatEventArgs): void; + + /** Triggered before the cell selection. + */ + beforeCellSelect?(e: BeforeCellSelectEventArgs): void; + + /** Triggered before the selected cells are dropped. + */ + beforeDrop?(e: BeforeDropEventArgs): void; + + /** Triggered while start to edit the comment. + */ + beforeEditComment?(e: BeforeEditCommentEventArgs): void; + + /** Triggered before the contextmenu is open. + */ + beforeOpen?(e: BeforeOpenEventArgs): void; + + /** Triggered before the activation panel is open. + */ + beforePanelOpen?(e: BeforePanelOpenEventArgs): void; + + /** Triggered when click on sheet cell. + */ + cellClick?(e: CellClickEventArgs): void; + + /** Triggered when the cell is edited. + */ + cellEdit?(e: CellEditEventArgs): void; + + /** Triggered while cell is formatting. + */ + cellFormatting?(e: CellFormattingEventArgs): void; + + /** Triggered when mouse hover on cell in sheets. + */ + cellHover?(e: CellHoverEventArgs): void; + + /** Triggered when save the edited cell. + */ + cellSave?(e: CellSaveEventArgs): void; + + /** Triggered when the cell is selected. + */ + cellSelected?(e: CellSelectedEventArgs): void; + + /** Triggered when click the contextmenu items. + */ + contextMenuClick?(e: ContextMenuClickEventArgs): void; + + /** Triggered when the selected cells are being dragged. + */ + drag?(e: DragEventArgs): void; - /** Specifies liveTile images in templates. - * @Default {null} - */ - imageTemplateId?: any[]; + /** Triggered when you start to drag the picture or chart. + */ + dragShape?(e: DragShapeEventArgs): void; - /** Specifies liveTile images in CSS classes. - * @Default {null} - */ - imageUrl?: any[]; + /** Triggered when the selected cells are initiated to drag. + */ + dragStart?(e: DragStartEventArgs): void; - /** Specifies liveTile type for Tile. See orientation - * @Default {flip} - */ - type?: ej.Tile.liveTileType | string; + /** Triggered when the selected cells are dropped. + */ + drop?(e: DropEventArgs): void; - /** Specifies time interval between two successive liveTile animation - * @Default {2000} - */ - updateInterval?: number; + /** Triggered before the range editing starts. + */ + editRangeBegin?(e: EditRangeBeginEventArgs): void; - /** Sets the text to each living tile - * @Default {Null} - */ - text?: any[]; - } + /** Triggered after range editing completes. + */ + editRangeComplete?(e: EditRangeCompleteEventArgs): void; - enum BadgePosition { + /** Triggered when the key is pressed down. + */ + keyDown?(e: KeyDownEventArgs): void; - ///To set the topright position of tile badge - Topright, + /** Triggered when the key is released. + */ + keyUp?(e: KeyUpEventArgs): void; - ///To set the bottomright of tile badge - Bottomright - } + /** Triggered before the sheet is loaded. + */ + load?(e: LoadEventArgs): void; + /** Triggered after the sheet is loaded. + */ + loadComplete?(e: LoadCompleteEventArgs): void; - enum CaptionAlignment { + /** Triggered every click of the menu item. + */ + menuClick?(e: MenuClickEventArgs): void; - ///To set the normal alignment of text in tile control - Normal, + /** Triggered when a file is imported. + */ + onImport?(e: OnImportEventArgs): void; - ///To set the left alignment of text in tile control - Left, + /** Triggered when import sheet is failed to open. + */ + openFailure?(e: OpenFailureEventArgs): void; - ///To set the right alignment of text in tile control - Right, + /** Triggered when pager item is clicked in the Spreadsheet. + */ + pagerClick?(e: PagerClickEventArgs): void; - ///To set the center alignment of text in tile control - Center - } + /** Triggered when you start resizing the chart, picture, row and column. + */ + resizeStart?(e: ResizeStartEventArgs): void; + /** Triggered after end of resizing the chart, picture, row and column. + */ + resizeEnd?(e: ResizeEndEventArgs): void; - enum CaptionPosition { + /** Triggered when click on the ribbon. + */ + ribbonClick?(e: RibbonClickEventArgs): void; - ///To set the inner top position of the tile text - Innertop, + /** Triggered when the chart series rendering. + */ + seriesRendering?(e: SeriesRenderingEventArgs): void; - ///To set the inner bottom position of the tile text - Innerbottom, + /** Triggered when click the ribbon tab. + */ + tabClick?(e: TabClickEventArgs): void; - ///To set the outer position of the tile text - Outer - } + /** Triggered when select the ribbon tab. + */ + tabSelect?(e: TabSelectEventArgs): void; + } + export interface ActionBeginEventArgs { - enum ImagePosition { + /** Returns the applied style format object. + */ + afterFormat?: any; - ///To set the center position of tile image - Center, + /** Returns the applied style format object. + */ + beforeFormat?: any; - ///To set the top center position of tile image - TopCenter, + /** Returns the sheet index. + */ + sheetIdx?: number; - ///To set the bottom center position of tile image - BottomCenter, + /** Returns the cell range. + */ + range?: any[]; - ///To set the right center position of tile image - RightCenter, + /** Returns the action format. + */ + reqType?: string; - ///To set the left center position of tile image - LeftCenter, + /** Returns goto index while paging. + */ + gotoIdx?: number; - ///To set the topleft position of tile image - TopLeft, + /** Returns boolean value. If create new sheet it returns true. + */ + newSheet?: boolean; - ///To set the topright position of tile image - TopRight, + /** Return column name while sorting. + */ + columnName?: string; - ///To set the bottomright position of tile image - BottomRight, + /** Returns selected columns while sorting or filtering begins. + */ + colSelected?: number; - ///To set the bottomleft position of tile image - BottomLeft, + /** Returns sort direction while sort action begins. + */ + sortDirection?: string; + } - ///To set the fill position of tile image - Fill - } + export interface ActionCompleteEventArgs { + /** Returns Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - enum liveTileType { + /** Returns the applied cell format object. + */ + selectedCell?: any[]|any; - ///To set flip type of liveTile for tile control - Flip, + /** Returns the sheet index. + */ + sheetIdx?: number; - ///To set slide type of liveTile for tile control - Slide, + /** Returns the request type. + */ + reqType?: string; - ///To set carousel type of liveTile for tile control - Carousel - } + /** Returns the cancel option value. + */ + cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; + } - enum TileSize { + export interface AutoFillBeginEventArgs { - ///To set the medium size for tile control - Medium, + /** Returns auto fill begin cell range. + */ + dataRange?: any[]; - ///To set the small size for tile control - Small, + /** Returns which direction drag the auto fill. + */ + direction?: string; - ///To set the large size for tile control - Large, + /** Returns fill cells range. + */ + fillRange?: any[]; - ///To set the wide size for tile control - Wide - } + /** Returns the auto fill type. + */ + fillType?: string; - } + /** Returns the sheet index. + */ + sheetIdx?: number; - class Signature extends ej.Widget { - static fn: Signature; - constructor(element: JQuery | Element, options?: Signature.Model); - static Locale: any; - model: Signature.Model; - defaults: Signature.Model; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Clears the strokes in the signature. - * @returns {void} - */ - clear(): void; + /** Returns the name of the event. + */ + type?: string; - /** Destroys the signature widget. - * @returns {void} - */ - destroy(): void; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Disables the signature widget. - * @returns {void} - */ - disable(): void; + export interface AutoFillCompleteEventArgs { - /** Enables the signature widget. - * @returns {void} - */ - enable(): void; + /** Returns auto fill begin cell range. + */ + dataRange?: any[]; - /** Hides the signature widget. - * @returns {void} - */ - hide(): void; + /** Returns which direction to drag the auto fill. + */ + direction?: string; - /** redo the last drawn stroke of the signature - * @returns {void} - */ - redo(): void; + /** Returns fill cells range. + */ + fillRange?: any[]; - /** used to save the drawn image. - * @returns {void} - */ - save(): void; + /** Returns the auto fill type. + */ + fillType?: string; - /** Used to Show the signature widget, if it is already hided. - * @returns {void} - */ - show(): void; + /** Returns the sheet index. + */ + sheetIdx?: number; - /** undo the last drawn stroke of the signature. - * @returns {void} - */ - undo(): void; - } - export namespace Signature { + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - export interface Model { + /** Returns the name of the event. + */ + type?: string; - /** This property is used to set the background color for the signature. - * @Default {#ffffff} - */ - backgroundColor?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** This property is used to set the background image for the signature. - */ - backgroundImage?: string; + export interface BeforeBatchSaveEventArgs { - /** Enables or disables the Signature textbox widget. - * @Default {true} - */ - enabled?: boolean; + /** Returns the sheet index. + */ + sheetIdx?: number; - /** Sets the height of the Signature control. - * @Default {100%} - */ - height?: string; + /** Returns the query, primary key,batch changes for the data Source. + */ + dataSetting?: any; - /** Enables/disables responsive support for the signature control (i.e) maintain the signature drawing during the window resizing time. - * @Default {false} - */ - isResponsive?: boolean; - - /** Allows the type of the image format to be saved when the signature image is saved. - */ - saveImageFormat?: ej.Signature.SaveImageFormat | string; - - /** Allows the signature image to be saved along with its background. - * @Default {false} - */ - saveWithBackground?: boolean; - - /** Enables or disables rounded corner. - * @Default {true} - */ - showRoundedCorner?: boolean; - - /** Sets the stroke color for the stroke of the signature. - * @Default {#000000} - */ - strokeColor?: string; - - /** Sets the stroke width for the stroke of the signature. - * @Default {2} - */ - strokeWidth?: number; - - /** Sets the width of the Signature control. - * @Default {100%} - */ - width?: string; - - /** Triggers when the stroke is changed. */ - change?(e: ChangeEventArgs): void; - - /** Triggered when the pointer is clicked or touched in the signature canvas. */ - mouseDown?(e: MouseDownEventArgs): void; + /** Returns the changed record object. + */ + batchChanges?: any; + } - /** Triggered when the pointer is moved in the signature canvas. */ - mouseMove?(e: MouseMoveEventArgs): void; - - /** Triggered when the pointer is released after click or touch in the signature canvas. */ - mouseUp?(e: MouseUpEventArgs): void; - } + export interface BeforeCellFormatEventArgs { - export interface ChangeEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the signature model object. - */ - model?: ej.Signature.Model; - - /** Name of the event. - */ - type?: string; + /** Returns the sheet index. + */ + sheetIdx?: number; - /** Gives the last stored image - */ - lastImage?: string; - } + /** Returns the applied style format object. + */ + format?: any; - export interface MouseDownEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + /** Returns the selected cells. + */ + cells?: any[]|any; - /** Instance of the signature model object. - */ - model?: ej.Signature.Model; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Name of the event. - */ - type?: string; - - /** returns all the event values - */ - value?: any; - } - - export interface MouseMoveEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the signature model object. - */ - model?: ej.Signature.Model; - - /** Name of the event. - */ - type?: string; - - /** returns all the event values - */ - value?: any; - } - - export interface MouseUpEventArgs { - - /** Set this option to true to cancel the event. - */ - cancel?: boolean; - - /** Instance of the signature model object. - */ - model?: ej.Signature.Model; - - /** Name of the event. - */ - type?: string; - - /** returns all the event values - */ - value?: any; - } - - enum SaveImageFormat { - - ///To save the signature image with PNG format only. - PNG, - - ///To save the signature image with JPG format only. - JPG, - - ///To save the signature image with BMP format only. - BMP, - - ///To save the signature image with TIFF format only. - TIFF - } - - } - - class RadialSlider extends ej.Widget { - static fn: RadialSlider; - constructor(element: JQuery | Element, options?: RadialSlider.Model); - static Locale: any; - model: RadialSlider.Model; - defaults: RadialSlider.Model; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** To show the radialslider - * @returns {void} - */ - show(): void; - - /** To hide the radialslider - * @returns {void} - */ - hide(): void; - } - export namespace RadialSlider { - - export interface Model { + /** Returns the name of the event. + */ + type?: string; + } - /** To show the RadialSlider in initial render. - * @Default {false} - */ - autoOpen?: boolean; + export interface BeforeCellSelectEventArgs { - /** Sets the root class for RadialSlider theme. This cssClass API helps to use custom skinning option for RadialSlider control. - * By defining the root class using this API, we need to include this root class in CSS. - */ - cssClass?: string; - - /** To enable Animation for Radial Slider. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Enable/Disable the Roundoff property of RadialSlider - * @Default {true} - */ - enableRoundOff?: boolean; - - /** Specifies the endAngle value for radial slider circle. - * @Default {360} - */ - endAngle?: number; - - /** Specifies the inline for label show or not on given radius. - * @Default {false} - */ - inline?: boolean; - - /** Specifies innerCircleImageClass, using this property we can give images for center radial circle through CSS classes. - * @Default {null} - */ - innerCircleImageClass?: string; - - /** Specifies the file name of center circle icon - * @Default {null} - */ - innerCircleImageUrl?: string; - - /** Specifies the Space between the radial slider element and the label. - * @Default {30} - */ - labelSpace?: number; + /** Returns the previous cell range. + */ + prevRange?: any[]; - /** Specifies the radius of radial slider - * @Default {200} - */ - radius?: number; - - /** To show the RadialSlider inner circle. - * @Default {true} - */ - showInnerCircle?: boolean; - - /** Specifies the endAngle value for radial slider circle. - * @Default {0} - */ - startAngle?: number; + /** Returns the current cell range. + */ + currRange?: any[]; - /** Specifies the strokeWidth for customize the needle, outer circle and inner circle. - * @Default {2} - */ - strokeWidth?: number; - - /** Specifies the ticks value of radial slider - */ - ticks?: any[]; - - /** Specifies the value of radial slider - * @Default {10} - */ - value?: number; - - /** Event triggers when the change occurs. */ - change?(e: ChangeEventArgs): void; - - /** Event triggers when the radial slider is created. */ - create?(e: CreateEventArgs): void; - - /** Event triggers when the mouse pointer is dragged over the radial slider. */ - mouseover?(e: MouseoverEventArgs): void; - - /** Event triggers when the Radial slider slides. */ - slide?(e: SlideEventArgs): void; - - /** Event triggers when the radial slider starts. */ - start?(e: StartEventArgs): void; - - /** Event triggers when the radial slider stops. */ - stop?(e: StopEventArgs): void; - } - - export interface ChangeEventArgs { - - /** returns the Radialslider model - */ - model?: any; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; - /** returns the initial value of Radial slider - */ - oldValue?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** returns the name of the event - */ - type?: string; + export interface BeforeDropEventArgs { - /** returns the current value of the Radial slider - */ - value?: number; - } + /** Returns the sheet index. + */ + sheetIdx?: number; - export interface CreateEventArgs { + /** Returns the current cell row and column index. + */ + currentCell?: any; - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Radialslider model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface MouseoverEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Radialslider model - */ - model?: any; - - /** returns the value selected - */ - selectedValue?: number; - - /** returns the name of the event - */ - type?: string; - - /** returns the current value selected in Radial slider - */ - value?: number; - } - - export interface SlideEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Radialslider model - */ - model?: any; - - /** returns the value selected in Radial slider - */ - selectedValue?: number; - - /** returns the name of the event - */ - type?: string; - - /** returns the currently selected value - */ - value?: number; - } - - export interface StartEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Radialslider model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the current value selected in Radial slider - */ - value?: number; - } - - export interface StopEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the Radialslider model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** returns the current value selected in Radial slider - */ - value?: number; - } - } - - class Spreadsheet extends ej.Widget { - static fn: Spreadsheet; - constructor(element: JQuery | Element, options?: Spreadsheet.Model); - static Locale: any; - model: Spreadsheet.Model; - defaults: Spreadsheet.Model; - - /** This method is used to add custom formulas in Spreadsheet. - * @param {string} Pass the name of the formula. - * @param {string} Pass the name of the function. - * @returns {void} - */ - addCustomFormula(formulaName: string, functionName: string): void; - - /** This method is used to add a new sheet in the last position of the sheet container. - * @returns {void} - */ - addNewSheet(): void; - - /** It is used to clear all the data and format in the specified range of cells in Spreadsheet. - * @param {string|Array} Optional. If range is specified, then it will clear all content in the specified range else it will use the current selected range. - * @returns {void} - */ - clearAll(range?: string | any[]): void; - - /** This property is used to clear all the formats applied in the specified range in Spreadsheet. - * @param {string|Array} Optional. If range is specified, then it will clear all format in the specified range else it will use the current selected range. - * @returns {void} - */ - clearAllFormat(range?: string | any[]): void; - - /** Used to clear the applied border in the specified range in Spreadsheet. - * @param {string|Array} Optional. If range is specified, then it will clear border in the specified range else it will use the current selected range. - * @returns {void} - */ - clearBorder(range?: string | any[]): void; - - /** This property is used to clear the contents in the specified range in Spreadsheet. - * @param {string|Array} Optional. If the range is specified, then it will clear the content in the specified range else it will use the current selected range. - * @returns {void} - */ - clearContents(range?: string | any[]): void; - - /** This method is used to remove only the data in the range denoted by the specified range name. - * @param {string} Pass the defined rangeSettings property name. - * @returns {void} - */ - clearRange(rangeName: string): void; - - /** It is used to remove data in the specified range of cells based on the defined property. - * @param {Array|string} Optional. If range is specified, it will clear data for the specified range else it will use the current selected range. - * @param {string} Optional. If property is specified, it will remove the specified property in the range else it will remove default properties - * @param {any} Optional. - * @param {boolean} Optional. pass {{'`true`' | markdownify}}, if you want to skip the hidden rows - * @param {any} Optional. Pass the status to perform undo and redo operation. - * @param {any} Optional. It specifies whether to skip element processing or not. - * @returns {void} - */ - clearRangeData(range?: any[] | string, property?: string, cells?: any, skipHiddenRow?: boolean, status?: any, skipCell?: any): void; - - /** This method is used to clear undo and redo collections in the Spreadsheet. - * @returns {void} - */ - clearUndoRedo(): void; - - /** This method is used to copy or move the sheets in Spreadsheet. - * @param {number} Pass the sheet index that you want to copy or move. - * @param {number} Pass the position index where you want to copy or move. - * @param {boolean} Pass {{'`true`' | markdownify}},If you want to copy sheet or else it will move sheet. - * @returns {void} - */ - copySheet(fromIdx: number, toIdx: number, isCopySheet: boolean): void; - - /** This method is used to delete the entire column which is selected. - * @param {number} Pass the start column index. - * @param {number} Pass the end column index. - * @returns {void} - */ - deleteEntireColumn(startCol: number, endCol: number): void; - - /** This method is used to delete the entire row which is selected. - * @param {number} Pass the start row index. - * @param {number} Pass the end row index. - * @returns {void} - */ - deleteEntireRow(startRow: number, endRow: number): void; - - /** This method is used to delete a particular sheet in the Spreadsheet. - * @param {number} Pass the sheet index to perform delete action. - * @returns {void} - */ - deleteSheet(idx: number): void; - - /** This method is used to delete the selected cells and shift the remaining cells to left. - * @param {any} Row index and column index of the starting cell. - * @param {any} Row index and column index of the ending cell. - * @returns {void} - */ - deleteShiftLeft(startCell: any, endCell: any): void; - - /** This method is used to delete the selected cells and shift the remaining cells up. - * @param {any} Row index and column index of the start cell. - * @param {any} Row index and column index of the end cell. - * @returns {void} - */ - deleteShiftUp(startCell: any, endCell: any): void; - - /** This method is used to edit data in the specified range of cells based on its corresponding rangeSettings. - * @param {string} Pass the defined rangeSettings property name. - * @param {Function} Pass the function that you want to perform range edit. - * @returns {void} - */ - editRange(rangeName: string, fn: any): void; - - /** This method is used to get the activation panel in the Spreadsheet. - * @returns {HTMLElement} - */ - getActivationPanel(): HTMLElement; - - /** This method is used to get the active cell object in Spreadsheet. It will returns object which contains rowIndex and colIndex of the active cell. - * @param {number} Optional. If sheetIdx is specified, it will return the active cell object in specified sheet index else it will use the current sheet index - * @returns {any} - */ - getActiveCell(sheetIdx?: number): any; - - /** This method is used to get the active cell element based on the given sheet index in the Spreadsheet. - * @param {number} Optional. If sheetIndex is specified, it will return the active cell element in specified sheet index else it will use the current active sheet index. - * @returns {HTMLElement} - */ - getActiveCellElem(sheetIdx?: number): HTMLElement; - - /** This method is used to get the current active sheet index in Spreadsheet. - * @returns {number} - */ - getActiveSheetIndex(): number; - - /** This method is used to get the auto fill element in Spreadsheet. - * @returns {HTMLElement} - */ - getAutoFillElem(): HTMLElement; - - /** This method is used to get the cell element based on specified row and column index in the Spreadsheet. - * @param {number} Pass the row index. - * @param {number} Pass the column index. - * @param {number} Optional. Pass the sheet index that you want to get cell. - * @returns {HTMLElement} - */ - getCell(rowIdx: number, colIdx: number, sheetIdx?: number): HTMLElement; - - /** This method is used to get the data settings in the Spreadsheet. - * @param {number} Pass the sheet index. - * @returns {number} - */ - getDataSettings(sheetIdx: number): number; - - /** This method is used to get the frozen columns index in the Spreadsheet. - * @param {number} Pass the sheet index. - * @returns {number} - */ - getFrozenColumns(sheetIdx: number): number; - - /** This method is used to get the frozen row index in Spreadsheet. - * @param {number} Pass the sheet index. - * @returns {number} - */ - getFrozenRows(sheetIdx: number): number; - - /** This method is used to get the hyperlink data as object from the specified cell in Spreadsheet. - * @param {HTMLElement} Pass the DOM element to get hyperlink - * @returns {any} - */ - getHyperlink(cell: HTMLElement): any; - - /** This method is used to get all cell elements in the specified range. - * @param {string} Pass the range that you want to get the cells. - * @param {number} Pass the index of the sheet. - * @param {boolean} Optional. Pass {{'`true`' | markdownify}}, if you want to skip the hidden rows. - * @returns {HTMLElement} - */ - getRange(range: string, sheetIdx: number, skipHiddenRow?: boolean): HTMLElement; - - /** This method is used to get the data in specified range in Spreadsheet. - * @param {any} Optional. Pass the range, property, sheetIdx, valueOnly in options. - * @returns {Array} - */ - getRangeData(options?: any): any[]; - - /** This method is used to get the range indices array based on the specified alpha range in Spreadsheet. - * @param {string} Pass the alpha range that you want to get range indices. - * @returns {Array} - */ - getRangeIndices(range: string): any[]; - - /** This method is used to get the sheet details based on the given sheet index in Spreadsheet. - * @param {number} Pass the sheet index to get the sheet object. - * @returns {any} - */ - getSheet(sheetIdx: number): any; - - /** This method is used to get the sheet content div element of Spreadsheet. - * @param {number} Pass the sheet index to get the sheet content. - * @returns {HTMLElement} - */ - getSheetElement(sheetIdx: number): HTMLElement; - - /** This method is used to get all the sheets in workbook. - * @returns {Array} - */ - getSheets(): any[]; - - /** This method is used to send a paging request to the specified sheet Index in the Spreadsheet. - * @param {number} Pass the sheet index to perform paging at specified sheet index - * @param {boolean} Pass {{'`true`' | markdownify}} to create a new sheet. If the specified sheet index is already exist, it navigate to that sheet else it create a new sheet. - * @returns {void} - */ - gotoPage(sheetIdx: number, newSheet: boolean): void; - - /** This method is used to hide the pivot table activationPanel in the Spreadsheet. - * @returns {void} - */ - hideActivationPanel(): void; - - /** This method is used to hide the entire columns from the specified range (startCol, endCol) in Spreadsheet. - * @param {number} Index of the start column. - * @param {number} Optional. Index of the end column. - * @returns {void} - */ - hideColumn(startCol: number, endCol: number): void; - - /** This method is used to hide the formula bar in Spreadsheet. - * @returns {void} - */ - hideFormulaBar(): void; - - /** This method is used to hide the rows, based on the specified row index in Spreadsheet. - * @param {number} Index of the start row. - * @param {number} Optional. Index of the end row. - * @returns {void} - */ - hideRow(startRow: number, endRow: number): void; - - /** This method is used to hide the sheet based on the specified sheetIndex or sheet name in the Spreadsheet. - * @param {string|number} Pass the sheet name or index that you want to hide. - * @returns {void} - */ - hideSheet(sheetIdx: string | number): void; - - /** This method is used to hide the displayed waiting pop-up in Spreadsheet. - * @returns {void} - */ - hideWaitingPopUp(): void; - - /** This method is used to insert a column before the active cell's column in the Spreadsheet. - * @param {number} Pass start column. - * @param {number} Pass end column. - * @returns {void} - */ - insertEntireColumn(startCol: number, endCol: number): void; - - /** This method is used to insert a row before the active cell's row in the Spreadsheet. - * @param {number} Pass start row. - * @param {number} Pass end row. - * @returns {void} - */ - insertEntireRow(startRow: number, endRow: number): void; - - /** This method is used to insert a new sheet to the left of the current active sheet. - * @returns {void} - */ - insertSheet(): void; - - /** This method is used to insert cells in the selected or specified range and shift remaining cells to bottom. - * @param {any} Row index and column index of the start cell. - * @param {any} Row index and column index of the end cell. - * @returns {void} - */ - insertShiftBottom(startCell: any, endCell: any): void; - - /** This method is used to insert cells in the selected or specified range and shift remaining cells to right. - * @param {any} Row index and column index of the start cell. - * @param {any} Row index and column index of the end cell. - * @returns {void} - */ - insertShiftRight(startCell: any, endCell: any): void; - - /** This method is used to import excel file manually by using form data. - * @param {any} Pass the form data object to import files manually. - * @returns {void} - */ - import(importRequest: any): void; - - /** This method is used to load JSON data in Spreadsheet. - * @param {any} Pass the response that you want to load. - * @returns {void} - */ - loadFromJSON(response: any): void; - - /** This method is used to lock/unlock the range of cells in active sheet. Lock cells are activated only after the sheet is protected. Once the sheet is protected it is unable to lock/unlock cells. - * @param {string|Array} Pass the alpha range cells or array range of cells. - * @param {string} Optional. By default is {{'`true`' | markdownify}}. If it is {{'`false`' | markdownify}} locked cells are unlocked. - * @returns {void} - */ - lockCells(range: string | any[], isLocked?: string): void; - - /** This method is used to merge cells by across in the Spreadsheet. - * @param {string} Optional. To pass the cell range or selected cells are process. - * @param {boolean} Optional. If pass {{'`true`' | markdownify}} it does not show alert. - * @returns {void} - */ - mergeAcrossCells(range?: string, alertStatus?: boolean): void; - - /** This method is used to merge the selected cells in the Spreadsheet. - * @param {string|Array} Optional. To pass the cell range or selected cells are process. - * @param {boolean} Optional. If pass {{'`true`' | markdownify}} it does not show alert. - * @returns {void} - */ - mergeCells(range?: string | any[], alertStatus?: boolean): void; - - /** This method is used to select a cell or range in the Spreadsheet. - * @param {any} Pass the start cell to perform selection. - * @param {any} Pass the end cell to perform selection. - * @returns {void} - */ - performSelection(startCell: any, endCell: any): void; - - /** This method is used to protect or unprotect active sheet. - * @param {boolean} Optional. By default is {{'`true`' | markdownify}}. If it is {{'`false`' | markdownify}} active sheet is unprotected. - * @returns {void} - */ - protectSheet(isProtected?: boolean): void; - - /** This method is used to refresh the content in Spreadsheet. - * @param {number} Pass the index of the sheet. - * @returns {void} - */ - refreshContent(sheetIdx: number): void; - - /** This method is used to refresh the Spreadsheet. - * @returns {void} - */ - refreshSpreadsheet(): void; - - /** This method is used to remove custom formulae in Spreadsheet. - * @param {string} Pass the name of the formula. - * @param {string} Pass the name of the function. - * @returns {void} - */ - removeCustomFormula(formulaName: string, functionName: string): void; - - /** This method is used to remove the hyperlink from selected cells of current sheet. - * @param {string} Hyperlink remove from the specified range. - * @param {boolean} Optional. If it is {{'`true`' | markdownify}}, It will clear link only not format. - * @param {boolean} Optional. Pass the status to perform undo and redo operations. - * @param {any} Optional. Pass the cells that you want to remove hyperlink. - * @param {boolean} Optional. Pass {{'`true`' | markdownify}}, if you want to skip the hidden rows. - * @returns {void} - */ - removeHyperlink(range: string, isClearHLink?: boolean, status?: boolean, cells?: any, skipHiddenRow?: boolean): void; - - /** This method is used to remove the range data and its defined rangeSettings property based on the specified range name. - * @param {string} Pass the defined rangeSetting property name. - * @returns {void} - */ - removeRange(rangeName: string): void; - - /** This method is used to remove the readonly option for the specified range. - * @param {string|Array} Pass the range. - * @returns {void} - */ - removeReadOnly(range?: string | any[]): void; - - /** This method is used to save JSON data in Spreadsheet. - * @returns {any} - */ - saveAsJSON(): any; - - /** This method is used to save batch changes in Spreadsheet. - * @param {number} Pass the sheet index for Spreadsheet. - * @returns {void} - */ - saveBatchChanges(sheetIdx: number): void; - - /** This method is used to set the active cell in the Spreadsheet. - * @param {number} Pass the row index. - * @param {number} Pass the column index. - * @param {number} Pass the index of the sheet. - * @returns {void} - */ - setActiveCell(rowIdx: number, colIdx: number, sheetIdx: number): void; - - /** This method is used to set active sheet index for the Spreadsheet. - * @param {number} Pass the active sheet index for Spreadsheet. - * @returns {void} - */ - setActiveSheetIndex(sheetIdx: number): void; - - /** This method is used to set border for the specified range of cells in the Spreadsheet. - * @param {any} Pass the border properties that you want to set. - * @param {string} Optional. If range is specified, it will set border for the specified range else it will use the selected range. - * @returns {void} - */ - setBorder(property: any, range?: string): void; - - /** This method is used to set the height for the rows in the Spreadsheet. - * @param {Array|any} Pass the row index and height of the rows. - * @returns {void} - */ - setHeightToRows(heightColl: any[] | any): void; - - /** This method is used to set the hyperlink in selected cells of the current sheet. - * @param {string|Array} If range is specified, it will set the hyperlink in range of the cells. - * @param {any} Pass cellAddress or webAddress - * @param {number} If we pass cellAddress then which sheet to be navigate in the applied link. - * @returns {void} - */ - setHyperlink(range: string | any[], link: any, sheetIdx: number): void; - - /** This method is used to set the readonly option for the specified range. - * @param {string|Array} Pass the range. - * @returns {void} - */ - setReadOnly(range?: string | any[]): void; - - /** This method is used to set the focus to the Spreadsheet. - * @returns {void} - */ - setSheetFocus(): void; - - /** This method is used to set the width for the columns in the Spreadsheet. - * @param {Array|any} Pass the column index and width of the columns. - * @returns {void} - */ - setWidthToColumns(widthColl: any[] | any): void; - - /** This method is used to rename the active sheet. - * @param {string} Pass the sheet name that you want to change the current active sheet name. - * @returns {void} - */ - sheetRename(sheetName: string): void; - - /** This method is used to display the activationPanel for the specified range name. - * @param {string} Pass the range name that you want to display the activation panel. - * @returns {void} - */ - showActivationPanel(rangeName: string): void; - - /** This method is used to show the hidden columns within the specified range in the Spreadsheet. - * @param {number} Index of the start column. - * @param {number} Optional. Index of the end column. - * @returns {void} - */ - showColumn(startColIdx: number, endColIdx: number): void; - - /** This method is used to show the formula bar in Spreadsheet. - * @returns {void} - */ - showFormulaBar(): void; - - /** This method is used to show/hide gridlines in active sheet in the Spreadsheet. - * @param {boolean} Pass {{'`true`' | markdownify}} to show the gridlines - * @returns {void} - */ - showGridlines(status: boolean): void; - - /** This method is used to show/hide the headers in active sheet in the Spreadsheet. - * @param {boolean} Pass {{'`true`' | markdownify}} to show the sheet headers. - * @returns {void} - */ - showHeadings(startRow: boolean): void; - - /** This method is used to show/hide pager in the Spreadsheet. - * @param {boolean} Pass {{'`true`' | markdownify}} to show pager. - * @returns {void} - */ - showPager(status: boolean): void; - - /** This method is used to show the hidden rows in the specified range in the Spreadsheet. - * @param {number} Index of the start row. - * @param {number} Optional. Index of the end row. - * @returns {void} - */ - showRow(startRow: number, endRow: number): void; - - /** This method is used to show waiting pop-up in Spreadsheet. - * @returns {void} - */ - showWaitingPopUp(): void; - - /** This method is used to unhide the sheet based on specified sheet name or sheet index. - * @param {string|number} Pass the sheet name or index that you want to unhide. - * @returns {void} - */ - unhideSheet(sheetInfo: string | number): void; - - /** This method is used to unmerge the selected range of cells in the Spreadsheet. - * @param {string} Optional. If the range is specified, then it will un merge the specified range else it will use the current selected range. - * @returns {void} - */ - unmergeCells(range?: string): void; - - /** This method is used to unwrap the selected range of cells in the Spreadsheet. - * @param {Array|string} Optional. If the range is specified, then it will update unwrap in the specified range else it will use the current selected range. - * @returns {void} - */ - unWrapText(range?: any[] | string): void; - - /** This method is used to update the data for the specified range of cells in the Spreadsheet. - * @param {any} Pass the cells data that you want to update. - * @param {Array|string} Optional. If range is specified, it will update data for the specified range else it will use the current selected range. - * @returns {void} - */ - updateData(data: any, range?: any[] | string): void; - - /** This method is used to update the formula bar in the Spreadsheet. - * @returns {void} - */ - updateFormulaBar(): void; - - /** This method is used to update the range of cells based on the specified settings which we want to update in the Spreadsheet. - * @param {number} Pass the sheet index that you want to update. - * @param {any} Pass the dataSource, startCell and showHeader values as settings. - * @returns {void} - */ - updateRange(sheetIdx: number, settings: any): void; - - /** This method is used to update the details for custom undo and redo operations. - * @param {any} Pass the details to update undo and redo collection - * @returns {void} - */ - updateUndoRedoCollection(details: any): void; - - /** This method is used to update the unique data for the specified range of cells in Spreadsheet. - * @param {any} Pass the data that you want to update in the particular range - * @param {Array|string} Optional. If range is specified, it will update data for the specified range else it will use the current selected range. - * @param {any} Optional. It specifies whether to skip element processing or not. - * @returns {void} - */ - updateUniqueData(data: any, range?: any[] | string, skipCell?: any): void; - - /** This method is used to wrap the selected range of cells in the Spreadsheet. - * @param {Array|string} Optional. If the range is specified, then it will update wrap in the specified range else it will use the current selected range. - * @returns {void} - */ - wrapText(range?: any[] | string): void; - - XLCellType: Spreadsheet.XLCellType; - - XLCFormat: Spreadsheet.XLCFormat; - - XLChart: Spreadsheet.XLChart; - - XLClipboard: Spreadsheet.XLClipboard; - - XLComment: Spreadsheet.XLComment; - - XLCMenu: Spreadsheet.XLCMenu; - - XLDragDrop: Spreadsheet.XLDragDrop; - - XLDragFill: Spreadsheet.XLDragFill; - - XLEdit: Spreadsheet.XLEdit; - - XLExport: Spreadsheet.XLExport; - - /** This method is used to get the export properties in the Spreadsheet. - * @returns {any} - */ - getExportProps(): any; - - XLFilter: Spreadsheet.XLFilter; - - XLFormat: Spreadsheet.XLFormat; - - XLFreeze: Spreadsheet.XLFreeze; - - /** This method is used to unfreeze the frozen rows and columns in the Spreadsheet. - * @returns {void} - */ - unfreezePanes(): void; - - XLPivot: Spreadsheet.XLPivot; - - XLPrint: Spreadsheet.XLPrint; - - XLResize: Spreadsheet.XLResize; - - XLRibbon: Spreadsheet.XLRibbon; - - XLSearch: Spreadsheet.XLSearch; - - XLSelection: Spreadsheet.XLSelection; - - XLShape: Spreadsheet.XLShape; - - XLSort: Spreadsheet.XLSort; - - XLValidate: Spreadsheet.XLValidate; - } - export namespace Spreadsheet { - - export interface XLCellType { - - /** This method is used to set a cell type from the specified range of cells in the spreadsheet. - * @param {string} Pass the range where you want apply cell type. - * @param {any} Pass type of cell type and its settings. - * @param {number} Optional. Pass sheet index. - * @returns {void} - */ - addCellTypes(range: string, settings: any, sheetIdx: number): void; - - /** This method is used to remove cell type from the specified range of cells in the Spreadsheet. - * @param {string|Array} Pass the range where you want remove cell type. - * @param {number} Optional. Pass sheet index. - * @returns {void} - */ - removeCellTypes(range: string | any[], sheetIdx: number): void; - } - - export interface XLCFormat { - - /** This method is used to clear the applied conditional formatting rules in the Spreadsheet. - * @param {Array|string} Optional. If range is specified, it will clear rules for the specified range else it will use the current selected range. - * @returns {void} - */ - clearCF(range: any[] | string): void; - - /** This method is used to get the applied conditional formatting rules as array of objects based on the specified row Index and column Index in the Spreadsheet. - * @param {number} Pass the row index. - * @param {number} Pass the column index. - * @returns {Array} - */ - getCFRule(rowIdx: number, colIdx: number): any[]; - - /** This method is used to set the conditional formatting rule in the Spreadsheet. - * @param {any} Pass the rule to set. - * @returns {void} - */ - setCFRule(rule: any): void; - } - - export interface XLChart { - - /** This method is used to change the theme of the chart in the Spreadsheet. - * @param {string} Pass the chart id. - * @param {ej.datavisualization.Chart.Theme} Pass the chart theme which want to update. - * @returns {void} - */ - changeTheme(chartId: string, theme: ej.datavisualization.Chart.Theme): void; - - /** This method is used to change the type of the chart in the Spreadsheet. - * @param {string} Pass the chart id. - * @param {any} Pass the chart type. - * @returns {void} - */ - changeType(chartId: string, option: any): void; - - /** This method is used to change the data range of the chart in the Spreadsheet. - * @param {string} Pass the chart id. - * @param {string} X axis range of chart data. - * @param {string} Y axis range of chart data. - * @param {string} Legend range of chart data. - * @returns {void} - */ - changeDataRange(chartId: string, xRange: string, yRange: string, lRange: string): void; - - /** This method is used to create a chart for specified range in Spreadsheet. - * @param {string|Array} Optional. If range is specified, it will create chart for the specified range else it will use the current selected range. - * @param {any} Optional. To pass the type of chart and chart name. - * @returns {void} - */ - createChart(range: string | any[], options: any): void; - - /** This method is used to refresh the chart in the Spreadsheet. - * @param {string} To pass the chart Id. - * @param {any} To pass the type of chart and chart name. - * @returns {void} - */ - refreshChart(id: string, options: any): void; - - /** This method is used to resize the chart of specified id in the Spreadsheet. - * @param {string} To pass the chart id. - * @param {number} To pass height value. - * @param {number} To pass the width value. - * @returns {void} - */ - resizeChart(id: string, height: number, width: number): void; - - /** This method is used to update the chart element, such as axes, titles, data labels, grid lines and legends in the Spreadsheet. - * @param {string} Pass the chart id. - * @param {ej.Spreadsheet.ChartProperties} Pass chart element value which you want to update. - * @returns {void} - */ - updateChartElement(chartId: string, value: ej.Spreadsheet.ChartProperties): void; - - /** This method is used switch row to columns and vice versa for chart in the Spreadsheet. So that the data is displayed in the chart the way you want. - * @param {string} Pass the chart id. - * @returns {void} - */ - switchRowColumn(chartId: string): void; - } - - export interface XLClipboard { - - /** This method is used to copy the selected cells in the Spreadsheet. - * @returns {void} - */ - copy(): void; - - /** This method is used to cut the selected cells in the Spreadsheet. - * @returns {void} - */ - cut(): void; - - /** This method is used to paste the cut or copied cells data in the Spreadsheet. - * @returns {void} - */ - paste(): void; - } - - export interface XLComment { - - /** This method is used to delete the comment in the specified range in Spreadsheet. - * @param {Array|string} Optional. If range is specified, it will delete comments for the specified range else it will use the current selected range. - * @param {number} Optional. If sheetIdx is specified, it will delete comment in specified sheet else it will use active sheet. - * @param {boolean} Optional. Pass {{'`true`' | markdownify}}, if you want to skip the hidden rows data. - * @returns {void} - */ - deleteComment(range: any[] | string, sheetIdx: number, skipHiddenRow: boolean): void; - - /** This method is used to edit the comment in the target Cell in Spreadsheet. - * @param {any} Optional. Pass the row index and column index of the cell which contains comment. - * @returns {void} - */ - editComment(targetCell: any): void; - - /** This method is used to find the next comment from the active cell in Spreadsheet. - * @returns {boolean} - */ - findNextComment(): boolean; - - /** This method is used to find the previous comment from the active cell in Spreadsheet. - * @returns {boolean} - */ - findPrevComment(): boolean; - - /** This method is used to get comment data for the specified cell. - * @param {HTMLElement} Pass the DOM element to get comment data as object. - * @returns {any} - */ - getComment(cell: HTMLElement): any; - - /** This method is used to set new comment in Spreadsheet. - * @param {string|Array} Optional. If we pass the range comment will set in the range otherwise it will set with selected cells. - * @param {string} Optional. Pass the comment data. - * @param {boolean} Optional. Pass {{'`true`' | markdownify}} to show comment in edit mode - * @param {boolean} Optional. Pass {{'`true`' | markdownify}} to show the user name - * @returns {void} - */ - setComment(range: string | any[], data: string, showEditPanel: boolean, showUserName: boolean): void; - - /** This method is used to show all the comments in the Spreadsheet. - * @returns {void} - */ - showAllComments(): void; - - /** This method is used to show or hide the specific comment in the Spreadsheet. - * @param {HTMLElement} Optional. Pass the cell DOM element to show or hide its comment. If pass empty argument active cell will processed. - * @returns {void} - */ - showHideComment(targetCell: HTMLElement): void; - } - - export interface XLCMenu { - - /** This method is used to dynamically add items in the context menu. - * @param {string} Specifies the context menu type in which the item to be inserted. - * @param {Array} Pass the items to be inserted - * @param {string} Specifies the type of operation to be performed - * @returns {void} - */ - addItem(target: string, itemColl: any[], operation: string): void; - - /** This method is used to change data source in the context menu. - * @param {string} Specifies the context menu type to bind the data source. - * @param {Array} Pass the data source to be binded - * @returns {void} - */ - changeDataSource(target: string, data: any[]): void; - - /** This method is used to disable the items in the context menu. - * @param {string} Specifies the context menu type in which the item to be disabled. - * @param {Array} Specifies the Menu Item id collection to be disabled - * @returns {void} - */ - disableItem(target: string, idxColl: any[]): void; - - /** This method is used to enable the items in the context menu. - * @param {string} Specifies the context menu type in which the item to be enabled. - * @param {Array} Specifies the Menu Item id collection to be enabled - * @returns {void} - */ - enableItem(target: string, idxColl: any[]): void; - - /** This method is used to remove the items in the context menu. - * @param {string} Specifies the context menu type in which the item to be removed. - * @param {Array} Specifies the Menu Item id collection to be removed - * @returns {void} - */ - removeItem(target: string, idxColl: any[]): void; - } - - export interface XLDragDrop { - - /** This method is used to drag and drop the selected range of cells to destination range in the Spreadsheet. - * @param {any|Array} Pass the source range to perform drag and drop. - * @param {any|Array} Pass the destination range to drop the dragged cells. - * @returns {void} - */ - moveRangeTo(sourceRange: any | any[], destinationRange: any | any[]): void; - } - - export interface XLDragFill { - - /** This method is used to perform auto fill in Spreadsheet. - * @param {any} Pass the options to perform auto fill in Spreadsheet. - * @returns {void} - */ - autoFill(options: any): void; - - /** This method is used to hide the auto fill element in the Spreadsheet. - * @returns {void} - */ - hideAutoFillElement(): void; - - /** This method is used to hide the auto fill options in the Spreadsheet. - * @returns {void} - */ - hideAutoFillOptions(): void; - - /** This method is used to set position of the auto fill element in the Spreadsheet. - * @param {boolean} Pass the isDragFill option as {{'`boolean`' | markdownify}} value to show auto fill options in Spreadsheet. - * @returns {void} - */ - positionAutoFillElement(isDragFill: boolean): void; - } - - export interface XLEdit { - - /** This method is used to calculate formulas in the specified sheet. - * @param {number} Optional. If sheet index is specified, then it will calculate formulas in the specified sheet only else it will calculate formulas in all sheets. - * @returns {void} - */ - calcNow(sheetIdx: number): void; - - /** This method is used to edit a particular cell based on the row index and column index in the Spreadsheet. - * @param {number} Pass the row index to edit particular cell. - * @param {number} Pass the column index to edit particular cell. - * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to maintain previous cell value. - * @returns {void} - */ - editCell(rowIdx: number, colIdx: number, oldData: boolean): void; - - /** This method is used to get the property value of particular cell, based on the row and column index in the Spreadsheet. - * @param {number} Pass the row index to get the property value. - * @param {number} Pass the column index to get the property value. - * @param {string} Optional. Pass the property name that you want("value", "value2", "type", "cFormatRule", "range", "thousandSeparator", "rule", "format", "border", "picture", - * "chart", "calcValue", "align", "hyperlink", "formats", "borders", "tformats", "tborders", "isFilterHeader", "filterState", "tableName", "comment", "formatStr", - * "decimalPlaces", "cellType"). - * @param {number} Optional. Pass the index of the sheet. - * @returns {any|string|Array} - */ - getPropertyValue(rowIdx: number, colIdx: number, prop: string, sheetIdx: number): any | string | any[]; - - /** This method is used to get the property value in specified cell in Spreadsheet. - * @param {HTMLElement} Pass the cell element to get property value. - * @param {string} Pass the property name that you want ("value", "value2", "type", "cFormatRule", "range", "thousandSeparator", "rule", "format", "border", - * "picture", "chart", "calcValue", "align", "hyperlink", "formats", "borders", "tformats", "tborders", "isFilterHeader", "filterState", "tableName", - * "comment", "formatStr", "decimalPlaces", "cellType"). - * @param {number} Pass the index of sheet. - * @returns {any|string|Array} - */ - getPropertyValueByElem(elem: HTMLElement, property: string, sheetIdx: number): any | string | any[]; - - /** This method is used to save the edited cell value in the Spreadsheet. - * @returns {void} - */ - saveCell(): void; - - /** This method is used to update a particular cell value in the Spreadsheet. - * @param {any} Pass row index and column index of the cell. - * @param {string|number} Pass the cell value. - * @returns {void} - */ - updateCell(cell: any, value: string | number): void; - - /** This method is used to update a particular cell value and its format in the Spreadsheet. - * @param {any} Pass row index and column index of the cell. - * @param {string|number} Pass the cell value. - * @param {string} Pass the class name to update format. - * @param {number} Pass sheet index. - * @returns {void} - */ - updateCellValue(cellIdx: any, val: string | number, formatClass: string, sheetIdx: number): void; - } - - export interface XLExport { - - /** This method is used to save the sheet data as Excel ,CSV or PDF document (.xls, .xlsx .csv, .pdf) in Spreadsheet. - * @param {string} Pass the export type that you want. - * @returns {void} - */ - export(type: string): void; - - /** This method is used to get the export properties in the Spreadsheet. - * @returns {any} - */ - getExportProps(): any; - } - - export interface XLFilter { - - /** This method is used to clear the filter in filtered columns in the Spreadsheet. - * @returns {void} - */ - clearFilter(): void; - - /** This method is used to apply filter for the selected range of cells in the Spreadsheet. - * @param {string|Array} Pass the range of the selected cells. - * @returns {void} - */ - filter(range: string | any[]): void; - - /** This method is used to apply filter for the column by active cell's value in the Spreadsheet. - * @returns {void} - */ - filterByActiveCell(): void; - } - - export interface XLFormat { - - /** This method is used to add the font to the Ribbon font family dropdown. - * @param {string} Font name which needs to add into the font family option. - * @returns {void} - */ - addFontFamily(fontName: string): void; - - /** This method is used to convert table range to normal range. - * @param {any} Pass the sheet index and table id. - * @returns {void} - */ - convertToRange(options: any): void; - - /** This method is used to create a table for the selected range of cells in the Spreadsheet. - * @param {any} Pass the table object. - * @param {string|Array} Optional. If the range is specified, then it will create table in the specified range else it will use the current selected range. - * @returns {string} - */ - createTable(tableObject: any, range: string | any[]): string; - - /** This method is used to set format style and values in a cell or range of cells. - * @param {any} Pass the formatObject which contains style, type, format, groupSeparator and decimalPlaces. - * @param {string} Pass the range to format cells. - * @returns {void} - */ - format(formatObj: any, range: string): void; - - /** This method is used to remove the font from the Ribbon font family dropdown. - * @param {string} Font name which needs to remove from the font family drop down. - * @returns {void} - */ - removeFontFamily(fontName: string): void; - - /** This method is used to remove the style in the specified range. - * @param {Array|string} Pass the cell range . - * @param {any} Optional. Pass the options for which the style gets removed. - * @returns {void} - */ - removeStyle(range: any[] | string, options: any): void; - - /** This method is used to remove table with specified tableId in the Spreadsheet. - * @param {number} Pass the tableId that you want to remove. - * @returns {void} - */ - removeTable(tableId: number): void; - - /** This method is used to update the decimal places for numeric value for the selected range of cells in the Spreadsheet. - * @param {string} Pass the decimal places type in IncreaseDecimal/DecreaseDecimal. - * @param {string|Array} Pass the range. - * @returns {void} - */ - updateDecimalPlaces(type: string, range: string | any[]): void; - - /** This method is used to update the format for the selected range of cells in the Spreadsheet. - * @param {any} Pass the format object that you want to update. - * @param {Array} Optional. If the range is specified, then it will update format in the specified range else it will use the current selected range. - * @returns {void} - */ - updateFormat(formatObj: any, range: any[]): void; - - /** This method is used to update the unique format for selected range of cells in the Spreadsheet. - * @param {string} Pass the unique format class. - * @param {Array} Optional. If the range is specified, then it will update format in the specified range else it will use the current selected range. - * @returns {void} - */ - updateUniqueFormat(formatClass: string, range: any[]): void; - } - - export interface XLFreeze { - - /** This method is used to freeze columns upto the specified column index in the Spreadsheet. - * @param {number} Index of the column to be freeze. - * @returns {void} - */ - freezeColumns(colIdx: number): void; - - /** This method is used to freeze the first column in the Spreadsheet. - * @returns {void} - */ - freezeLeftColumn(): void; - - /** This method is used to freeze rows and columns before the specified cell in the Spreadsheet. - * @param {number} Index of the row to be freeze. - * @param {number} Index of the column to be freeze. - * @returns {void} - */ - freezePanes(rowIdx: number, colIdx: number): void; - - /** This method is used to freeze rows upto the specified row index in the Spreadsheet. - * @param {number} Index of the row to be freeze. - * @returns {void} - */ - freezeRows(rowIdx: number): void; - - /** This method is used to freeze the top row in the Spreadsheet. - * @returns {void} - */ - freezeTopRow(): void; - - /** This method is used to unfreeze the frozen rows and columns in the Spreadsheet. - * @returns {void} - */ - unfreezePanes(): void; - } - - export interface XLPivot { - - /** This property is used to clear the pivot table list in Spreadsheet. - * @param {string} Pass the name of the pivot table. - * @returns {void} - */ - clearPivotFieldList(pivotName: string): void; - - /** This method is used to create pivot table. - * @param {string} It specifies the range for which the pivot table is created. - * @param {string} It specifies the location in which the pivot table is created. - * @param {string} It specifies the name of the pivot table. - * @param {any} Pass the pivot table settings. - * @param {any} Pass the pivot range, sheet index, address and data source . - * @returns {string} - */ - createPivotTable(range: string, location: string, name: string, settings: any, pvt: any): string; - - /** This method is used to delete the pivot table which is selected. - * @param {string} Pass the name of the pivot table. - * @returns {void} - */ - deletePivotTable(pivotName: string): void; - - /** This method is used to refresh data in pivot table. - * @param {string} Optional. Pass the name of the pivot table. - * @param {number} Optional. Pass the index of the sheet. - * @returns {void} - */ - refreshDataSource(name: string, sheetIdx: number): void; - } - - export interface XLPrint { - - /** This method is used to print the selected contents in the Spreadsheet. - * @returns {void} - */ - printSelection(): void; - - /** This method is used to print the entire contents in the active sheet. - * @returns {void} - */ - printSheet(): void; - } - - export interface XLResize { - - /** This method is used to fit the height of rows in the Spreadsheet. - * @param {Array} Optional. Pass row index collection that you want to fit its height. - * @returns {void} - */ - fitHeight(rowIndexes: any[]): void; - - /** This method is used to fit the width of columns in the Spreadsheet. - * @param {Array} Optional. Pass column index collection that you want to fit its width. - * @returns {void} - */ - fitWidth(colIndexes: any[]): void; - - /** This method is used to get the column width of the specified column index in the Spreadsheet. - * @param {number} Pass the column index. - * @returns {number} - */ - getColWidth(colIdx: number): number; - - /** This method is used to get the row height of the specified row index in the Spreadsheet. - * @param {number} Pass the row index which you want to find its height. - * @returns {number} - */ - getRowHeight(rowIdx: number): number; - - /** This method is used to set the column width of the specified column index in the Spreadsheet. - * @param {number} Pass the column index. - * @param {number} Pass the width value that you want to set. - * @returns {void} - */ - setColWidth(colIdx: number, size: number): void; - - /** This method is used to set the row height of the specified row index in the Spreadsheet. - * @param {number} Pass the row index. - * @param {number} Pass the height value that you want to set. - * @returns {void} - */ - setRowHeight(rowIdx: number, size: number): void; - } - - export interface XLRibbon { - - /** This method is used to add a new item in the backstage. - * @param {any} Specifies the item to be added in the backstage. - * @param {number} pass the index of the item to be added in the backstage. - * @returns {void} - */ - addBackStageItem(pageItem: any, index: number): void; - - /** This method is used to dynamically add the contextual tabs in the ribbon. - * @param {any} Specifies the contextual tab set object. - * @param {number} pass the index of the contextual tab. - * @returns {void} - */ - addContextualTabs(contextualTabSet: any, index: number): void; - - /** This method is used to dynamically add the menu item in the file menu. - * @param {Array} Specifies the item to be added - * @param {number} pass the index of the menu item. - * @returns {void} - */ - addMenuItem(item: any[], index: number): void; - - /** This method is used to add a new name in the Spreadsheet name manager. - * @param {string} Pass the name that you want to define in name manager. - * @param {string} Pass the cell reference. - * @param {string} Optional. Pass comment, if you want. - * @param {number} Optional. Pass the sheet index. - * @returns {void} - */ - addNamedRange(name: string, refersTo: string, comment: string, sheetIdx: number): void; - - /** This method is used to dynamically add the tab in the ribbon. - * @param {Array} Specifies the text to be displayed in the tab. - * @param {number} pass the groups to be displayed in the ribbon tab. - * @param {number} pass the index of the tab. - * @returns {void} - */ - addTab(tabText: any[], ribbonGroups: number, index: number): void; - - /** This method is used to dynamically add the tab group in the ribbon. - * @param {number} Specifies the ribbon tab index. - * @param {any} pass the groups to be displayed in the ribbon tab. - * @param {number} pass the index of the ribbon group. - * @returns {void} - */ - addTabGroup(tabIndex: number, tabGroup: any, groupIndex: number): void; - - /** This method is used to insert the few type (SUM, MAX, MIN, AVG, COUNT) of formulas in the selected range of cells in the Spreadsheet. - * @param {string} To pass the type("SUM","MAX","MIN","AVG","COUNT"). - * @param {string|Array} If range is specified, it will apply auto sum for the specified range else it will use the current selected range. - * @returns {void} - */ - autoSum(type: string, range: string | any[]): void; - - /** This method is used to hide the file menu in the ribbon tab. - * @returns {void} - */ - hideMenu(): void; - - /** This method is used to remove the item from the backstage in the spreadsheet. - * @param {number} Specifies the index of the item to be removed from backstage. - * @returns {void} - */ - removeBackStageItem(index: number): void; - - /** This method is used to remove the menu item form file menu in spreadsheet. - * @param {number} Specifies the index of the item to be removed from the file menu. - * @returns {void} - */ - removeMenuItem(index: number): void; - - /** This method is used to delete the defined name in the Spreadsheet name manager. - * @param {string} Pass the defined name that you want to remove from name manager. - * @returns {void} - */ - removeNamedRange(name: string): void; - - /** This method is used to remove the tab form ribbon in the spreadsheet. - * @param {number} Specifies the index of the tab to be removed from the ribbon. - * @param {boolean} pass the boolean value to remove the tab from ribbon - * @returns {void} - */ - removeTab(index: number, isRemoveMenu: boolean): void; - - /** This method is used to remove the tab group form ribbon in the spreadsheet. - * @param {number} Specifies the index of the tab group to be removed from the ribbon. - * @param {string} Specifies the text to be displayed in the tab group - * @returns {void} - */ - removeTabGroup(tabIndex: number, groupText: string): void; - - /** This method is used to show the file menu in the ribbon tab. - * @returns {void} - */ - showMenu(): void; - - /** This method is used to update the menu item in the file menu. - * @param {any} Specifies the menu item to be updated in the ribbon - * @param {number} pass the index of the item to be updated - * @returns {void} - */ - updateMenuItem(item: any, index: number): void; - - /** This method is used to update the ribbon icons in the Spreadsheet. - * @returns {void} - */ - updateRibbonIcons(): void; - } - - export interface XLSearch { - - /** This method is used to find and replace all data by workbook in the Spreadsheet. - * @param {string} Pass the search data. - * @param {string} Pass the replace data. - * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to match with case-sensitive. - * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to match with entire cell contents. - * @returns {void} - */ - replaceAllByBook(findData: string, replaceData: string, isCSen: boolean, isEMatch: boolean): void; - - /** This method is used to find and replace all data by sheet in Spreadsheet. - * @param {string} Pass the search data. - * @param {string} Pass the replace data. - * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to match with case-sensitive. - * @param {boolean} Pass {{'`true`' | markdownify}}, if you want to match with entire cell contents. - * @returns {void} - */ - replaceAllBySheet(findData: string, replaceData: string, isCSen: boolean, isEMatch: boolean): void; - } - - export interface XLSelection { - - /** This method is used to clear the selection of the active sheet in the Spreadsheet. - * @returns {void} - */ - clearAll(): void; - - /** This method is used to get the selected cells element based on specified sheet index in the Spreadsheet. - * @param {number} Pass the sheet index to get the cells element. - * @returns {HTMLElement} - */ - getSelectedCells(sheetIdx: number): HTMLElement; - - /** This method is used to refresh the selection in the Spreadsheet. - * @param {Array|string} Optional. Pass range to refresh selection. - * @returns {void} - */ - refreshSelection(range: any[] | string): void; - - /** This method is used to select a single column in the Spreadsheet. - * @param {number} Pass the column index value. - * @returns {void} - */ - selectColumn(colIdx: number): void; - - /** This method is used to select entire columns in a specified range (start index and end index) in the Spreadsheet. - * @param {number} Pass the column start index. - * @param {number} Pass the column end index. - * @returns {void} - */ - selectColumns(startIdx: number, endIdx: number): void; - - /** This method is used to select the specified range of cells in the Spreadsheet. - * @param {string} Pass range which want to select. - * @returns {void} - */ - selectRange(range: string): void; - - /** This method is used to select a single row in the Spreadsheet. - * @param {number} Pass the row index value. - * @returns {void} - */ - selectRow(rowIdx: number): void; - - /** This method is used to select entire rows in a specified range (start index and end index) in the Spreadsheet. - * @param {number} Pass the start row index. - * @param {number} Pass the end row index. - * @returns {void} - */ - selectRows(startIdx: number, endIdx: number): void; - - /** This method is used to select all cells in active sheet. - * @returns {void} - */ - selectSheet(): void; - } - - export interface XLShape { - - /** This method is used to set a picture in the Spreadsheet. - * @param {string} Pass the range of the cell. - * @param {string} Pass the path of the specified image. - * @param {number} Optional. Pass the width of the image that you want to set. - * @param {number} Optional. Pass the height of the image that you want to set. - * @param {number} Optional. Pass the top of the image that you want to set. - * @param {number} Optional. Pass the left of the image that you want to set. - * @returns {string} - */ - setPicture(range: string, url: string, width: number, height: number, top: number, left: number): string; - } - - export interface XLSort { - - /** This method is used to sort a particular range of cells based on its cell or font color in the Spreadsheet. - * @param {string} Pass {{'`PutCellColor`' | markdownify}} to sort by cell color or {{'`PutFontColor`' | markdownify}} for sort by font color. - * @param {any} Pass the HEX color code to sort. - * @param {string} Pass the range - * @returns {void} - */ - sortByColor(operation: string, color: any, range: string): void; - - /** This method is used to sort a particular range of cells based on its values in the Spreadsheet. - * @param {Array|string} Pass the range to sort. - * @param {string} Pass the column name. - * @param {any} Pass the direction to sort (ascending or descending). - * @returns {boolean} - */ - sortByRange(range: any[] | string, columnName: string, direction: any): boolean; - } - - export interface XLValidate { - - /** This method is used to apply data validation rules in a selected range of cells based on the defined condition in the Spreadsheet. - * @param {string|Array} If range is specified, it will apply rules for the specified range else it will use the current selected range. - * @param {Array} Pass the validation condition, value1 and value2. - * @param {string} Pass the data type. - * @param {boolean} Pass {{'`true`' | markdownify}} if you ignore blank values. - * @param {boolean} Pass {{'`true`' | markdownify}} if you want to show an error alert. - * @returns {void} - */ - applyDVRules(range: string | any[], values: any[], type: string, required: boolean, showErrorAlert: boolean): void; - - /** This method is used to clear the applied validation rules in a specified range of cells in the Spreadsheet. - * @param {string|Array} Optional. If range is specified, it will clear rules for the specified range else it will use the current selected range. - * @returns {void} - */ - clearDV(range: string | any[]): void; - - /** This method is used to highlight invalid data in a specified range of cells in the Spreadsheet. - * @param {string|Array} Optional. If range is specified, it will clear rules for the specified range else it will use the current selected range. - * @returns {void} - */ - highlightInvalidData(range: string | any[]): void; - } - - export interface Model { - - /** Gets or sets an active sheet index in the Spreadsheet. By defining this value, you can specify which sheet should be active in workbook. - * @Default {1} - */ - activeSheetIndex?: number; - - /** Gets or sets a value that indicates whether to enable or disable auto rendering of cell type in the Spreadsheet. - * @Default {false} - */ - allowAutoCellType?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable auto fill feature in the Spreadsheet. - * @Default {true} - */ - allowAutoFill?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable auto sum feature in the Spreadsheet. - * @Default {true} - */ - allowAutoSum?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable cell format feature in the Spreadsheet. By enabling this, you can customize styles and number formats. - * @Default {true} - */ - allowCellFormatting?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable cell type feature in the Spreadsheet. - * @Default {false} - */ - allowCellType?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable chart feature in the Spreadsheet. By enabling this feature, you can create and customize charts in Spreadsheet. - * @Default {true} - */ - allowCharts?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable clear feature in the Spreadsheet. - * @Default {true} - */ - allowClear?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable clipboard feature in the Spreadsheet. By enabling this feature, you can perform cut/copy and paste operations in Spreadsheet. - * @Default {true} - */ - allowClipboard?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable comment feature in the Spreadsheet. By enabling this, you can add/delete/modify comments in Spreadsheet. - * @Default {true} - */ - allowComments?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable Conditional Format feature in the Spreadsheet. By enabling this, you can apply formatting to the selected range - * of cells based on the provided conditions (Greater than, Less than, Equal, Between, Contains, etc.). - * @Default {true} - */ - allowConditionalFormats?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable data validation feature in the Spreadsheet. - * @Default {true} - */ - allowDataValidation?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable the delete action in the Spreadsheet. By enabling this feature, you can delete existing rows, columns, cells and sheet. - * @Default {true} - */ - allowDelete?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable drag and drop feature in the Spreadsheet. - * @Default {true} - */ - allowDragAndDrop?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable the edit action in the Spreadsheet. - * @Default {true} - */ - allowEditing?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable filtering feature in the Spreadsheet. Filtering can be used to limit the data displayed using required criteria. - * @Default {true} - */ - allowFiltering?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable table feature in the Spreadsheet. By enabling this, you can render table in selected range. - * @Default {true} - */ - allowFormatAsTable?: boolean; - - /** Get or sets a value that indicates whether to enable or disable format painter feature in the Spreadsheet. By enabling this feature, you can copy - * the format from the selected range and apply it to another range. - * @Default {true} - */ - allowFormatPainter?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable formula bar in the Spreadsheet. - * @Default {true} - */ - allowFormulaBar?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable freeze pane support in Spreadsheet. By enabling this feature, you can use freeze top row, - * freeze first column and freeze panes options. - * @Default {true} - */ - allowFreezing?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable hyperlink feature in the Spreadsheet. By enabling this feature, you can add hyperlink which is used to - * easily navigate to the cell reference from one sheet to another or a web page. - * @Default {true} - */ - allowHyperlink?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable import feature in the Spreadsheet. By enabling this feature, you can open existing Spreadsheet documents. - * @Default {true} - */ - allowImport?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable the insert action in the Spreadsheet. By enabling this feature, you can insert new rows, columns, cells and sheet. - * @Default {true} - */ - allowInsert?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable keyboard navigation feature in the Spreadsheet. - * @Default {true} - */ - allowKeyboardNavigation?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable lock cell feature in the Spreadsheet. - * @Default {true} - */ - allowLockCell?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable merge feature in the Spreadsheet. - * @Default {true} - */ - allowMerging?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable overflow feature in the Spreadsheet. - * @Default {true} - */ - allowOverflow?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable resizing feature in the Spreadsheet. By enabling this feature, you can change the column width and - * row height by dragging its header boundaries. - * @Default {true} - */ - allowResizing?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable find and replace feature in the Spreadsheet. By enabling this, you can easily find and replace - * a specific value in the sheet or workbook. By using goto behavior, you can select and highlight all cells that contains specific data or data types. - * @Default {true} - */ - allowSearching?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable selection in the Spreadsheet. By enabling this feature, selected items will be highlighted. - * @Default {true} - */ - allowSelection?: boolean; - - /** Gets or sets a value that indicates whether to enable the sorting feature in the Spreadsheet. - * @Default {true} - */ - allowSorting?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable undo and redo feature in the Spreadsheet. - * @Default {true} - */ - allowUndoRedo?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable wrap text feature in the Spreadsheet. By enabling this, cell content can wrap to the next line, - * if the cell content exceeds the boundary of the cell. - * @Default {true} - */ - allowWrap?: boolean; - - /** Gets or sets a value that indicates to define the width of the activation panel in Spreadsheet. - * @Default {300} - */ - apWidth?: number; - - /** Gets or sets an object that indicates to customize the auto fill behavior in the Spreadsheet. - */ - autoFillSettings?: AutoFillSettings; - - /** Gets or sets an object that indicates to customize the chart behavior in the Spreadsheet. - */ - chartSettings?: ChartSettings; - - /** Gets or sets a value that defines the number of columns displayed in the sheet. - * @Default {21} - */ - columnCount?: number; - - /** Gets or sets a value that indicates to define the common width for each column in the Spreadsheet. - * @Default {64} - */ - columnWidth?: number; - - /** Gets or sets a value to add root CSS class for customizing Spreadsheet skins. - */ - cssClass?: string; - - /** Gets or sets a value that indicates custom formulas in Spreadsheet. - * @Default {[]} - */ - customFormulas?: any[]; - - /** Gets or sets a value that indicates whether to enable or disable context menu in the Spreadsheet. - * @Default {true} - */ - enableContextMenu?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable pivot table in the Spreadsheet. - * @Default {false} - */ - enablePivotTable?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable touch support in the Spreadsheet. - * @Default {true} - */ - enableTouch?: boolean; - - /** Gets or sets an object that indicates to customize the exporting behavior in Spreadsheet. - */ - exportSettings?: ExportSettings; - - /** Gets or sets an object that indicates to customize the format behavior in the Spreadsheet. - */ - formatSettings?: FormatSettings; - - /** Gets or sets an object that indicates to customize the import behavior in the Spreadsheet. - */ - importSettings?: ImportSettings; - - /** Gets or sets a value that indicates whether to enable or disable readonly support in the Spreadsheet. - * @Default {false} - */ - isReadOnly?: boolean; - - /** Gets or sets a value that indicates whether to customizing the user interface (UI) as locale-specific in order to display regional data (i.e.) - * in a language and culture specific to a particular country or region. - * @Default {en-US} - */ - locale?: string; - - /** Gets or sets a value that indicates name manager in Spreadsheet. - */ - nameManager?: NameManager[]; - - /** Gets or sets an object that indicates to customize the picture behavior in the Spreadsheet. - */ - pictureSettings?: PictureSettings; - - /** Gets or sets an object that indicates to customize the print option in Spreadsheet. - */ - printSettings?: PrintSettings; - - /** Gets or sets an object that indicates to customize the ribbon settings in Spreadsheet. - */ - ribbonSettings?: RibbonSettings; - - /** Gets or sets a value that indicates whether to define the number of rows to be displayed in the sheet. - * @Default {20} - */ - rowCount?: number; + /** Returns the drag cells range object. + */ + dragAndDropRange?: any; - /** Gets or sets a value that indicates to define the common height for each row in the sheet. - * @Default {20} - */ - rowHeight?: number; + /** Returns the cell Overwriting alert option value. + */ + preventAlert?: boolean; - /** Gets or sets an object that indicates to customize the scroll options in the Spreadsheet. - */ - scrollSettings?: ScrollSettings; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Gets or sets an object that indicates to customize the selection options in the Spreadsheet. - */ - selectionSettings?: SelectionSettings; + /** Returns the target item. + */ + target?: HTMLElement; - /** Gets or sets a value that indicates to define the number of sheets to be created at the initial load. - * @Default {1} - */ - sheetCount?: number; + /** Returns the name of the event. + */ + type?: string; - /** Gets or sets an object that indicates to customize the sheet behavior in Spreadsheet. - */ - sheets?: Sheet[]; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Gets or sets a value that indicates whether to show or hide pager in the Spreadsheet. - * @Default {true} - */ - showPager?: boolean; + export interface BeforeEditCommentEventArgs { - /** Gets or sets a value that indicates whether to show or hide ribbon in the Spreadsheet. - * @Default {true} - */ - showRibbon?: boolean; + /** Returns the sheet index. + */ + sheetIdx?: number; - /** This is used to set the number of undo-redo steps in the Spreadsheet. - * @Default {20} - */ - undoRedoStep?: number; + /** Returns the comment cell index. + */ + cellIndex?: any; - /** Define the username for the Spreadsheet which is displayed in comment. - * @Default {User Name} - */ - userName?: string; + /** Returns the disable option value. + */ + disable?: boolean; - /** Triggered for every action before its starts. */ - actionBegin?(e: ActionBeginEventArgs): void; + /** Returns the Spreadsheet model. + */ + model?: any; - /** Triggered for every action complete. */ - actionComplete?(e: ActionCompleteEventArgs): void; + /** Returns the value of the comment + */ + value?: string; - /** Triggered when the auto fill operation begins. */ - autoFillBegin?(e: AutoFillBeginEventArgs): void; + /** Returns the name of the event. + */ + type?: string; - /** Triggered when the auto fill operation completes. */ - autoFillComplete?(e: AutoFillCompleteEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Triggered before the batch save. */ - beforeBatchSave?(e: BeforeBatchSaveEventArgs): void; + export interface BeforeOpenEventArgs { - /** Triggered before the cells to be formatted. */ - beforeCellFormat?(e: BeforeCellFormatEventArgs): void; + /** Returns the target element. + */ + target?: HTMLElement; - /** Triggered before the cell selection. */ - beforeCellSelect?(e: BeforeCellSelectEventArgs): void; + /** Returns the name of the event. + */ + type?: string; - /** Triggered before the selected cells are dropped. */ - beforeDrop?(e: BeforeDropEventArgs): void; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Triggered while start to edit the comment. */ - beforeEditComment?(e: BeforeEditCommentEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Triggered before the contextmenu is open. */ - beforeOpen?(e: BeforeOpenEventArgs): void; + export interface BeforePanelOpenEventArgs { - /** Triggered before the activation panel is open. */ - beforePanelOpen?(e: BeforePanelOpenEventArgs): void; + /** Returns the sheet index. + */ + sheetIdx?: number; - /** Triggered when click on sheet cell. */ - cellClick?(e: CellClickEventArgs): void; + /** Returns the activation panel element. + */ + activationPanel?: any; - /** Triggered when the cell is edited. */ - cellEdit?(e: CellEditEventArgs): void; + /** Returns the range option value. + */ + range?: any; - /** Triggered while cell is formatting. */ - cellFormatting?(e: CellFormattingEventArgs): void; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Triggered when mouse hover on cell in sheets. */ - cellHover?(e: CellHoverEventArgs): void; + /** Returns the name of the event. + */ + type?: string; - /** Triggered when save the edited cell. */ - cellSave?(e: CellSaveEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Triggered when the cell is selected. */ - cellSelected?(e: CellSelectedEventArgs): void; + export interface CellClickEventArgs { - /** Triggered when click the contextmenu items. */ - contextMenuClick?(e: ContextMenuClickEventArgs): void; + /** Returns the click cell element. + */ + cell?: HTMLElement; - /** Triggered when the selected cells are being dragged. */ - drag?(e: DragEventArgs): void; + /** Returns the column index of clicked cell. + */ + columnIndex?: number; - /** Triggered when you start to drag the picture or chart. */ - dragShape?(e: DragShapeEventArgs): void; + /** Returns the row index of clicked cell. + */ + rowIndex?: number; - /** Triggered when the selected cells are initiated to drag. */ - dragStart?(e: DragStartEventArgs): void; + /** Returns the column name of clicked cell. + */ + columnName?: string; - /** Triggered when the selected cells are dropped. */ - drop?(e: DropEventArgs): void; + /** Returns the column information. + */ + columnObject?: any; - /** Triggered before the range editing starts. */ - editRangeBegin?(e: EditRangeBeginEventArgs): void; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Triggered after range editing completes. */ - editRangeComplete?(e: EditRangeCompleteEventArgs): void; + /** Returns the name of the event. + */ + type?: string; - /** Triggered when the key is pressed down. */ - keyDown?(e: KeyDownEventArgs): void; + /** Returns the target element. + */ + target?: HTMLElement; - /** Triggered when the key is released. */ - keyUp?(e: KeyUpEventArgs): void; + /** Returns the value of the cell. + */ + value?: string; - /** Triggered before the sheet is loaded. */ - load?(e: LoadEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Triggered after the sheet is loaded. */ - loadComplete?(e: LoadCompleteEventArgs): void; + export interface CellEditEventArgs { - /** Triggered every click of the menu item. */ - menuClick?(e: MenuClickEventArgs): void; + /** Returns the click cell element. + */ + cell?: HTMLElement; - /** Triggered when a file is imported. */ - onImport?(e: OnImportEventArgs): void; + /** Returns the columnName of clicked cell. + */ + columnName?: string; - /** Triggered when import sheet is failed to open. */ - openFailure?(e: OpenFailureEventArgs): void; + /** Returns the column field information. + */ + columnObject?: any; - /** Triggered when pager item is clicked in the Spreadsheet. */ - pagerClick?(e: PagerClickEventArgs): void; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Triggered when you start resizing the chart, picture, row and column. */ - resizeStart?(e: ResizeStartEventArgs): void; + /** Returns the name of the event. + */ + type?: string; - /** Triggered after end of resizing the chart, picture, row and column. */ - resizeEnd?(e: ResizeEndEventArgs): void; + /** Returns the target element. + */ + target?: HTMLElement; - /** Triggered when click on the ribbon. */ - ribbonClick?(e: RibbonClickEventArgs): void; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Triggered when the chart series rendering. */ - seriesRendering?(e: SeriesRenderingEventArgs): void; + export interface CellFormattingEventArgs { - /** Triggered when click the ribbon tab. */ - tabClick?(e: TabClickEventArgs): void; + /** Returns the sheet index + */ + SheetIdx?: number; - /** Triggered when select the ribbon tab. */ - tabSelect?(e: TabSelectEventArgs): void; - } + /** Returns the applied style format object + */ + Format?: any; - export interface ActionBeginEventArgs { + /** Returns the cell index. + */ + Cell?: number; - /** Returns the applied style format object. - */ - afterFormat?: any; + /** Returns the name of the CSS theme. + */ + cssClass?: string; - /** Returns the applied style format object. - */ - beforeFormat?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the target element. + */ + target?: HTMLElement; - /** Returns the cell range. - */ - range?: any[]; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; + } - /** Returns the action format. - */ - reqType?: string; + export interface CellHoverEventArgs { - /** Returns goto index while paging. - */ - gotoIdx?: number; + /** Returns the target element. + */ + target?: HTMLElement; - /** Returns boolean value. If create new sheet it returns true. - */ - newSheet?: boolean; + /** Returns the name of the event. + */ + type?: string; - /** Return column name while sorting. - */ - columnName?: string; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns selected columns while sorting or filtering begins. - */ - colSelected?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns sort direction while sort action begins. - */ - sortDirection?: string; - } + export interface CellSaveEventArgs { - export interface ActionCompleteEventArgs { + /** Returns the save cell element. + */ + cell?: HTMLElement; - /** Returns Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the columnName of clicked cell. + */ + columnName?: string; - /** Returns the applied cell format object. - */ - selectedCell?: any[] | any; + /** Returns the column field information. + */ + columnObject?: any; - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the index of the row. + */ + rowIndex?: number; - /** Returns the request type. - */ - reqType?: string; + /** Returns the index of the column. + */ + colIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the cell previous value. + */ + pValue?: string; - export interface AutoFillBeginEventArgs { + /** Returns the name of the event. + */ + type?: string; - /** Returns auto fill begin cell range. - */ - dataRange?: any[]; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns which direction drag the auto fill. - */ - direction?: string; + /** Returns the target element. + */ + target?: HTMLElement; - /** Returns fill cells range. - */ - fillRange?: any[]; + /** Returns the cell value. + */ + value?: string; + } - /** Returns the auto fill type. - */ - fillType?: string; + export interface CellSelectedEventArgs { - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the active sheet index. + */ + sheetIdx?: number; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the selected range. + */ + selectedRange?: any[]; - /** Returns the name of the event. - */ - type?: string; + /** Returns the target element. + */ + target?: HTMLElement; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - export interface AutoFillCompleteEventArgs { + /** Returns the name of the event. + */ + type?: string; - /** Returns auto fill begin cell range. - */ - dataRange?: any[]; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns which direction to drag the auto fill. - */ - direction?: string; + export interface ContextMenuClickEventArgs { - /** Returns fill cells range. - */ - fillRange?: any[]; + /** Returns target element Id. + */ + Id?: string; - /** Returns the auto fill type. - */ - fillType?: string; + /** Returns the target element. + */ + element?: HTMLElement; - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns event information. + */ + event?: any; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns target element and event information. + */ + events?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns target element parent Id. + */ + parentId?: string; - export interface BeforeBatchSaveEventArgs { + /** Returns target element parent text. + */ + parentText?: string; - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns target element text. + */ + text?: string; - /** Returns the query, primary key,batch changes for the data Source. - */ - dataSetting?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns the changed record object. - */ - batchChanges?: any; - } + /** Returns the cancel option value. + */ + cancel?: boolean; + } - export interface BeforeCellFormatEventArgs { + export interface DragEventArgs { - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the sheet index. + */ + sheetIdx?: number; - /** Returns the applied style format object. - */ - format?: any; + /** Returns the current cell row and column index. + */ + currentCell?: any; - /** Returns the selected cells. - */ - cells?: any[] | any; + /** Returns the drag cells range object. + */ + dragAndDropRange?: any; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the target item. + */ + target?: HTMLElement; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the name of the event. + */ + type?: string; - export interface BeforeCellSelectEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the previous cell range. - */ - prevRange?: any[]; + export interface DragShapeEventArgs { - /** Returns the current cell range. - */ - currRange?: any[]; + /** Returns the Spreadsheet model. + */ + model?: any; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the name of the event. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the target element. + */ + target?: HTMLElement; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns the cancel option value. + */ + cancel?: boolean; + } - export interface BeforeDropEventArgs { + export interface DragStartEventArgs { - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the sheet index. + */ + sheetIdx?: number; - /** Returns the current cell row and column index. - */ - currentCell?: any; + /** Returns the current cell row and column index. + */ + currentCell?: any; - /** Returns the drag cells range object. - */ - dragAndDropRange?: any; + /** Returns the drag cells range object. + */ + dragAndDropRange?: any; - /** Returns the cell Overwriting alert option value. - */ - preventAlert?: boolean; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the target item. + */ + target?: HTMLElement; - /** Returns the target item. - */ - target?: HTMLElement; + /** Returns the name of the event. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the cancel option value. - */ - cancel?: boolean; - } + export interface DropEventArgs { - export interface BeforeEditCommentEventArgs { + /** Returns the sheet index. + */ + sheetIdx?: number; - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the current cell row and column index. + */ + currentCell?: any; - /** Returns the comment cell index. - */ - cellIndex?: any; + /** Returns the drag cells range object. + */ + dragAndDropRange?: any; - /** Returns the disable option value. - */ - disable?: boolean; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the Spreadsheet model. - */ - model?: any; + /** Returns the target item. + */ + target?: HTMLElement; - /** Returns the value of the comment - */ - value?: string; + /** Returns the name of the event. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the cancel option value. - */ - cancel?: boolean; - } + export interface EditRangeBeginEventArgs { - export interface BeforeOpenEventArgs { + /** Returns the sheet index. + */ + sheetIdx?: number; - /** Returns the target element. - */ - target?: HTMLElement; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the name of the event. - */ - type?: string; + /** Returns the range option value. + */ + range?: any; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the name of the event. + */ + type?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns the cancel option value. + */ + cancel?: boolean; + } - export interface BeforePanelOpenEventArgs { + export interface EditRangeCompleteEventArgs { - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the sheet index. + */ + sheetIdx?: number; - /** Returns the activation panel element. - */ - activationPanel?: any; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the range option value. - */ - range?: any; + /** Returns the range option value. + */ + range?: any; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the name of the event. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the cancel option value. - */ - cancel?: boolean; - } + export interface KeyDownEventArgs { - export interface CellClickEventArgs { + /** Returns the sheet index. + */ + sheetIndex?: number; - /** Returns the click cell element. - */ - cell?: HTMLElement; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the column index of clicked cell. - */ - columnIndex?: number; + /** Returns the boolean value. + */ + isCommentEdit?: boolean; - /** Returns the row index of clicked cell. - */ - rowIndex?: number; + /** Returns the boolean value. + */ + isEdit?: boolean; - /** Returns the column name of clicked cell. - */ - columnName?: string; + /** Returns the boolean value. + */ + isSheetRename?: boolean; - /** Returns the column information. - */ - columnObject?: any; + /** Returns the target element. + */ + target?: HTMLElement; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the name of the event. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the target element. - */ - target?: HTMLElement; + export interface KeyUpEventArgs { - /** Returns the value of the cell. - */ - value?: string; + /** Returns the sheet index. + */ + sheetIndex?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - export interface CellEditEventArgs { + /** Returns the boolean value. + */ + isCommentEdit?: boolean; - /** Returns the click cell element. - */ - cell?: HTMLElement; + /** Returns the boolean value. + */ + isEdit?: boolean; - /** Returns the columnName of clicked cell. - */ - columnName?: string; + /** Returns the boolean value. + */ + isSheetRename?: boolean; - /** Returns the column field information. - */ - columnObject?: any; + /** Returns the target element. + */ + target?: HTMLElement; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the name of the event. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the target element. - */ - target?: HTMLElement; + export interface LoadEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns the name of the event. + */ + type?: string; - export interface CellFormattingEventArgs { + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the sheet index - */ - SheetIdx?: number; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the applied style format object - */ - Format?: any; + /** Returns the active sheet index. + */ + sheetIndex?: number; + } - /** Returns the cell index. - */ - Cell?: number; + export interface LoadCompleteEventArgs { - /** Returns the name of the CSS theme. - */ - cssClass?: string; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the name of the event. - */ - type?: string; + /** Returns the name of the event. + */ + type?: string; - /** Returns the target element. - */ - target?: HTMLElement; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; - } + export interface MenuClickEventArgs { - export interface CellHoverEventArgs { + /** Returns menu click element. + */ + element?: HTMLElement; - /** Returns the target element. - */ - target?: HTMLElement; + /** Returns the event information. + */ + event?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns target element parent Id. + */ + parentId?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns target element parent text. + */ + parentText?: string; - export interface CellSaveEventArgs { + /** Returns target element text. + */ + text?: string; - /** Returns the save cell element. - */ - cell?: HTMLElement; + /** Returns the name of the event. + */ + type?: string; - /** Returns the columnName of clicked cell. - */ - columnName?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the column field information. - */ - columnObject?: any; + export interface OnImportEventArgs { - /** Returns the index of the row. - */ - rowIndex?: number; + /** Returns the name of the event. + */ + type?: string; - /** Returns the index of the column. - */ - colIndex?: number; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cell previous value. - */ - pValue?: string; + /** Returns the imported data. + */ + importData?: any; + } - /** Returns the name of the event. - */ - type?: string; + export interface OpenFailureEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the failure type. + */ + failureType?: string; - /** Returns the target element. - */ - target?: HTMLElement; + /** Returns the status index. + */ + status?: number; - /** Returns the cell value. - */ - value?: string; - } + /** Returns the status in text. + */ + statusText?: string; - export interface CellSelectedEventArgs { + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the active sheet index. - */ - sheetIdx?: number; + /** Returns the name of the event. + */ + type?: string; - /** Returns the selected range. - */ - selectedRange?: any[]; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the target element. - */ - target?: HTMLElement; + export interface PagerClickEventArgs { - /** Returns Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the active sheet index. + */ + activeSheet?: number; - /** Returns the name of the event. - */ - type?: string; + /** Returns the new sheet index. + */ + gotoSheet?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns whether new sheet icon is clicked. + */ + newSheet?: boolean; - export interface ContextMenuClickEventArgs { + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns target element Id. - */ - Id?: string; + /** Returns the name of the event. + */ + type?: string; - /** Returns the target element. - */ - element?: HTMLElement; + /** Returns the target element. + */ + target?: HTMLElement; - /** Returns event information. - */ - event?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns target element and event information. - */ - events?: any; + export interface ResizeStartEventArgs { - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the column index which column you start to resize. + */ + colIndex?: number; - /** Returns target element parent Id. - */ - parentId?: string; + /** Returns the row index which row you start to resize. + */ + rowIndex?: number; - /** Returns target element parent text. - */ - parentText?: string; + /** Returns the Spreadsheet model. + */ + model?: any; - /** Returns target element text. - */ - text?: string; + /** Returns type of the request. + */ + reqType?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the name of the event. + */ + type?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns the cancel option value. + */ + cancel?: boolean; + } - export interface DragEventArgs { + export interface ResizeEndEventArgs { - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the column index which you resized. + */ + colIndex?: number; - /** Returns the current cell row and column index. - */ - currentCell?: any; + /** Returns old width of the column or shape. + */ + oldWidth?: number; - /** Returns the drag cells range object. - */ - dragAndDropRange?: any; + /** Returns new width of the column or shape. + */ + newWidth?: number; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the row index which you resized. + */ + rowIndex?: number; - /** Returns the target item. - */ - target?: HTMLElement; + /** Returns old height of the row or shape. + */ + oldHeight?: number; - /** Returns the name of the event. - */ - type?: string; + /** Returns new height of the row or shape. + */ + newHeight?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns the Spreadsheet model. + */ + model?: any; - export interface DragShapeEventArgs { + /** Returns type of the request. + */ + reqType?: string; - /** Returns the Spreadsheet model. - */ - model?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns the name of the event. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the target element. - */ - target?: HTMLElement; + export interface RibbonClickEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns element Id. + */ + Id?: string; - export interface DragStartEventArgs { + /** Returns target information. + */ + prop?: any; - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the current cell row and column index. - */ - currentCell?: any; + /** Returns status. + */ + status?: boolean; - /** Returns the drag cells range object. - */ - dragAndDropRange?: any; + /** Returns isChecked in boolean. + */ + isChecked?: boolean; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the name of the event. + */ + type?: string; - /** Returns the target item. - */ - target?: HTMLElement; + /** Returns the target element. + */ + target?: HTMLElement; - /** Returns the name of the event. - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the cancel option value. - */ - cancel?: boolean; - } + export interface SeriesRenderingEventArgs { - export interface DropEventArgs { + /** Returns chart data and chart information. + */ + data?: any; - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the chart model. + */ + model?: ej.Spreadsheet.Model; - /** Returns the current cell row and column index. - */ - currentCell?: any; + /** Returns the name of the event. + */ + type?: string; - /** Returns the drag cells range object. - */ - dragAndDropRange?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; + } - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + export interface TabClickEventArgs { - /** Returns the target item. - */ - target?: HTMLElement; + /** Returns the active tab index. + */ + activeIndex?: number; - /** Returns the name of the event. - */ - type?: string; + /** Returns active tab header element. + */ + activeHeader?: any; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Returns previous active tab header element. + */ + prevActiveHeader?: any; - export interface EditRangeBeginEventArgs { + /** Returns previous active tab index. + */ + prevActiveIndex?: number; - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; + + /** Returns the name of the event. + */ + type?: string; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Returns the target element. + */ + target?: HTMLElement; + + /** Returns the cancel option value. + */ + cancel?: boolean; + } + + export interface TabSelectEventArgs { - /** Returns the range option value. - */ - range?: any; + /** Returns the active tab index. + */ + activeIndex?: number; + + /** Returns active tab header element. + */ + activeHeader?: any; - /** Returns the name of the event. - */ - type?: string; + /** Returns previous active tab header element. + */ + prevActiveHeader?: any; + + /** Returns previous active tab index. + */ + prevActiveIndex?: number; + + /** Returns the Spreadsheet model. + */ + model?: ej.Spreadsheet.Model; + + /** Returns the name of the event. + */ + type?: string; + + /** Returns the target element. + */ + target?: HTMLElement; + + /** Returns the cancel option value. + */ + cancel?: boolean; + } + + export interface AutoFillSettings { + + /** This property is used to set fillType unit in Spreadsheet. It has five types which are CopyCells, FillSeries, FillFormattingOnly, FillWithoutFormatting and FlashFill. + * @Default {ej.Spreadsheet.AutoFillOptions.FillSeries} + */ + fillType?: ej.Spreadsheet.AutoFillOptions|string; + + /** Gets or sets a value that indicates to enable or disable auto fill options in the Spreadsheet. + * @Default {true} + */ + showFillOptions?: boolean; + } + + export interface ChartSettings { + + /** Gets or sets a value that defines the chart height in Spreadsheet. + * @Default {220} + */ + height?: number; + + /** Gets or sets a value that defines the chart width in the Spreadsheet. + * @Default {440} + */ + width?: number; + } + + export interface ExportSettings { + + /** Gets or sets a value that indicates whether to enable or disable save feature in Spreadsheet. By enabling this feature, you can save existing Spreadsheet. + * @Default {true} + */ + allowExporting?: boolean; + + /** Gets or sets a value that indicates to define csvUrl for export to CSV format. + * @Default {null} + */ + csvUrl?: string; + + /** Gets or sets a value that indicates to define excelUrl for export to excel format. + * @Default {null} + */ + excelUrl?: string; + + /** Gets or sets a value that indicates to define password while export to excel format. + * @Default {null} + */ + password?: string; + + /** Gets or sets a value that indicates to define pdfUrl for export to PDF format. + * @Default {null} + */ + pdfUrl?: string; + } + + export interface FormatSettings { + + /** Gets or sets a value that indicates whether to enable or disable cell border feature in the Spreadsheet. + * @Default {true} + */ + allowCellBorder?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable decimal places in the Spreadsheet. + * @Default {true} + */ + allowDecimalPlaces?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable font family feature in Spreadsheet. + * @Default {true} + */ + allowFontFamily?: boolean; + } + + export interface ImportSettings { + + /** Sets import mapper to perform import feature in Spreadsheet. + */ + importMapper?: string; + + /** Gets or sets a value that indicates whether to enable or disable import while initial loading. + * @Default {false} + */ + importOnLoad?: boolean; + + /** Sets import URL to access the online files in the Spreadsheet. + */ + importUrl?: string; + + /** Gets or sets a value that indicates to define password while importing in the Spreadsheet. + */ + password?: string; + } + + export interface NameManager { + + /** Specifies the name for the cell or a range. + */ + name?: string; + + /** Specifies the address for the cell or a range. + */ + refersto?: string; + } + + export interface PictureSettings { + + /** Gets or sets a value that indicates whether to enable or disable picture feature in Spreadsheet. By enabling this, you can add pictures in Spreadsheet. + * @Default {true} + */ + allowPictures?: boolean; + + /** Gets or sets a value that indicates to define height to picture in the Spreadsheet. + * @Default {220} + */ + height?: number; + + /** Gets or sets a value that indicates to define width to picture in the Spreadsheet. + * @Default {440} + */ + width?: number; + } + + export interface PrintSettings { + + /** Gets or sets a value that indicates whether to enable or disable page setup support for printing in Spreadsheet. + * @Default {true} + */ + allowPageSetup?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable page size support for printing in Spreadsheet. + * @Default {false} + */ + allowPageSize?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable print feature in the Spreadsheet. + * @Default {true} + */ + allowPrinting?: boolean; + } + + export interface RibbonSettingsApplicationTabMenuSettings { + + /** Gets or sets a value that indicates whether to enable or disable isAppend property in ribbon settings. + * @Default {false} + */ + isAppend?: boolean; + + /** Specifies the data source to append in application tab. + * @Default {[]} + */ + dataSource?: any[]; + } + + export interface RibbonSettingsApplicationTab { + + /** Gets or sets a value that indicates to set application tab type in Spreadsheet. It has two types, Menu and Backstage. + * @Default {ej.Ribbon.ApplicationTabType.Backstage} + */ + type?: ej.Ribbon.ApplicationTabType|string; + + /** Gets or sets an object that indicates menu settings for application tab in Spreadsheet. + */ + menuSettings?: RibbonSettingsApplicationTabMenuSettings; + } + + export interface RibbonSettings { + + /** Gets or sets an object that indicates application tab settings in Spreadsheet. + */ + applicationTab?: RibbonSettingsApplicationTab; + } + + export interface ScrollSettings { + + /** Gets or sets a value that indicates whether to enable or disable scrolling in Spreadsheet. + * @Default {true} + */ + allowScrolling?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable sheet on demand. By enabling this, it render only the active sheet element while paging remaining sheets are + * created one by one. + * @Default {false} + */ + allowSheetOnDemand?: boolean; + + /** Gets or sets a value that indicates whether to enable or disable virtual scrolling feature in the Spreadsheet. + * @Default {true} + */ + allowVirtualScrolling?: boolean; + + /** Gets or sets the value that indicates to define the height of spreadsheet. + * @Default {100%} + */ + height?: number|string; + + /** Gets or sets the value that indicates whether to enable or disable responsive mode in the Spreadsheet. + * @Default {true} + */ + isResponsive?: boolean; + + /** Gets or sets a value that indicates to set scroll mode in Spreadsheet. It has two scroll modes, Normal and Infinite. + * @Default {ej.Spreadsheet.scrollMode.Infinite} + */ + scrollMode?: ej.Spreadsheet.scrollMode|string; + + /** Gets or sets the value that indicates to define the height of the spreadsheet. + * @Default {100%} + */ + width?: number|string; + } + + export interface SelectionSettings { + + /** Gets or sets a value that indicates to define active cell in spreadsheet. + */ + activeCell?: string; + + /** Gets or sets a value that indicates to define animation time while selection in the Spreadsheet. + * @Default {0.001} + */ + animationTime?: number; + + /** Gets or sets a value that indicates to enable or disable animation while selection. + * @Default {false} + */ + enableAnimation?: boolean; + + /** Gets or sets a value that indicates to set selection type in Spreadsheet. It has three types which are Column, Row and Default. + * @Default {ej.Spreadsheet.SelectionType.Default} + */ + selectionType?: ej.Spreadsheet.SelectionType|string; + + /** Gets or sets a value that indicates to set selection unit in Spreadsheet. It has three types which are Single, Range and MultiRange. + * @Default {ej.Spreadsheet.SelectionUnit.MultiRange} + */ + selectionUnit?: ej.Spreadsheet.SelectionUnit|string; + } + + export interface SheetsBorder { + + /** Specifies border type in the Spreadsheet. + */ + type?: ej.Spreadsheet.BorderType|string; + + /** Specifies border color for range of cells in Spreadsheet. + */ + color?: string; + + /** To apply border for the specified range of cell. + */ + range?: string; + } + + export interface SheetsCFormatRule { + + /** Specifies the conditions to apply for the range of cells in Spreadsheet. + */ + action?: ej.Spreadsheet.CFormatRule|string; + + /** Specifies the color to apply for the range of cell while conditional formatting. + */ + color?: ej.Spreadsheet.CFormatHighlightColor|string; + + /** Specifies the inputs for conditional formatting in Spreadsheet. + * @Default {[]} + */ + inputs?: any[]; + + /** Specifies the range for conditional formatting in Spreadsheet. + */ + range?: string; + } + + export interface SheetsRangeSetting { + + /** Gets or sets the data to render the Spreadsheet. + * @Default {null} + */ + dataSource?: any; + + /** Specifies the header styles for the headers in datasource range. + * @Default {null} + */ + headerStyles?: any; + + /** Specifies the primary key for the datasource in Spreadsheet. + */ + primaryKey?: string; + + /** Specifies the query for the datasource in Spreadsheet. + * @Default {null} + */ + query?: any; + + /** Gets or sets a value that indicates whether to enable or disable the datasource header in Spreadsheet. + * @Default {true} + */ + showHeader?: boolean; + + /** Specifies the start cell for the datasource range in Spreadsheet. + * @Default {A1} + */ + startCell?: string; + } + + export interface SheetsRowsCellsComment { + + /** Get or sets the value that indicates whether to show or hide comments in Spreadsheet. + * @Default {false} + */ + isVisible?: boolean; + + /** Specifies the value for the comment in Spreadsheet. + */ + value?: string; + } + + export interface SheetsRowsCellsFormat { + + /** Specifies the number of decimal places for the given input. + * @Default {2} + */ + decimalPlaces?: number; + + /** Specifies the string format for the given input. + */ + formatStr?: string; + + /** Specifies the thousand separator for the given input. + * @Default {false} + */ + thousandSeparator?: boolean; + + /** Specifies the type of the format in Spreadsheet. + */ + type?: string; + } + + export interface SheetsRowsCellsHyperlink { + + /** Specifies the web address for the hyperlink of a cell. + */ + webAddr?: string; + + /** Specifies the cell address for the hyperlink of a cell. + */ + cellAddr?: string; + + /** Specifies the sheet index to which the cell is referred. + * @Default {1} + */ + sheetIndex?: number; + } + + export interface SheetsRowsCellsStyle { + + /** Specifies the background color of a cell in the Spreadsheet. + */ + backgroundColor?: string; + + /** Specifies the font color of a cell in the Spreadsheet. + */ + color?: string; + + /** Specifies the font weight of a cell in the Spreadsheet. + */ + fontWeight?: string; + } + + export interface SheetsRowsCell { + + /** Specifies the comment for a cell in Spreadsheet. + * @Default {null} + */ + comment?: SheetsRowsCellsComment; + + /** Specifies the format of a cell in Spreadsheet. + * @Default {null} + */ + format?: SheetsRowsCellsFormat; + + /** Specifies the hyperlink for a cell in Spreadsheet. + * @Default {null} + */ + hyperlink?: SheetsRowsCellsHyperlink; + + /** Specifies the index of a cell in Spreadsheet. + * @Default {0} + */ + index?: number; + + /** Specifies whether to lock or unlock a particular cell. + * @Default {false} + */ + isLocked?: boolean; + + /** Specifies the styles of a cell in Spreadsheet. + * @Default {null} + */ + style?: SheetsRowsCellsStyle; + + /** Specifies the value for a cell in Spreadsheet. + */ + value?: string; + } + + export interface SheetsRow { + + /** Gets or sets the height of a row in Spreadsheet. + * @Default {20} + */ + height?: number; + + /** Specifies the cells of a row in Spreadsheet. + * @Default {[]} + */ + cells?: SheetsRowsCell[]; + + /** Gets or sets the index of a row in Spreadsheet. + * @Default {0} + */ + index?: number; + } + + export interface Sheet { + + /** Specifies the border for the cell in the Spreadsheet. + * @Default {[]} + */ + border?: SheetsBorder[]; + + /** Specifies the cell types for a cell or range in Spreadsheet. + * @Default {[]} + */ + cellTypes?: any[]; + + /** Specifies the conditional formatting for the range of cell in Spreadsheet. + * @Default {[]} + */ + cFormatRule?: SheetsCFormatRule[]; + + /** Gets or sets a value that indicates to define column count in the Spreadsheet. + * @Default {21} + */ + colCount?: number; + + /** Gets or sets a value that indicates to define column width in the Spreadsheet. + * @Default {64} + */ + columnWidth?: number; + + /** Gets or sets the data to render the Spreadsheet. + * @Default {null} + */ + dataSource?: any; + + /** Gets or sets a value that indicates whether to enable or disable field as column header in the Spreadsheet. + * @Default {false} + */ + fieldAsColumnHeader?: boolean; + + /** Gets or sets a value to freeze rows in the Spreadsheet. + * @Default {0} + */ + frozenRows?: number; + + /** Gets or sets a value to freeze columns in the Spreadsheet. + * @Default {0} + */ + frozenColumns?: number; + + /** Specifies the header styles for the headers in datasource range. + * @Default {null} + */ + headerStyles?: any; + + /** To hide the specified columns in Spreadsheet. + * @Default {[]} + */ + hideColumns?: any[]; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** To hide the specified rows in Spreadsheet. + * @Default {[]} + */ + hideRows?: any[]; - export interface EditRangeCompleteEventArgs { + /** To merge specified ranges in Spreadsheet. + * @Default {[]} + */ + mergeCells?: any[]; - /** Returns the sheet index. - */ - sheetIdx?: number; + /** Specifies the primary key for the datasource in Spreadsheet. + */ + primaryKey?: string; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Specifies the query for the dataSource in Spreadsheet. + * @Default {null} + */ + query?: any; - /** Returns the range option value. - */ - range?: any; + /** Specifies single range or multiple range settings for a sheet in Spreadsheet. + * @Default {[]} + */ + rangeSettings?: SheetsRangeSetting[]; - /** Returns the name of the event. - */ - type?: string; + /** Gets or sets a value that indicates to define row count in the Spreadsheet. + * @Default {20} + */ + rowCount?: number; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Specifies the rows for a sheet in Spreadsheet. + * @Default {[]} + */ + rows?: SheetsRow[]; - export interface KeyDownEventArgs { + /** Gets or sets a value that indicates whether to show or hide grid lines in the Spreadsheet. + * @Default {true} + */ + showGridlines?: boolean; - /** Returns the sheet index. - */ - sheetIndex?: number; + /** Gets or sets a value that indicates whether to enable or disable the datasource header in Spreadsheet. + * @Default {true} + */ + showHeader?: boolean; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Gets or sets a value that indicates whether to show or hide headings in the Spreadsheet. + * @Default {true} + */ + showHeadings?: boolean; - /** Returns the boolean value. - */ - isCommentEdit?: boolean; + /** Specifies the start cell for the datasource range in Spreadsheet. + * @Default {A1} + */ + startCell?: string; + } - /** Returns the boolean value. - */ - isEdit?: boolean; + enum AutoFillOptions { - /** Returns the boolean value. - */ - isSheetRename?: boolean; + ///Specifies the CopyCells property in AutoFillOptions. + CopyCells, - /** Returns the target element. - */ - target?: HTMLElement; + ///Specifies the FillSeries property in AutoFillOptions. + FillSeries, - /** Returns the name of the event. - */ - type?: string; + ///Specifies the FillFormattingOnly property in AutoFillOptions. + FillFormattingOnly, - /** Returns the cancel option value. - */ - cancel?: boolean; - } + ///Specifies the FillWithoutFormatting property in AutoFillOptions. + FillWithoutFormatting, - export interface KeyUpEventArgs { + ///Specifies the FlashFill property in AutoFillOptions. + FlashFill + } - /** Returns the sheet index. - */ - sheetIndex?: number; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + enum scrollMode { - /** Returns the boolean value. - */ - isCommentEdit?: boolean; + ///To enable Infinite scroll mode for Spreadsheet. + Infinite, - /** Returns the boolean value. - */ - isEdit?: boolean; + ///To enable Normal scroll mode for Spreadsheet. + Normal + } - /** Returns the boolean value. - */ - isSheetRename?: boolean; - /** Returns the target element. - */ - target?: HTMLElement; + enum SelectionType { - /** Returns the name of the event. - */ - type?: string; + ///To select only Column in Spreadsheet. + Column, - /** Returns the cancel option value. - */ - cancel?: boolean; - } + ///To select only Row in Spreadsheet. + Row, - export interface LoadEventArgs { + ///To select both Column/Row in Spreadsheet. + Default + } - /** Returns the name of the event. - */ - type?: string; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + enum SelectionUnit { - /** Returns the cancel option value. - */ - cancel?: boolean; + ///To enable Single selection in Spreadsheet + Single, - /** Returns the active sheet index. - */ - sheetIndex?: number; - } + ///To enable Range selection in Spreadsheet + Range, - export interface LoadCompleteEventArgs { + ///To enable MultiRange selection in Spreadsheet + MultiRange + } - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; - /** Returns the name of the event. - */ - type?: string; + enum BorderType { - /** Returns the cancel option value. - */ - cancel?: boolean; - } + ///To apply top border for the given range of cell. + Top, - export interface MenuClickEventArgs { + ///To apply left border for the given range of cell. + Left, - /** Returns menu click element. - */ - element?: HTMLElement; + ///To apply right border for the given range of cell. + Right, - /** Returns the event information. - */ - event?: any; + ///To apply bottom border for the given range of cell. + Bottom, - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + ///To apply outside border for the given range of cell. + OutSide, - /** Returns target element parent Id. - */ - parentId?: string; + ///To apply all border for the given range of cell. + AllBorder, - /** Returns target element parent text. - */ - parentText?: string; + ///To apply thick box border for the given range of cell. + ThickBox, - /** Returns target element text. - */ - text?: string; + ///To apply thick bottom border for the given range of cell. + ThickBottom, - /** Returns the name of the event. - */ - type?: string; + ///To apply top and bottom border for the given range of cell. + TopandBottom, - /** Returns the cancel option value. - */ - cancel?: boolean; - } + ///To apply top and thick bottom border for the given range of cell. + TopandThickBottom + } - export interface OnImportEventArgs { - /** Returns the name of the event. - */ - type?: string; + enum CFormatRule { - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + ///To identify greater than values in the given range of cells. + GreaterThan, - /** Returns the cancel option value. - */ - cancel?: boolean; + ///To identify less than values in the given range of cells. + LessThan, - /** Returns the imported data. - */ - importData?: any; - } + ///To identify in between values in the given range of cells. + Between, - export interface OpenFailureEventArgs { + ///To identify the equal values in the given range of cells. + EqualTo, - /** Returns the failure type. - */ - failureType?: string; + ///To identify the specified text in the range of cells. + TextContains, - /** Returns the status index. - */ - status?: number; + ///To identify the specified date in the range of cells. + DateOccurs + } - /** Returns the status in text. - */ - statusText?: string; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + enum CFormatHighlightColor { - /** Returns the name of the event. - */ - type?: string; + ///Highlights red with dark red text color. + RedFillwithDarkRedText, - /** Returns the cancel option value. - */ - cancel?: boolean; - } + ///Highlights yellow with dark yellow text color. + YellowFillwithDarkYellowText, - export interface PagerClickEventArgs { + ///Highlights green with dark green text color. + GreenFillwithDarkGreenText, - /** Returns the active sheet index. - */ - activeSheet?: number; + ///Highlights with red fill. + RedFill, - /** Returns the new sheet index. - */ - gotoSheet?: number; + ///Highlights with red text. + RedText + } - /** Returns whether new sheet icon is clicked. - */ - newSheet?: boolean; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + enum ChartProperties { - /** Returns the name of the event. - */ - type?: string; + ///Specifies to make the data label center of the chart. + DataLabelCenter, - /** Returns the target element. - */ - target?: HTMLElement; + ///Specifies to make the data label inside base of the chart. + DataLabelInsideBase, - /** Returns the cancel option value. - */ - cancel?: boolean; - } + ///Specifies to make the data label inside end of the chart. + DataLabelInsideEnd, - export interface ResizeStartEventArgs { + ///Specifies to make the data label none of the chart. + DataLabelNone, - /** Returns the column index which column you start to resize. - */ - colIndex?: number; + ///Specifies to make the data label outside end of the chart. + DataLabelOutsideEnd, - /** Returns the row index which row you start to resize. - */ - rowIndex?: number; + ///Specifies to make the legends to bottom of the chart. + LegendsBottom, - /** Returns the Spreadsheet model. - */ - model?: any; + ///Specifies to make the legends to left of the chart. + LegendsLeft, - /** Returns type of the request. - */ - reqType?: string; + ///Specifies to make the legends to none of the chart. + LegendsNone, - /** Returns the name of the event. - */ - type?: string; + ///Specifies to make the legends to right of the chart. + LegendsRight, - /** Returns the cancel option value. - */ - cancel?: boolean; - } + ///Specifies to make the legends to top of the chart. + LegendsTop, - export interface ResizeEndEventArgs { + ///To set the primary horizontal of the chart. + PrimaryHorizontal, - /** Returns the column index which you resized. - */ - colIndex?: number; + ///To set the primary horizontal axis title of the chart. + PrimaryHorizontalAxisTitle, - /** Returns old width of the column or shape. - */ - oldWidth?: number; + ///To set the primary major horizontal of the chart. + PrimaryMajorHorizontal, - /** Returns new width of the column or shape. - */ - newWidth?: number; + ///To set the primary major vertical of the chart. + PrimaryMajorVertical, - /** Returns the row index which you resized. - */ - rowIndex?: number; + ///To set the primary minor horizontal of the chart. + PrimaryMinorHorizontal, - /** Returns old height of the row or shape. - */ - oldHeight?: number; + ///To set the primary minor vertical of the chart. + PrimaryMinorVertical, - /** Returns new height of the row or shape. - */ - newHeight?: number; + ///To set the primary vertical of the chart. + PrimaryVertical, - /** Returns the Spreadsheet model. - */ - model?: any; + ///To set the primary vertical axis title of the chart. + PrimaryVerticalAxisTitle, - /** Returns type of the request. - */ - reqType?: string; + ///Specifies to make the title to center of the chart. + TitleCenter, - /** Returns the name of the event. - */ - type?: string; + ///Specifies to make the title to far of the chart. + TitleFar, - /** Returns the cancel option value. - */ - cancel?: boolean; - } + ///Specifies to make the title to near of the chart. + TitleNear, - export interface RibbonClickEventArgs { + ///Specifies to make the title to none of the chart. + TitleNone + } - /** Returns element Id. - */ - Id?: string; + } - /** Returns target information. - */ - prop?: any; + class PdfViewer extends ej.Widget { + static fn: PdfViewer; + constructor(element: JQuery | Element, options?: PdfViewer.Model); + static Locale: any; + model: PdfViewer.Model; + defaults: PdfViewer.Model; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; + /** Loads the document with the filename and displays it in PDF viewer. + * @param {string} File name to be loaded + * @returns {void} + */ + load(fileName: string): void; - /** Returns status. - */ - status?: boolean; + /** Shows/hides the toolbar in the PDF viewer. + * @param {boolean} shows/hides the toolbar + * @returns {void} + */ + showToolbar(show: boolean): void; + + /** Prints the PDF document. + * @returns {void} + */ + print(): void; + + /** Abort the printing function and restores the PDF viewer. + * @returns {void} + */ + abortPrint(): void; + + /** Shows/hides the print icon in the toolbar. + * @param {boolean} shows/hides print button in the toolbar + * @returns {void} + */ + showPrintTools(show: boolean): void; + + /** Downloads the PDF document being loaded in the ejPdfViewer control. + * @returns {void} + */ + download(): void; + + /** Shows/hides the download tool in the toolbar. + * @param {boolean} shows/hides download button in the toolbar + * @returns {void} + */ + showDownloadTool(show: boolean): void; + + /** Shows/hides the page navigation tools in the toolbar + * @param {boolean} shows/hides navigation tools in the toolbar + * @returns {void} + */ + showPageNavigationTools(show: boolean): void; + + /** Shows/hides the text markup annotation tools in the toolbar. + * @param {boolean} shows/hides text markup annotation tools in the toolbar + * @returns {void} + */ + showTextMarkupAnnotationTools(show: boolean): void; + + /** Navigates to the specific page in the PDF document. If the page is not available for the given pageNumber, PDF viewer retains the existing page in view. + * @param {number} navigates to the page number in the PDF document + * @returns {void} + */ + goToPage(pageNumber: number): void; + + /** Navigates to the last page of the PDF document. + * @returns {void} + */ + goToLastPage(): void; + + /** Navigates to the first page of PDF document. + * @returns {void} + */ + goToFirstPage(): void; + + /** Navigates to the next page of the PDF document. + * @returns {void} + */ + goToNextPage(): void; + + /** Navigates to the previous page of the PDF document. + * @returns {void} + */ + goToPreviousPage(): void; + + /** Shows/hides the zoom tools in the toolbar. + * @param {boolean} shows/hides zoom tools in the toolbar + * @returns {void} + */ + showMagnificationTools(show: boolean): void; + + /** Scales the page to fit the page in the container in the control. + * @returns {void} + */ + fitToPage(): void; + + /** Scales the page to fit the page width to the width of the container in the control. + * @returns {void} + */ + fitToWidth(): void; + + /** Magnifies the page to the next value in the zoom drop down list. + * @returns {void} + */ + zoomIn(): void; + + /** Shrinks the page to the previous value in the magnification in the drop down list. + * @returns {void} + */ + zoomOut(): void; + + /** Scales the page to the specified percentage ranging from 50 to 400. If the given zoomValue is less than 50 or greater than 400; the PDF viewer scales the page to 50 and 400 + * respectively. + * @param {number} zoom value for scaling the pages in the PDF Viewer + * @returns {void} + */ + zoomTo(zoomValue: number): void; + + /** Adds annotations to the PDF document. + * @param {ej.PdfViewer.AnnotationType} type of the annotation to be added in the PDF document. + * @returns {void} + */ + addAnnotation(annotationType: ej.PdfViewer.AnnotationType): void; + + /** Performs undo function for the included annotations in the PDF document. + * @returns {void} + */ + undo(): void; + + /** Performs redo function for the included annotations in the PDF document. + * @returns {void} + */ + redo(): void; + + /** Unloads the PDF document being displayed in the PDF viewer. + * @returns {void} + */ + unload(): void; + } + export namespace PdfViewer { + + export interface Model { + + /** Specifies the locale information of the PDF viewer. + */ + locale?: string; + + /** Specifies the toolbar settings. + */ + toolbarSettings?: ToolbarSettings; + + /** Specifies the name of the action method in the server. + */ + serverActionSettings?: ServerActionSettings; + + /** Sets the PDF Web API service URL + */ + serviceUrl?: string; + + /** Sets the PDF document path for initial loading. + */ + documentPath?: string; + + /** Enables or disables the text markup annotations. + */ + enableTextMarkupAnnotations?: boolean; + + /** Enables or disables the highlight annotation. + */ + enableHighlightAnnotation?: boolean; + + /** Enables or disables the underline annotation. + */ + enableUnderlineAnnotation?: boolean; + + /** Enables or disables the strikethrough annotation. + */ + enableStrikethroughAnnotation?: boolean; + + /** Gets/sets the settings of the strikethrough annotation. + */ + strikethroughSettings?: StrikethroughSettings; + + /** Gets/sets the settings of the underline annotation. + */ + underlineSettings?: UnderlineSettings; + + /** Gets/sets the settings of the highlight annotation. + */ + highlightSettings?: HighlightSettings; + + /** Specifies the type of the annotations. + */ + annotationType?: ej.PdfViewer.AnnotationType|string; + + /** Gets the total number of pages in PDF document. + */ + pageCount?: number; + + /** Gets the number of the page being displayed in the PDF viewer. + */ + currentPageNumber?: number; + + /** Gets the current zoom percentage of the PDF document in viewer. + */ + zoomPercentage?: number; + + /** Specifies the location of the supporting PDF service + */ + pdfService?: ej.PdfViewer.PdfService|string; + + /** Specifies the open state of the hyperlink in the PDF document. + */ + hyperlinkOpenState?: ej.PdfViewer.LinkTarget|string; + + /** Enables or disables the hyperlinks in PDF document. + */ + enableHyperlink?: boolean; + + /** Enables or disables the text selection in PDF document. + */ + enableTextSelection?: boolean; - /** Returns isChecked in boolean. - */ - isChecked?: boolean; + /** Enables or disables the responsiveness of the PDF viewer control during the window resize. + */ + isResponsive?: boolean; - /** Returns the name of the event. - */ - type?: string; + /** Checks whether the PDF document is edited. + */ + isDocumentEdited?: boolean; - /** Returns the target element. - */ - target?: HTMLElement; + /** Enables or disables the buffering of the PDF pages in the client side. + */ + allowClientBuffering?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Gets the name of the PDF document which loaded in the ejPdfViewer control for downloading. + */ + fileName?: string; - export interface SeriesRenderingEventArgs { + /** Triggers when the PDF document gets loaded and is ready to view in the Control. + */ + documentLoad?(e: DocumentLoadEventArgs): void; - /** Returns chart data and chart information. - */ - data?: any; + /** Triggers when the PDF document gets unloaded from the PDF viewer. + */ + documentUnload?(e: DocumentUnloadEventArgs): void; - /** Returns the chart model. - */ - model?: ej.Spreadsheet.Model; + /** Triggers when there is change in current page number. + */ + pageChange?(e: PageChangeEventArgs): void; - /** Returns the name of the event. - */ - type?: string; + /** Triggers when the ajax request is failed. + */ + ajaxRequestFailure?(e: AjaxRequestFailureEventArgs): void; - /** Returns the cancel option value. - */ - cancel?: boolean; - } + /** Triggers when there is change in the magnification value. + */ + zoomChange?(e: ZoomChangeEventArgs): void; - export interface TabClickEventArgs { + /** Triggers when hyperlink in the PDF Document is clicked + */ + hyperlinkClick?(e: HyperlinkClickEventArgs): void; - /** Returns the active tab index. - */ - activeIndex?: number; + /** Triggers before the printing starts. + */ + beforePrint?(e: BeforePrintEventArgs): void; - /** Returns active tab header element. - */ - activeHeader?: any; + /** Triggers after the printing is completed. + */ + afterPrint?(e: AfterPrintEventArgs): void; - /** Returns previous active tab header element. - */ - prevActiveHeader?: any; + /** Triggers when the mouse click is performed over the page of the PDF document. + */ + pageClick?(e: PageClickEventArgs): void; - /** Returns previous active tab index. - */ - prevActiveIndex?: number; + /** Triggers when an annotation is added over the page of the PDF document. + */ + annotationAdd?(e: AnnotationAddEventArgs): void; - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; - - /** Returns the name of the event. - */ - type?: string; + /** Triggers when an annotation is removed from the page of the PDF document. + */ + annotationRemove?(e: AnnotationRemoveEventArgs): void; - /** Returns the target element. - */ - target?: HTMLElement; - - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface TabSelectEventArgs { + /** Triggers when the property of the annotation is changed in the page of the PDF document. + */ + annotationPropertiesChange?(e: AnnotationPropertiesChangeEventArgs): void; - /** Returns the active tab index. - */ - activeIndex?: number; - - /** Returns active tab header element. - */ - activeHeader?: any; + /** Triggers when the client buffering process starts. + */ + bufferStart?(e: BufferStartEventArgs): void; - /** Returns previous active tab header element. - */ - prevActiveHeader?: any; - - /** Returns previous active tab index. - */ - prevActiveIndex?: number; - - /** Returns the Spreadsheet model. - */ - model?: ej.Spreadsheet.Model; - - /** Returns the name of the event. - */ - type?: string; - - /** Returns the target element. - */ - target?: HTMLElement; - - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface AutoFillSettings { - - /** This property is used to set fillType unit in Spreadsheet. It has five types which are CopyCells, FillSeries, FillFormattingOnly, FillWithoutFormatting and FlashFill. - * @Default {ej.Spreadsheet.AutoFillOptions.FillSeries} - */ - fillType?: ej.Spreadsheet.AutoFillOptions | string; - - /** Gets or sets a value that indicates to enable or disable auto fill options in the Spreadsheet. - * @Default {true} - */ - showFillOptions?: boolean; - } - - export interface ChartSettings { - - /** Gets or sets a value that defines the chart height in Spreadsheet. - * @Default {220} - */ - height?: number; - - /** Gets or sets a value that defines the chart width in the Spreadsheet. - * @Default {440} - */ - width?: number; - } - - export interface ExportSettings { - - /** Gets or sets a value that indicates whether to enable or disable save feature in Spreadsheet. By enabling this feature, you can save existing Spreadsheet. - * @Default {true} - */ - allowExporting?: boolean; - - /** Gets or sets a value that indicates to define csvUrl for export to CSV format. - * @Default {null} - */ - csvUrl?: string; - - /** Gets or sets a value that indicates to define excelUrl for export to excel format. - * @Default {null} - */ - excelUrl?: string; - - /** Gets or sets a value that indicates to define password while export to excel format. - * @Default {null} - */ - password?: string; - - /** Gets or sets a value that indicates to define pdfUrl for export to PDF format. - * @Default {null} - */ - pdfUrl?: string; - } - - export interface FormatSettings { - - /** Gets or sets a value that indicates whether to enable or disable cell border feature in the Spreadsheet. - * @Default {true} - */ - allowCellBorder?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable decimal places in the Spreadsheet. - * @Default {true} - */ - allowDecimalPlaces?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable font family feature in Spreadsheet. - * @Default {true} - */ - allowFontFamily?: boolean; - } - - export interface ImportSettings { - - /** Sets import mapper to perform import feature in Spreadsheet. - */ - importMapper?: string; - - /** Gets or sets a value that indicates whether to enable or disable import while initial loading. - * @Default {false} - */ - importOnLoad?: boolean; - - /** Sets import URL to access the online files in the Spreadsheet. - */ - importUrl?: string; - - /** Gets or sets a value that indicates to define password while importing in the Spreadsheet. - */ - password?: string; - } - - export interface NameManager { - - /** Specifies the name for the cell or a range. - */ - name?: string; - - /** Specifies the address for the cell or a range. - */ - refersto?: string; - } - - export interface PictureSettings { - - /** Gets or sets a value that indicates whether to enable or disable picture feature in Spreadsheet. By enabling this, you can add pictures in Spreadsheet. - * @Default {true} - */ - allowPictures?: boolean; - - /** Gets or sets a value that indicates to define height to picture in the Spreadsheet. - * @Default {220} - */ - height?: number; - - /** Gets or sets a value that indicates to define width to picture in the Spreadsheet. - * @Default {440} - */ - width?: number; - } - - export interface PrintSettings { - - /** Gets or sets a value that indicates whether to enable or disable page setup support for printing in Spreadsheet. - * @Default {true} - */ - allowPageSetup?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable page size support for printing in Spreadsheet. - * @Default {false} - */ - allowPageSize?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable print feature in the Spreadsheet. - * @Default {true} - */ - allowPrinting?: boolean; - } - - export interface RibbonSettingsApplicationTabMenuSettings { - - /** Gets or sets a value that indicates whether to enable or disable isAppend property in ribbon settings. - * @Default {false} - */ - isAppend?: boolean; - - /** Specifies the data source to append in application tab. - * @Default {[]} - */ - dataSource?: any[]; - } - - export interface RibbonSettingsApplicationTab { - - /** Gets or sets a value that indicates to set application tab type in Spreadsheet. It has two types, Menu and Backstage. - * @Default {ej.Ribbon.ApplicationTabType.Backstage} - */ - type?: ej.Ribbon.ApplicationTabType | string; - - /** Gets or sets an object that indicates menu settings for application tab in Spreadsheet. - */ - menuSettings?: RibbonSettingsApplicationTabMenuSettings; - } - - export interface RibbonSettings { - - /** Gets or sets an object that indicates application tab settings in Spreadsheet. - */ - applicationTab?: RibbonSettingsApplicationTab; - } - - export interface ScrollSettings { - - /** Gets or sets a value that indicates whether to enable or disable scrolling in Spreadsheet. - * @Default {true} - */ - allowScrolling?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable sheet on demand. By enabling this, it render only the active sheet element while paging remaining sheets are created one by one. - * @Default {false} - */ - allowSheetOnDemand?: boolean; - - /** Gets or sets a value that indicates whether to enable or disable virtual scrolling feature in the Spreadsheet. - * @Default {true} - */ - allowVirtualScrolling?: boolean; - - /** Gets or sets the value that indicates to define the height of spreadsheet. - * @Default {100%} - */ - height?: number | string; - - /** Gets or sets the value that indicates whether to enable or disable responsive mode in the Spreadsheet. - * @Default {true} - */ - isResponsive?: boolean; - - /** Gets or sets a value that indicates to set scroll mode in Spreadsheet. It has two scroll modes, Normal and Infinite. - * @Default {ej.Spreadsheet.scrollMode.Infinite} - */ - scrollMode?: ej.Spreadsheet.scrollMode | string; - - /** Gets or sets the value that indicates to define the height of the spreadsheet. - * @Default {100%} - */ - width?: number | string; - } - - export interface SelectionSettings { - - /** Gets or sets a value that indicates to define active cell in spreadsheet. - */ - activeCell?: string; - - /** Gets or sets a value that indicates to define animation time while selection in the Spreadsheet. - * @Default {0.001} - */ - animationTime?: number; - - /** Gets or sets a value that indicates to enable or disable animation while selection. - * @Default {false} - */ - enableAnimation?: boolean; - - /** Gets or sets a value that indicates to set selection type in Spreadsheet. It has three types which are Column, Row and Default. - * @Default {ej.Spreadsheet.SelectionType.Default} - */ - selectionType?: ej.Spreadsheet.SelectionType | string; - - /** Gets or sets a value that indicates to set selection unit in Spreadsheet. It has three types which are Single, Range and MultiRange. - * @Default {ej.Spreadsheet.SelectionUnit.MultiRange} - */ - selectionUnit?: ej.Spreadsheet.SelectionUnit | string; - } - - export interface SheetsBorder { - - /** - */ - type?: ej.Spreadsheet.BorderType | string; - - /** Specifies border color for range of cells in Spreadsheet. - */ - color?: string; - - /** To apply border for the specified range of cell. - */ - range?: string; - } - - export interface SheetsCFormatRule { - - /** Specifies the conditions to apply for the range of cells in Spreadsheet. - */ - action?: ej.Spreadsheet.CFormatRule | string; - - /** Specifies the color to apply for the range of cell while conditional formatting. - */ - color?: ej.Spreadsheet.CFormatHighlightColor | string; - - /** Specifies the inputs for conditional formatting in Spreadsheet. - * @Default {[]} - */ - inputs?: any[]; - - /** Specifies the range for conditional formatting in Spreadsheet. - */ - range?: string; - } - - export interface SheetsRangeSetting { - - /** Gets or sets the data to render the Spreadsheet. - * @Default {null} - */ - dataSource?: any; - - /** Specifies the header styles for the headers in datasource range. - * @Default {null} - */ - headerStyles?: any; - - /** Specifies the primary key for the datasource in Spreadsheet. - */ - primaryKey?: string; - - /** Specifies the query for the datasource in Spreadsheet. - * @Default {null} - */ - query?: any; - - /** Gets or sets a value that indicates whether to enable or disable the datasource header in Spreadsheet. - * @Default {true} - */ - showHeader?: boolean; - - /** Specifies the start cell for the datasource range in Spreadsheet. - * @Default {A1} - */ - startCell?: string; - } - - export interface SheetsRowsCellsComment { - - /** Get or sets the value that indicates whether to show or hide comments in Spreadsheet. - * @Default {false} - */ - isVisible?: boolean; - - /** Specifies the value for the comment in Spreadsheet. - */ - value?: string; - } - - export interface SheetsRowsCellsFormat { - - /** Specifies the number of decimal places for the given input. - * @Default {2} - */ - decimalPlaces?: number; - - /** Specifies the string format for the given input. - */ - formatStr?: string; - - /** Specifies the thousand separator for the given input. - * @Default {false} - */ - thousandSeparator?: boolean; - - /** Specifies the type of the format in Spreadsheet. - */ - type?: string; - } - - export interface SheetsRowsCellsHyperlink { - - /** Specifies the web address for the hyperlink of a cell. - */ - webAddr?: string; - - /** Specifies the cell address for the hyperlink of a cell. - */ - cellAddr?: string; - - /** Specifies the sheet index to which the cell is referred. - * @Default {1} - */ - sheetIndex?: number; - } - - export interface SheetsRowsCellsStyle { - - /** Specifies the background color of a cell in the Spreadsheet. - */ - backgroundColor?: string; - - /** Specifies the font color of a cell in the Spreadsheet. - */ - color?: string; - - /** Specifies the font weight of a cell in the Spreadsheet. - */ - fontWeight?: string; - } - - export interface SheetsRowsCell { - - /** Specifies the comment for a cell in Spreadsheet. - * @Default {null} - */ - comment?: SheetsRowsCellsComment; - - /** Specifies the format of a cell in Spreadsheet. - * @Default {null} - */ - format?: SheetsRowsCellsFormat; - - /** Specifies the hyperlink for a cell in Spreadsheet. - * @Default {null} - */ - hyperlink?: SheetsRowsCellsHyperlink; - - /** Specifies the index of a cell in Spreadsheet. - * @Default {0} - */ - index?: number; - - /** Specifies whether to lock or unlock a particular cell. - * @Default {false} - */ - isLocked?: boolean; - - /** Specifies the styles of a cell in Spreadsheet. - * @Default {null} - */ - style?: SheetsRowsCellsStyle; - - /** Specifies the value for a cell in Spreadsheet. - */ - value?: string; - } - - export interface SheetsRow { - - /** Gets or sets the height of a row in Spreadsheet. - * @Default {20} - */ - height?: number; - - /** Specifies the cells of a row in Spreadsheet. - * @Default {[]} - */ - cells?: SheetsRowsCell[]; - - /** Gets or sets the index of a row in Spreadsheet. - * @Default {0} - */ - index?: number; - } - - export interface Sheet { - - /** Specifies the border for the cell in the Spreadsheet. - * @Default {[]} - */ - border?: SheetsBorder[]; - - /** Specifies the cell types for a cell or range in Spreadsheet. - * @Default {[]} - */ - cellTypes?: any[]; - - /** Specifies the conditional formatting for the range of cell in Spreadsheet. - * @Default {[]} - */ - cFormatRule?: SheetsCFormatRule[]; - - /** Gets or sets a value that indicates to define column count in the Spreadsheet. - * @Default {21} - */ - colCount?: number; - - /** Gets or sets a value that indicates to define column width in the Spreadsheet. - * @Default {64} - */ - columnWidth?: number; - - /** Gets or sets the data to render the Spreadsheet. - * @Default {null} - */ - dataSource?: any; - - /** Gets or sets a value that indicates whether to enable or disable field as column header in the Spreadsheet. - * @Default {false} - */ - fieldAsColumnHeader?: boolean; - - /** Gets or sets a value to freeze rows in the Spreadsheet. - * @Default {0} - */ - frozenRows?: number; - - /** Gets or sets a value to freeze columns in the Spreadsheet. - * @Default {0} - */ - frozenColumns?: number; - - /** Specifies the header styles for the headers in datasource range. - * @Default {null} - */ - headerStyles?: any; - - /** To hide the specified columns in Spreadsheet. - * @Default {[]} - */ - hideColumns?: any[]; + /** Triggers when the client buffering process ends. + */ + bufferEnd?(e: BufferEndEventArgs): void; - /** To hide the specified rows in Spreadsheet. - * @Default {[]} - */ - hideRows?: any[]; + /** Triggers when PDF viewer control is destroyed successfully. + */ + destroy?(e: DestroyEventArgs): void; + } - /** To merge specified ranges in Spreadsheet. - * @Default {[]} - */ - mergeCells?: any[]; + export interface DocumentLoadEventArgs { - /** Specifies the primary key for the datasource in Spreadsheet. - */ - primaryKey?: string; + /** true, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Specifies the query for the dataSource in Spreadsheet. - * @Default {null} - */ - query?: any; + /** Returns the PDF viewer model + */ + model?: any; - /** Specifies single range or multiple range settings for a sheet in Spreadsheet. - * @Default {[]} - */ - rangeSettings?: SheetsRangeSetting[]; + /** Returns the name of the event + */ + type?: string; - /** Gets or sets a value that indicates to define row count in the Spreadsheet. - * @Default {20} - */ - rowCount?: number; + /** Returns the PDF document name displaying in the PDF viewer. + */ + fileName?: string; + } - /** Specifies the rows for a sheet in Spreadsheet. - * @Default {[]} - */ - rows?: SheetsRow[]; + export interface DocumentUnloadEventArgs { - /** Gets or sets a value that indicates whether to show or hide grid lines in the Spreadsheet. - * @Default {true} - */ - showGridlines?: boolean; + /** true, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Gets or sets a value that indicates whether to enable or disable the datasource header in Spreadsheet. - * @Default {true} - */ - showHeader?: boolean; + /** Returns the PDF viewer model + */ + model?: any; - /** Gets or sets a value that indicates whether to show or hide headings in the Spreadsheet. - * @Default {true} - */ - showHeadings?: boolean; + /** Returns the name of the event + */ + type?: string; + } - /** Specifies the start cell for the datasource range in Spreadsheet. - * @Default {A1} - */ - startCell?: string; - } + export interface PageChangeEventArgs { - enum AutoFillOptions { + /** true, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///Specifies the CopyCells property in AutoFillOptions. - CopyCells, + /** Returns the PDF viewer model + */ + model?: any; - ///Specifies the FillSeries property in AutoFillOptions. - FillSeries, + /** Returns the name of the event + */ + type?: string; - ///Specifies the FillFormattingOnly property in AutoFillOptions. - FillFormattingOnly, + /** Returns the current page number in view. + */ + currentPageNumber?: number; + } - ///Specifies the FillWithoutFormatting property in AutoFillOptions. - FillWithoutFormatting, + export interface AjaxRequestFailureEventArgs { - ///Specifies the FlashFill property in AutoFillOptions. - FlashFill - } + /** true, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + /** Returns the PDF viewer model + */ + model?: any; - enum scrollMode { + /** Returns the name of the event + */ + type?: string; - ///To enable Infinite scroll mode for Spreadsheet. - Infinite, + /** Returns the exception details. + */ + message?: string; + } - ///To enable Normal scroll mode for Spreadsheet. - Normal - } + export interface ZoomChangeEventArgs { + /** true, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - enum SelectionType { + /** Returns the PDF viewer model + */ + model?: any; - ///To select only Column in Spreadsheet. - Column, + /** Returns the name of the event. + */ + type?: string; - ///To select only Row in Spreadsheet. - Row, + /** Returns the previous zoom percentage of the PDF viewer control + */ + previousZoomPercentage?: number; - ///To select both Column/Row in Spreadsheet. - Default - } + /** Returns the current zoom percentage of the PDF viewer control + */ + currentZoomPercentage?: number; + } + export interface HyperlinkClickEventArgs { - enum SelectionUnit { + /** true, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///To enable Single selection in Spreadsheet - Single, + /** Returns the PDF viewer model + */ + model?: any; - ///To enable Range selection in Spreadsheet - Range, + /** Returns the name of the event + */ + type?: string; - ///To enable MultiRange selection in Spreadsheet - MultiRange - } + /** Returns the clicked hyperlink + */ + hyperlink?: string; + } + export interface BeforePrintEventArgs { - enum BorderType { + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///To apply top border for the given range of cell. - Top, + /** Returns the PDF viewer model + */ + model?: any; - ///To apply left border for the given range of cell. - Left, + /** Returns the name of the event + */ + type?: string; + } - ///To apply right border for the given range of cell. - Right, + export interface AfterPrintEventArgs { - ///To apply bottom border for the given range of cell. - Bottom, + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///To apply outside border for the given range of cell. - OutSide, + /** Returns the PDF viewer model + */ + model?: any; - ///To apply all border for the given range of cell. - AllBorder, + /** Returns the name of the event + */ + type?: string; + } - ///To apply thick box border for the given range of cell. - ThickBox, + export interface PageClickEventArgs { - ///To apply thick bottom border for the given range of cell. - ThickBottom, + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///To apply top and bottom border for the given range of cell. - TopandBottom, + /** Returns the PDF viewer model + */ + model?: any; - ///To apply top and thick bottom border for the given range of cell. - TopandThickBottom - } + /** Returns the name of the event + */ + type?: string; + /** Returns the current X position + */ + offsetX?: number; - enum CFormatRule { + /** Returns the current Y position + */ + offsetY?: number; + } - ///To identify greater than values in the given range of cells. - GreaterThan, + export interface AnnotationAddEventArgs { - ///To identify less than values in the given range of cells. - LessThan, + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///To identify in between values in the given range of cells. - Between, + /** Returns the PDF viewer model + */ + model?: any; - ///To identify the equal values in the given range of cells. - EqualTo, + /** Returns the name of the event + */ + type?: string; - ///To identify the specified text in the range of cells. - TextContains, + /** Returns the settings of the annotation added to the PDF document. + */ + annotationSettings?: any; - ///To identify the specified date in the range of cells. - DateOccurs - } + /** Returns the id of the annotation added in the page of the PDF document. + */ + annotationID?: number; + /** Returns the bounds of the annotation added in the page of the PDF document. + */ + annotationBound?: any[]; - enum CFormatHighlightColor { + /** Returns the page number in which the annotation is added. + */ + pageID?: number; - ///Highlights red with dark red text color. - RedFillwithDarkRedText, + /** Returns the type of the annotation added in the page of the PDF document. + */ + annotationType?: string; + } - ///Highlights yellow with dark yellow text color. - YellowFillwithDarkYellowText, + export interface AnnotationRemoveEventArgs { - ///Highlights green with dark green text color. - GreenFillwithDarkGreenText, + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///Highlights with red fill. - RedFill, + /** Returns the PDF viewer model + */ + model?: any; - ///Highlights with red text. - RedText - } + /** Returns the name of the event + */ + type?: string; + /** Returns the id of the annotation removed from the page of the PDF document. + */ + annotationID?: number; - enum ChartProperties { + /** Returns the page number in which the annotation is removed. + */ + pageID?: number; - ///Specifies to make the data label center of the chart. - DataLabelCenter, + /** Returns the type of the annotation removed from the page of the PDF document. + */ + annotationType?: string; + } - ///Specifies to make the data label inside base of the chart. - DataLabelInsideBase, + export interface AnnotationPropertiesChangeEventArgs { - ///Specifies to make the data label inside end of the chart. - DataLabelInsideEnd, + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///Specifies to make the data label none of the chart. - DataLabelNone, + /** Returns the PDF viewer model + */ + model?: any; - ///Specifies to make the data label outside end of the chart. - DataLabelOutsideEnd, + /** Returns the name of the event + */ + type?: string; - ///Specifies to make the legends to bottom of the chart. - LegendsBottom, + /** Returns the id of the annotation added in the page of the PDF document. + */ + annotationID?: number; - ///Specifies to make the legends to left of the chart. - LegendsLeft, + /** Returns the page number in which the annotation is added. + */ + pageID?: number; - ///Specifies to make the legends to none of the chart. - LegendsNone, + /** Returns the type of the annotation added in the page of the PDF document. + */ + annotationType?: string; - ///Specifies to make the legends to right of the chart. - LegendsRight, + /** Specifies that the color of the annotation is changed. + */ + isColorChanged?: boolean; - ///Specifies to make the legends to top of the chart. - LegendsTop, + /** Specifies that the opacity of the annotation is changed. + */ + isOpacityChanged?: boolean; + } - ///To set the primary horizontal of the chart. - PrimaryHorizontal, + export interface BufferStartEventArgs { - ///To set the primary horizontal axis title of the chart. - PrimaryHorizontalAxisTitle, + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///To set the primary major horizontal of the chart. - PrimaryMajorHorizontal, + /** Returns the PDF viewer model + */ + model?: any; - ///To set the primary major vertical of the chart. - PrimaryMajorVertical, + /** Returns the name of the event + */ + type?: string; - ///To set the primary minor horizontal of the chart. - PrimaryMinorHorizontal, + /** Specifies the state of the buffering + */ + isBuffering?: boolean; + } - ///To set the primary minor vertical of the chart. - PrimaryMinorVertical, + export interface BufferEndEventArgs { - ///To set the primary vertical of the chart. - PrimaryVertical, + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - ///To set the primary vertical axis title of the chart. - PrimaryVerticalAxisTitle, + /** Returns the PDF viewer model + */ + model?: any; - ///Specifies to make the title to center of the chart. - TitleCenter, + /** Returns the name of the event + */ + type?: string; - ///Specifies to make the title to far of the chart. - TitleFar, + /** Specifies the state of the buffering + */ + isBuffering?: boolean; + } - ///Specifies to make the title to near of the chart. - TitleNear, + export interface DestroyEventArgs { - ///Specifies to make the title to none of the chart. - TitleNone - } + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - } + /** Returns the PDF viewer model + */ + model?: any; - class PdfViewer extends ej.Widget { - static fn: PdfViewer; - constructor(element: JQuery | Element, options?: PdfViewer.Model); - static Locale: any; - model: PdfViewer.Model; - defaults: PdfViewer.Model; + /** Returns the name of the event + */ + type?: string; + } - /** Loads the document with the filename and displays it in PDF viewer. - * @param {string} File name to be loaded - * @returns {void} - */ - load(fileName: string): void; + export interface ToolbarSettings { - /** Shows/hides the toolbar in the PDF viewer. - * @param {boolean} shows/hides the toolbar - * @returns {void} - */ - showToolbar(show: boolean): void; + /** Shows or hides the tooltip of the toolbar items. + */ + showToolTip?: boolean; - /** Prints the PDF document. - * @returns {void} - */ - print(): void; + /** Shows or hides the grouped items in the toolbar with the help of enum ej.PdfViewer.ToolbarItems + */ + toolbarItem?: ej.PdfViewer.ToolbarItems|string; + } - /** Abort the printing function and restores the PDF viewer. - * @returns {void} - */ - abortPrint(): void; - - /** Shows/hides the print icon in the toolbar. - * @param {boolean} shows/hides print button in the toolbar - * @returns {void} - */ - showPrintTools(show: boolean): void; - - /** Downloads the PDF document being loaded in the ejPdfViewer control. - * @returns {void} - */ - download(): void; - - /** Shows/hides the download tool in the toolbar. - * @param {boolean} shows/hides download button in the toolbar - * @returns {void} - */ - showDownloadTool(show: boolean): void; - - /** Shows/hides the page navigation tools in the toolbar - * @param {boolean} shows/hides navigation tools in the toolbar - * @returns {void} - */ - showPageNavigationTools(show: boolean): void; - - /** Navigates to the specific page in the PDF document. If the page is not available for the given pageNumber, PDF viewer retains the existing page in view. - * @param {number} navigates to the page number in the PDF document - * @returns {void} - */ - goToPage(pageNumber: number): void; - - /** Navigates to the last page of the PDF document. - * @returns {void} - */ - goToLastPage(): void; - - /** Navigates to the first page of PDF document. - * @returns {void} - */ - goToFirstPage(): void; - - /** Navigates to the next page of the PDF document. - * @returns {void} - */ - goToNextPage(): void; - - /** Navigates to the previous page of the PDF document. - * @returns {void} - */ - goToPreviousPage(): void; - - /** Shows/hides the zoom tools in the toolbar. - * @param {boolean} shows/hides zoom tools in the toolbar - * @returns {void} - */ - showMagnificationTools(show: boolean): void; - - /** Scales the page to fit the page in the container in the control. - * @returns {void} - */ - fitToPage(): void; - - /** Scales the page to fit the page width to the width of the container in the control. - * @returns {void} - */ - fitToWidth(): void; - - /** Magnifies the page to the next value in the zoom drop down list. - * @returns {void} - */ - zoomIn(): void; - - /** Shrinks the page to the previous value in the magnification in the drop down list. - * @returns {void} - */ - zoomOut(): void; - - /** Scales the page to the specified percentage ranging from 50 to 400. If the given zoomValue is less than 50 or greater than 400; the PDF viewer scales the page to 50 and 400 respectively. - * @param {number} zoom value for scaling the pages in the PDF Viewer - * @returns {void} - */ - zoomTo(zoomValue: number): void; - - /** Unloads the PDF document being displayed in the PDF viewer. - * @returns {void} - */ - unload(): void; - } - export namespace PdfViewer { - - export interface Model { - - /** Specifies the locale information of the PDF viewer. - */ - locale?: string; - - /** Specifies the toolbar settings. - */ - toolbarSettings?: ToolbarSettings; - - /** Specifies the name of the action method in the server. - */ - serverActionSettings?: ServerActionSettings; - - /** Sets the PDF Web API service URL - */ - serviceUrl?: string; - - /** Sets the PDF document path for initial loading. - */ - documentPath?: string; - - /** Gets the total number of pages in PDF document. - */ - pageCount?: number; - - /** Gets the number of the page being displayed in the PDF viewer. - */ - currentPageNumber?: number; - - /** Gets the current zoom percentage of the PDF document in viewer. - */ - zoomPercentage?: number; + export interface ServerActionSettings { - /** Specifies the location of the supporting PDF service - */ - pdfService?: ej.PdfViewer.PdfService | string; + /** Specifies the name of the action method used for loading the PDF document. + */ + load?: string; - /** Specifies the open state of the hyperlink in the PDF document. - */ - hyperlinkOpenState?: ej.PdfViewer.LinkTarget | string; + /** Specifies the name of the action method used for uploading the PDF document to the PDF viewer control. + */ + fileUpload?: string; - /** Enables or disables the hyperlinks in PDF document. - */ - enableHyperlink?: boolean; + /** Specifies the name of the action method used for printing the PDF document in the PDF viewer control. + */ + print?: string; - /** Enables or disables the text selection in PDF document. - */ - enableTextSelection?: boolean; + /** Specifies the name of the action method used for downloading the PDF document from the PDF viewer control. + */ + download?: string; + } - /** Enables or disables the responsiveness of the PDF viewer control during the window resize. - */ - isResponsive?: boolean; + export interface StrikethroughSettings { - /** Checks whether the PDF document is edited. - */ - isDocumentEdited?: boolean; + /** Gets/sets the color of the strikethrough annotation. + */ + color?: string; - /** Enables or disables the buffering of the PDF pages in the client side. - */ - allowClientBuffering?: boolean; + /** Gets/sets the author of the strikethrough annotation. + */ + author?: string; - /** Gets the name of the PDF document which loaded in the ejPdfViewer control for downloading. - */ - fileName?: string; + /** Gets/sets the opacity of the strikethrough annotation. + */ + opacity?: number; - /** Triggers when the PDF document gets loaded and is ready to view in the Control. */ - documentLoad?(e: DocumentLoadEventArgs): void; + /** Gets/sets the subject of the strikethrough annotation. + */ + subject?: string; - /** Triggers when the PDF document gets unloaded from the PDF viewer. */ - documentUnload?(e: DocumentUnloadEventArgs): void; + /** Gets/sets the modified Date of the strikethrough annotation. + */ + modifiedDate?: string; - /** Triggers when there is change in current page number. */ - pageChange?(e: PageChangeEventArgs): void; + /** Gets/sets the locked property of the strikethrough annotation. + */ + isLocked?: boolean; + } - /** Triggers when there is change in the magnification value. */ - zoomChange?(e: ZoomChangeEventArgs): void; + export interface UnderlineSettings { - /** Triggers when hyperlink in the PDF Document is clicked */ - hyperlinkClick?(e: HyperlinkClickEventArgs): void; + /** Gets/sets the color of the underline annotation. + */ + color?: string; - /** Triggers before the printing starts. */ - beforePrint?(e: BeforePrintEventArgs): void; + /** Gets/sets the author of the underline annotation. + */ + author?: string; - /** Triggers after the printing is completed. */ - afterPrint?(e: AfterPrintEventArgs): void; + /** Gets/sets the opacity of the underline annotation. + */ + opacity?: number; - /** Triggers when the mouse click is performed over the page of the PDF document. */ - pageClick?(e: PageClickEventArgs): void; + /** Gets/sets the subject of the underline annotation. + */ + subject?: string; - /** Triggers when the client buffering process starts. */ - bufferStart?(e: BufferStartEventArgs): void; + /** Gets/sets the modified Date of the underline annotation. + */ + modifiedDate?: string; - /** Triggers when the client buffering process ends. */ - bufferEnd?(e: BufferEndEventArgs): void; + /** Gets/sets the locked property of the underline annotation. + */ + isLocked?: boolean; + } - /** Triggers when PDF viewer control is destroyed successfully. */ - destroy?(e: DestroyEventArgs): void; - } + export interface HighlightSettings { - export interface DocumentLoadEventArgs { + /** Gets/sets the color of the highlight annotation. + */ + color?: string; - /** true, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Gets/sets the author of the highlight annotation. + */ + author?: string; - /** Returns the PDF viewer model - */ - model?: any; + /** Gets/sets the opacity of the highlight annotation. + */ + opacity?: number; - /** Returns the name of the event - */ - type?: string; + /** Gets/sets the subject of the highlight annotation. + */ + subject?: string; - /** Returns the PDF document name displaying in the PDF viewer. - */ - fileName?: string; - } + /** Gets/sets the modified Date of the highlight annotation. + */ + modifiedDate?: string; - export interface DocumentUnloadEventArgs { + /** Gets/sets the locked property of the highlight annotation. + */ + isLocked?: boolean; + } - /** true, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + enum ToolbarItems { - /** Returns the PDF viewer model - */ - model?: any; + ///Shows only magnification tools in the toolbar. + MagnificationTools, - /** Returns the name of the event - */ - type?: string; - } + ///Shows only page navigation tools in the toolbar. + PageNavigationTools, - export interface PageChangeEventArgs { + ///Shows only print tool in the toolbar. + PrintTools, - /** true, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + ///Shows only download tool in the toolbar. + DownloadTool, - /** Returns the PDF viewer model - */ - model?: any; + ///Shows only text search tool in the toolbar. + TextSearchTool, - /** Returns the name of the event - */ - type?: string; + ///Shows only text markup annotation tools in the toolbar. + TextMarkupAnnotationTools, - /** Returns the current page number in view. - */ - currentPageNumber?: number; - } + ///Shows all the toolbar items. + All + } - export interface ZoomChangeEventArgs { - /** true, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + enum AnnotationType { - /** Returns the PDF viewer model - */ - model?: any; + ///Specifies the underline annotation. + Underline, - /** Returns the name of the event. - */ - type?: string; + ///Specifies the strikethrough annotation. + Strikethrough, - /** Returns the previous zoom percentage of the PDF viewer control - */ - previousZoomPercentage?: number; + ///Specifies the highlight annotation. + Highlight + } - /** Returns the current zoom percentage of the PDF viewer control - */ - currentZoomPercentage?: number; - } - export interface HyperlinkClickEventArgs { + enum PdfService { - /** true, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + ///Denotes that the service is located in the local project + Local, - /** Returns the PDF viewer model - */ - model?: any; + ///Denotes that the service is hosted in the remote server + Remote + } - /** Returns the name of the event - */ - type?: string; - /** Returns the clicked hyperlink - */ - hyperlink?: string; - } + enum LinkTarget { - export interface BeforePrintEventArgs { + ///Opens the hyperlink in the same tab of the browser. + Default, - /** True, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + ///Opens the hyperlink in a new tab of the browser. + NewTab, - /** Returns the PDF viewer model - */ - model?: any; + ///Opens the hyperlink in a new window of the browser. + NewWindow + } - /** Returns the name of the event - */ - type?: string; - } + } - export interface AfterPrintEventArgs { + class SpellCheck extends ej.Widget { + static fn: SpellCheck; + constructor(element: JQuery | Element, options?: SpellCheck.Model); + static Locale: any; + model: SpellCheck.Model; + defaults: SpellCheck.Model; + + /** Open the dialog to correct the spelling of the target content. + * @returns {void} + */ + showInDialog(): void; + + /** Highlighting the error word in the target area itself and correct the spelling using the context menu. + * @returns {void} + */ + validate(): void; - /** True, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** To get the error word highlighted string by passing the given input sentence. + * @param {string} Content to be spell check + * @param {string} Class name that contains style value to highlight the error word + * @returns {any} + */ + spellCheck(targetSentence: string, misspellWordCss: string): any; + + /** To ignore all the error word occurrences from the given input sentence. + * @param {string} Error word to ignore from the target content + * @param {string} Content to perform the ignore all operation + * @returns {any} + */ + ignoreAll(word: string, targetSentence: string): any; + + /** To ignore the error word once from the given input sentence. + * @param {string} Error word to ignore from the target content + * @param {string} Content to perform the ignore operation + * @param {number} Index of the error word present in the target content + * @returns {any} + */ + ignore(word: string, targetSentence: string, index: number): any; + + /** To change the error word once from the given input sentence. + * @param {string} Error word to change from the target content + * @param {string} Content to perform the change operation + * @param {string} Word to replace with the error word + * @param {number} Index of the error word present in the target content + * @returns {any} + */ + change(word: string, targetSentence: string, changeWord: string, index: number): any; + + /** To change all the error word occurrences from the given input sentence. + * @param {string} Error word to change from the target content + * @param {string} Content to perform the change all operation + * @param {string} Word to replace with the error word + * @returns {any} + */ + changeAll(word: string, targetSentence: string, changeWord: string): any; + + /** To add the words into the custom dictionary. + * @param {string} Word to add into the dictionary file + * @returns {any} + */ + addToDictionary(customWord: string): any; + } + export namespace SpellCheck { + + export interface Model { + + /** It includes the service method path to find the error words and its suggestions also adding the custom word into the custom dictionary. + */ + dictionarySettings?: DictionarySettings; + + /** To display the error word in a customized style. + * @Default {e-errorword} + */ + misspellWordCss?: string; + + /** Sets the specific culture to the SpellCheck. + * @Default {en-US} + */ + locale?: string; + + /** To set the maximum suggestion display count. + * @Default {6} + */ + maxSuggestionCount?: number; + + /** To ignore the words from the error word consideration. + * @Default {[]} + */ + ignoreWords?: any[]; + + /** Holds all options related to the context menu settings of SpellCheck. + */ + contextMenuSettings?: ContextMenuSettings; + + /** It helps to ignore the uppercase, mixed case words, alpha numeric words, file path and email addresses based on the property values. + */ + ignoreSettings?: IgnoreSettings; + + /** When set to true, allows the spellcheck to render based upon screen size. + * @Default {true} + */ + isResponsive?: boolean; + + /** Gets or sets a value that indicates whether to enable the spellcheck operation on Enter/Space key-press. + * @Default {false} + */ + enableValidateOnType?: boolean; + + /** It allows to spell check the multiple target HTML element's texts and correct its error words. + * @Default {null} + */ + controlsToValidate?: string; + + /** Triggers on the success of AJAX call request. + */ + actionSuccess?(e: ActionSuccessEventArgs): void; + + /** Triggers on the AJAX call request beginning. + */ + actionBegin?(e: ActionBeginEventArgs): void; + + /** Triggers when the AJAX call request failure. + */ + actionFailure?(e: ActionFailureEventArgs): void; + + /** Triggers when the dialog mode spell check starting. + */ + start?(e: StartEventArgs): void; + + /** Triggers when the spell check operations completed through dialog mode. + */ + complete?(e: CompleteEventArgs): void; + + /** Triggers before context menu opening. + */ + contextOpen?(e: ContextOpenEventArgs): void; + + /** Triggers when the context menu item clicked. + */ + contextClick?(e: ContextClickEventArgs): void; + + /** Triggers before the spell check dialog opens. + */ + dialogBeforeOpen?(e: DialogBeforeOpenEventArgs): void; + + /** Triggers after the spell check dialog opens. + */ + dialogOpen?(e: DialogOpenEventArgs): void; + + /** Triggers when the spell check dialog closed. + */ + dialogClose?(e: DialogCloseEventArgs): void; + + /** Triggers when the spell check control performing the spell check operations such as ignore, ignoreAll, change, changeAll and addToDictionary. + */ + validating?(e: ValidatingEventArgs): void; + + /** Triggers before loading the target HTML element text into the dialog sentence area. + */ + targetUpdating?(e: TargetUpdatingEventArgs): void; + } - /** Returns the PDF viewer model - */ - model?: any; + export interface ActionSuccessEventArgs { - /** Returns the name of the event - */ - type?: string; - } + /** Returns the error word highlighted string. + */ + resultHTML?: string; - export interface PageClickEventArgs { + /** Returns the error word details of the given input. + */ + errorWordDetails?: any; - /** True, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Returns the request type value. + */ + requestType?: string; - /** Returns the PDF viewer model - */ - model?: any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event - */ - type?: string; + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - /** Returns the current X position - */ - offsetX?: number; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the current Y position - */ - offsetY?: number; - } + export interface ActionBeginEventArgs { - export interface BufferStartEventArgs { + /** Returns the input string. + */ + targetSentence?: string; - /** True, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Returns the misspellWordCss class name. + */ + misspellWordCss?: string; - /** Returns the PDF viewer model - */ - model?: any; + /** Returns the request type value. + */ + requestType?: string; - /** Returns the name of the event - */ - type?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Specifies the state of the buffering - */ - isBuffering?: boolean; - } + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - export interface BufferEndEventArgs { + /** Returns the name of the event. + */ + type?: string; + } - /** True, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + export interface ActionFailureEventArgs { - /** Returns the PDF viewer model - */ - model?: any; + /** Returns AJAX request failure error message. + */ + errorMessage?: string; - /** Returns the name of the event - */ - type?: string; + /** Returns the request type value. + */ + requestType?: string; - /** Specifies the state of the buffering - */ - isBuffering?: boolean; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface DestroyEventArgs { + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - /** True, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the PDF viewer model - */ - model?: any; + export interface StartEventArgs { - /** Returns the name of the event - */ - type?: string; - } + /** Returns the input string. + */ + targetSentence?: string; - export interface ToolbarSettings { + /** Returns the error words details. + */ + errorWords?: any; - /** Shows or hides the tooltip of the toolbar items. - */ - showToolTip?: boolean; + /** Returns the request type value. + */ + requestType?: string; - /** Shows or hides the grouped items in the toolbar with the help of enum ej.PdfViewer.ToolbarItems - */ - toolbarItem?: ej.PdfViewer.ToolbarItems | string; - } + /** Returns the cancel option value. + */ + cancel?: boolean; - export interface ServerActionSettings { + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - /** Specifies the name of the action method used for loading the PDF document. - */ - load?: string; + /** Returns the name of the event. + */ + type?: string; + } - /** Specifies the name of the action method used for uploading the PDF document to the PDF viewer control. - */ - fileUpload?: string; + export interface CompleteEventArgs { - /** Specifies the name of the action method used for printing the PDF document in the PDF viewer control. - */ - print?: string; + /** Returns the error word highlighted string. + */ + resultHTML?: string; - /** Specifies the name of the action method used for downloading the PDF document from the PDF viewer control. - */ - download?: string; - } + /** Returns the request type value. + */ + requestType?: string; - enum ToolbarItems { + /** Returns the cancel option value. + */ + cancel?: boolean; - ///Shows only magnification tools in the toolbar. - MagnificationTools, - - ///Shows only page navigation tools in the toolbar. - PageNavigationTools, + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - ///Shows only print tool in the toolbar. - PrintTools, + /** Returns the name of the event. + */ + type?: string; + } - ///Shows only download tool in the toolbar. - DownloadTool, + export interface ContextOpenEventArgs { - ///Shows all the toolbar items. - All - } + /** Returns the selected error word. + */ + selectedErrorWord?: string; + /** Returns the request type value. + */ + requestType?: string; - enum PdfService { - - ///Denotes that the service is located in the local project - Local, - - ///Denotes that the service is hosted in the remote server - Remote - } - - - enum LinkTarget { - - ///Opens the hyperlink in the same tab of the browser. - Default, - - ///Opens the hyperlink in a new tab of the browser. - NewTab, - - ///Opens the hyperlink in a new window of the browser. - NewWindow - } - - } - - class SpellCheck extends ej.Widget { - static fn: SpellCheck; - constructor(element: JQuery | Element, options?: SpellCheck.Model); - static Locale: any; - model: SpellCheck.Model; - defaults: SpellCheck.Model; - - /** Open the dialog to correct the spelling of the target content. - * @returns {void} - */ - showInDialog(): void; - - /** Highlighting the error word in the target area itself and correct the spelling using the context menu. - * @returns {void} - */ - validate(): void; - - /** To get the error word highlighted string by passing the given input sentence. - * @param {string} Content to be spell check - * @param {string} Class name that contains style value to highlight the error word - * @returns {any} - */ - spellCheck(targetSentence: string, misspellWordCss: string): any; - - /** To ignore all the error word occurrences from the given input sentence. - * @param {string} Error word to ignore from the target content - * @param {string} Content to perform the ignore all operation - * @returns {any} - */ - ignoreAll(word: string, targetSentence: string): any; - - /** To ignore the error word once from the given input sentence. - * @param {string} Error word to ignore from the target content - * @param {string} Content to perform the ignore operation - * @param {number} Index of the error word present in the target content - * @returns {any} - */ - ignore(word: string, targetSentence: string, index: number): any; - - /** To change the error word once from the given input sentence. - * @param {string} Error word to change from the target content - * @param {string} Content to perform the change operation - * @param {string} Word to replace with the error word - * @param {number} Index of the error word present in the target content - * @returns {any} - */ - change(word: string, targetSentence: string, changeWord: string, index: number): any; - - /** To change all the error word occurrences from the given input sentence. - * @param {string} Error word to change from the target content - * @param {string} Content to perform the change all operation - * @param {string} Word to replace with the error word - * @returns {any} - */ - changeAll(word: string, targetSentence: string, changeWord: string): any; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** To add the words into the custom dictionary. - * @param {string} Word to add into the dictionary file - * @returns {any} - */ - addToDictionary(customWord: string): any; - } - export namespace SpellCheck { - - export interface Model { - - /** It includes the service method path to find the error words and its suggestions also adding the custom word into the custom dictionary. - */ - dictionarySettings?: DictionarySettings; - - /** To display the error word in a customized style. - * @Default {e-errorword} - */ - misspellWordCss?: string; - - /** Sets the specific culture to the SpellCheck. - * @Default {en-US} - */ - locale?: string; - - /** To set the maximum suggestion display count. - * @Default {6} - */ - maxSuggestionCount?: number; - - /** To ignore the words from the error word consideration. - * @Default {[]} - */ - ignoreWords?: any[]; - - /** Holds all options related to the context menu settings of SpellCheck. - */ - contextMenuSettings?: ContextMenuSettings; - - /** It helps to ignore the uppercase, mixed case words, alpha numeric words, file path and email addresses based on the property values. - */ - ignoreSettings?: IgnoreSettings; - - /** When set to true, allows the spellcheck to render based upon screen size. - * @Default {true} - */ - isResponsive?: boolean; - - /** Gets or sets a value that indicates whether to enable the spellcheck operation on Enter/Space key-press. - * @Default {false} - */ - enableValidateOnType?: boolean; - - /** It allows to spell check the multiple target HTML element's texts and correct its error words. - * @Default {null} - */ - controlsToValidate?: string; - - /** Triggers on the success of AJAX call request. */ - actionSuccess?(e: ActionSuccessEventArgs): void; - - /** Triggers on the AJAX call request beginning. */ - actionBegin?(e: ActionBeginEventArgs): void; - - /** Triggers when the AJAX call request failure. */ - actionFailure?(e: ActionFailureEventArgs): void; - - /** Triggers when the dialog mode spell check starting. */ - start?(e: StartEventArgs): void; - - /** Triggers when the spell check operations completed through dialog mode. */ - complete?(e: CompleteEventArgs): void; - - /** Triggers before context menu opening. */ - contextOpen?(e: ContextOpenEventArgs): void; - - /** Triggers when the context menu item clicked. */ - contextClick?(e: ContextClickEventArgs): void; - - /** Triggers before the spell check dialog opens. */ - dialogBeforeOpen?(e: DialogBeforeOpenEventArgs): void; - /** Triggers after the spell check dialog opens. */ - dialogOpen?(e: DialogOpenEventArgs): void; - - /** Triggers when the spell check dialog closed. */ - dialogClose?(e: DialogCloseEventArgs): void; - - /** Triggers when the spell check control performing the spell check operations such as ignore, ignoreAll, change, changeAll and addToDictionary. */ - validating?(e: ValidatingEventArgs): void; + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - /** Triggers before loading the target HTML element text into the dialog sentence area. */ - targetUpdating?(e: TargetUpdatingEventArgs): void; - } + /** Returns the name of the event. + */ + type?: string; + } - export interface ActionSuccessEventArgs { + export interface ContextClickEventArgs { - /** Returns the error word highlighted string. - */ - resultHTML?: string; + /** Returns the selected error word. + */ + selectedValue?: string; - /** Returns the error word details of the given input. - */ - errorWordDetails?: any; + /** Returns the selected option in the context menu. + */ + selectedOption?: string; - /** Returns the request type value. - */ - requestType?: string; + /** Returns the input string. + */ + targetContent?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the request type value. + */ + requestType?: string; - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - export interface ActionBeginEventArgs { + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the input string. - */ - targetSentence?: string; + export interface DialogBeforeOpenEventArgs { - /** Returns the misspellWordCss class name. - */ - misspellWordCss?: string; + /** Returns the spell check window details. + */ + spellCheckDialog?: any; - /** Returns the request type value. - */ - requestType?: string; + /** Returns the request type value. + */ + requestType?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the name of the event. + */ + type?: string; + } - export interface ActionFailureEventArgs { + export interface DialogOpenEventArgs { - /** Returns AJAX request failure error message. - */ - errorMessage?: string; + /** Returns the target input. + */ + targetText?: string; - /** Returns the request type value. - */ - requestType?: string; + /** Returns the request type value. + */ + requestType?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the name of the event. + */ + type?: string; + } - export interface StartEventArgs { + export interface DialogCloseEventArgs { - /** Returns the input string. - */ - targetSentence?: string; + /** Returns the error corrected string. + */ + updatedText?: string; - /** Returns the error words details. - */ - errorWords?: any; + /** Returns the request type value. + */ + requestType?: string; - /** Returns the request type value. - */ - requestType?: string; + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; + /** Returns the name of the event. + */ + type?: string; + } - /** Returns the name of the event. - */ - type?: string; - } + export interface ValidatingEventArgs { - export interface CompleteEventArgs { + /** Returns the cancel option value. + */ + cancel?: boolean; - /** Returns the error word highlighted string. - */ - resultHTML?: string; + /** Returns the error word to ignore. + */ + ignoreWord?: string; - /** Returns the request type value. - */ - requestType?: string; + /** Returns the target content. + */ + targetContent?: string; - /** Returns the cancel option value. - */ - cancel?: boolean; + /** Returns the index of an error word. + */ + index?: number; - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; - /** Returns the name of the event. - */ - type?: string; - } + /** Returns the validating request type. + */ + requestType?: string; - export interface ContextOpenEventArgs { + /** Returns the name of the event. + */ + type?: string; - /** Returns the selected error word. - */ - selectedErrorWord?: string; + /** Returns the error word to change. + */ + changeableWord?: string; + + /** Returns the change word to replace the error word. + */ + changeWord?: string; + + /** Returns the custom word to add into dictionary file. + */ + customWord?: string; + } + + export interface TargetUpdatingEventArgs { + + /** Returns the previous target element value. + */ + previousElement?: any; + + /** Returns the current target element value. + */ + currentElement?: any; + + /** Returns the target html value. + */ + targetHtml?: string; + + /** Returns the cancel option value. + */ + cancel?: boolean; + + /** Returns the SpellCheck model. + */ + model?: ej.SpellCheck.Model; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface DictionarySettings { + + /** The dictionaryUrl option accepts string, which is the method path to find the error words and get the suggestions to correct the errors. + */ + dictionaryUrl?: string; + + /** The customDictionaryUrl option accepts string, which is the method path to add the error word into the custom dictionary. + */ + customDictionaryUrl?: string; + } + + export interface ContextMenuSettings { + + /** When set to true, enables the context menu options available for the SpellCheck. + * @Default {true} + */ + enable?: boolean; + + /** Contains all the default context menu options that are applicable for SpellCheck. It also supports adding custom menu items. All the SpellCheck related context menu items are + * grouped under this menu collection. + * @Default {{% highlight javascript %}[{ id: IgnoreAll, text: Ignore All },{ id: AddToDictionary, text: Add To Dictionary }]{% endhighlight %}} + */ + menuItems?: any[]; + } + + export interface IgnoreSettings { + + /** When set to true, ignoring the alphanumeric words from the error word consideration. + * @Default {true} + */ + ignoreAlphaNumericWords?: string; + + /** When set to true, ignoring the Email address from the error word consideration. + * @Default {true} + */ + ignoreEmailAddress?: boolean; + + /** When set to true, ignoring the MixedCase words from the error word consideration. + * @Default {true} + */ + ignoreMixedCaseWords?: boolean; + + /** When set to true, ignoring the UpperCase words from the error word consideration. + * @Default {true} + */ + ignoreUpperCase?: boolean; + + /** When set to true, ignoring the Url from the error word consideration. + * @Default {true} + */ + ignoreUrl?: boolean; + + /** When set to true, ignoring the file address path from the error word consideration. + * @Default {true} + */ + ignoreFileNames?: boolean; + } + } + + class DocumentEditor extends ej.Widget { + static fn: DocumentEditor; + constructor(element: JQuery | Element, options?: DocumentEditor.Model); + static Locale: any; + model: DocumentEditor.Model; + defaults: DocumentEditor.Model; + + /** Loads the document from specified path using web API provided by importUrl. + * @param {string} Specifies the file path. + * @returns {void} + */ + load(path: string): void; + + /** Gets the page number of current selection in the document. + * @returns {number} + */ + getCurrentPageNumber(): number; + + /** Gets the total number of pages in the document. + * @returns {number} + */ + getPageCount(): number; + + /** Gets the text of current selection in the document. + * @returns {string} + */ + getSelectedText(): string; + + /** Gets the current zoom factor value of the document editor. + * @returns {number} + */ + getZoomFactor(): number; + + /** Scales the document editor with the specified zoom factor. The range of zoom factor should be 0.10 to 5.00 (10 - 500 %). + * @param {number} Specifies the factor for zooming. + * @returns {void} + */ + setZoomFactor(factor: number): void; + + /** Prints the document content as page by page. + * @returns {void} + */ + print(): void; + + /** Finds the first occurrence of specified text from current selection and highlights the result. If the document end is reached, find operation will occur from the document start + * position. + * @param {string} Specifies the text to search in a document. + * @returns {void} + */ + find(text: string): void; + } + export namespace DocumentEditor { + + export interface Model { + + /** Gets or sets an object that indicates initialization of importing and exporting documents in document editor. + */ + importExportSettings?: ImportExportSettings; + + /** Triggers when the document changes. + */ + onDocumentChange?(e: OnDocumentChangeEventArgs): void; + + /** Triggers when the selection changes. + */ + onSelectionChange?(e: OnSelectionChangeEventArgs): void; + + /** Triggers when the zoom factor changes. + */ + onZoomFactorChange?(e: OnZoomFactorChangeEventArgs): void; + + /** Triggers when the hyperlink is clicked. + */ + onRequestNavigate?(e: OnRequestNavigateEventArgs): void; + } + + export interface OnDocumentChangeEventArgs { + + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the document editor model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface OnSelectionChangeEventArgs { + + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the document editor model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface OnZoomFactorChangeEventArgs { + + /** True, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the document editor model. + */ + model?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface OnRequestNavigateEventArgs { + + /** true, if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** Returns the document editor model. + */ + model?: any; + + /** Returns the link type and navigation link. + */ + hyperlink?: any; + + /** Returns the name of the event. + */ + type?: string; + } + + export interface ImportExportSettings { - /** Returns the request type value. - */ - requestType?: string; - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface ContextClickEventArgs { - - /** Returns the selected error word. - */ - selectedValue?: string; - - /** Returns the selected option in the context menu. - */ - selectedOption?: string; - - /** Returns the input string. - */ - targetContent?: string; - - /** Returns the request type value. - */ - requestType?: string; - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface DialogBeforeOpenEventArgs { - - /** Returns the spell check window details. - */ - spellCheckDialog?: any; - - /** Returns the request type value. - */ - requestType?: string; - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface DialogOpenEventArgs { - - /** Returns the target input. - */ - targetText?: string; - - /** Returns the request type value. - */ - requestType?: string; - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface DialogCloseEventArgs { - - /** Returns the error corrected string. - */ - updatedText?: string; - - /** Returns the request type value. - */ - requestType?: string; - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface ValidatingEventArgs { - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the error word to ignore. - */ - ignoreWord?: string; - - /** Returns the target content. - */ - targetContent?: string; - - /** Returns the index of an error word. - */ - index?: number; - - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; - - /** Returns the validating request type. - */ - requestType?: string; - - /** Returns the name of the event. - */ - type?: string; - - /** Returns the error word to change. - */ - changeableWord?: string; - - /** Returns the change word to replace the error word. - */ - changeWord?: string; - - /** Returns the custom word to add into dictionary file. - */ - customWord?: string; - } - - export interface TargetUpdatingEventArgs { - - /** Returns the previous target element value. - */ - previousElement?: any; - - /** Returns the current target element value. - */ - currentElement?: any; - - /** Returns the target html value. - */ - targetHtml?: string; - - /** Returns the cancel option value. - */ - cancel?: boolean; - - /** Returns the SpellCheck model. - */ - model?: ej.SpellCheck.Model; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface DictionarySettings { - - /** The dictionaryUrl option accepts string, which is the method path to find the error words and get the suggestions to correct the errors. - */ - dictionaryUrl?: string; - - /** The customDictionaryUrl option accepts string, which is the method path to add the error word into the custom dictionary. - */ - customDictionaryUrl?: string; - } - - export interface ContextMenuSettings { - - /** When set to true, enables the context menu options available for the SpellCheck. - * @Default {true} - */ - enable?: boolean; - - /** Contains all the default context menu options that are applicable for SpellCheck. It also supports adding custom menu items. - * All the SpellCheck related context menu items are grouped under this menu collection. - * @Default {{% highlight javascript %}[{ id: IgnoreAll, text: Ignore All },{ id: AddToDictionary, text: Add To Dictionary }]{% endhighlight %}} - */ - menuItems?: any[]; - } - - export interface IgnoreSettings { - - /** When set to true, ignoring the alphanumeric words from the error word consideration. - * @Default {true} - */ - ignoreAlphaNumericWords?: string; - - /** When set to true, ignoring the Email address from the error word consideration. - * @Default {true} - */ - ignoreEmailAddress?: boolean; - - /** When set to true, ignoring the MixedCase words from the error word consideration. - * @Default {true} - */ - ignoreMixedCaseWords?: boolean; - - /** When set to true, ignoring the UpperCase words from the error word consideration. - * @Default {true} - */ - ignoreUpperCase?: boolean; - - /** When set to true, ignoring the Url from the error word consideration. - * @Default {true} - */ - ignoreUrl?: boolean; - - /** When set to true, ignoring the file address path from the error word consideration. - * @Default {true} - */ - ignoreFileNames?: boolean; - } - } - - class DocumentEditor extends ej.Widget { - static fn: DocumentEditor; - constructor(element: JQuery | Element, options?: DocumentEditor.Model); - static Locale: any; - model: DocumentEditor.Model; - defaults: DocumentEditor.Model; - - /** Loads the document from specified path using web API provided by importUrl. - * @param {string} Specifies the file path. - * @returns {void} - */ - load(path: string): void; - - /** Gets the page number of current selection in the document. - * @returns {number} - */ - getCurrentPageNumber(): number; - - /** Gets the total number of pages in the document. - * @returns {number} - */ - getPageCount(): number; - - /** Gets the text of current selection in the document. - * @returns {string} - */ - getSelectedText(): string; - - /** Gets the current zoom factor value of the document editor. - * @returns {number} - */ - getZoomFactor(): number; - - /** Scales the document editor with the specified zoom factor. The range of zoom factor should be 0.10 to 5.00 (10 - 500 %). - * @param {number} Specifies the factor for zooming. - * @returns {void} - */ - setZoomFactor(factor: number): void; - - /** Prints the document content as page by page. - * @returns {void} - */ - print(): void; - - /** Finds the first occurrence of specified text from current selection and highlights the result. If the document end is reached, find operation will occur from the document start position. - * @param {string} Specifies the text to search in a document. - * @returns {void} - */ - find(text: string): void; - } - export namespace DocumentEditor { - - export interface Model { - - /** Gets or sets an object that indicates initialization of importing and exporting documents in document editor. - */ - importExportSettings?: ImportExportSettings; - - /** Triggers when the document changes. */ - onDocumentChange?(e: OnDocumentChangeEventArgs): void; - - /** Triggers when the selection changes. */ - onSelectionChange?(e: OnSelectionChangeEventArgs): void; - - /** Triggers when the zoom factor changes. */ - onZoomFactorChange?(e: OnZoomFactorChangeEventArgs): void; - - /** Triggers when the hyperlink is clicked. */ - onRequestNavigate?(e: OnRequestNavigateEventArgs): void; - } - - export interface OnDocumentChangeEventArgs { - - /** True, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the document editor model. - */ - model?: any; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface OnSelectionChangeEventArgs { - - /** True, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the document editor model. - */ - model?: any; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface OnZoomFactorChangeEventArgs { - - /** True, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the document editor model. - */ - model?: any; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface OnRequestNavigateEventArgs { - - /** true, if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** Returns the document editor model. - */ - model?: any; - - /** Returns the link type and navigation link. - */ - hyperlink?: any; - - /** Returns the name of the event. - */ - type?: string; - } - - export interface ImportExportSettings { - - /** Gets or sets URL of Web API that should be used to parse the document while loading. - */ - importUrl?: string; - } - } + /** Gets or sets URL of Web API that should be used to parse the document while loading. + */ + importUrl?: string; + } + } } - declare namespace ej.datavisualization { + class SymbolPalette extends ej.Widget { + static fn: SymbolPalette; + constructor(element: JQuery | Element, options?: SymbolPalette.Model); + static Locale: any; + model: SymbolPalette.Model; + defaults: SymbolPalette.Model; + + /** Add items to Palettes at runtime + * @param {string} name of the Palette + * @param {any} JSON for the new items to added in Palette + * @returns {void} + */ + addPaletteItem(paletteName: string, node: any): void; + + /** Remove items to Palettes at runtime + * @param {string} name of the Palette + * @param {any} JSON for the new node to removed in Palette + * @returns {void} + */ + removePaletteItem(paletteName: string, node: any): void; + } + export namespace SymbolPalette { + + export interface Model { + + /** Defines whether the symbols can be dragged from palette or not + * @Default {true} + */ + allowDrag?: boolean; + + /** Customizes the style of the symbol palette + * @Default {e-symbolpalette} + */ + cssClass?: string; + + /** Defines the default properties of nodes and connectors + */ + defaultSettings?: DefaultSettings; + + /** Sets the Id of the diagram, over which the symbols will be dropped + * @Default {null} + */ + diagramId?: string; + + /** Sets the height of the palette headers + * @Default {30} + */ + headerHeight?: number; + + /** Defines the height of the symbol palette + * @Default {400} + */ + height?: number; + + /** Defines the height of the palette items + * @Default {50} + */ + paletteItemHeight?: number; + + /** Defines the width of the palette items + * @Default {50} + */ + paletteItemWidth?: number; + + /** An array of JSON objects, where each object represents a node/connector + * @Default {[]} + */ + palettes?: Palette[]; + + /** Defines the preview height of the symbols + * @Default {100} + */ + previewHeight?: number; + + /** Defines the offset value to be left between the mouse cursor and symbol previews + * @Default {(110, 110)} + */ + previewOffset?: any; + + /** Defines the width of the symbol previews + * @Default {100} + */ + previewWidth?: number; + + /** Enable or disable the palette item text + * @Default {true} + */ + showPaletteItemText?: boolean; + + /** The width of the palette + * @Default {250} + */ + width?: number; + + /** Triggers when a palette item is selected or unselected + */ + selectionChange?(e: SelectionChangeEventArgs): void; + } + + export interface SelectionChangeEventArgs { + + /** returns whether an element is selected or unselected + */ + changeType?: string; + + /** returns the node or connector that is selected or unselected + */ + element?: any; + } + + export interface DefaultSettings { + + /** Defines the default properties of the nodes + * @Default {null} + */ + node?: any; + + /** Defines the default properties of the connectors + * @Default {null} + */ + connector?: any; + } + + export interface Palette { + + /** Defines the name of the palette + * @Default {null} + */ + name?: string; + + /** Defines whether the palette must be in expanded state or in collapsed state + * @Default {true} + */ + expanded?: boolean; + + /** Defines the palette items + * @Default {[]} + */ + items?: any[]; + } + } + + class LinearGauge extends ej.Widget { + static fn: LinearGauge; + constructor(element: JQuery | Element, options?: LinearGauge.Model); + static Locale: any; + model: LinearGauge.Model; + defaults: LinearGauge.Model; + + /** destroy the linear gauge all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** To export Image + * @returns {void} + */ + exportImage(): void; + + /** To get Bar Distance From Scale in number + * @returns {any} + */ + getBarDistanceFromScale(): any; + + /** To get Bar Pointer Value in number + * @returns {any} + */ + getBarPointerValue(): any; + + /** To get Bar Width in number + * @returns {any} + */ + getBarWidth(): any; + + /** To get CustomLabel Angle in number + * @returns {any} + */ + getCustomLabelAngle(): any; + + /** To get CustomLabel Value in string + * @returns {any} + */ + getCustomLabelValue(): any; + + /** To get Label Angle in number + * @returns {any} + */ + getLabelAngle(): any; + + /** To get LabelPlacement in number + * @returns {any} + */ + getLabelPlacement(): any; + + /** To get LabelStyle in number + * @returns {any} + */ + getLabelStyle(): any; + + /** To get Label XDistance From Scale in number + * @returns {any} + */ + getLabelXDistanceFromScale(): any; + + /** To get PointerValue in number + * @returns {any} + */ + getLabelYDistanceFromScale(): any; + + /** To get Major Interval Value in number + * @returns {any} + */ + getMajorIntervalValue(): any; + + /** To get MarkerStyle in number + * @returns {any} + */ + getMarkerStyle(): any; + + /** To get Maximum Value in number + * @returns {any} + */ + getMaximumValue(): any; + + /** To get PointerValue in number + * @returns {any} + */ + getMinimumValue(): any; + + /** To get Minor Interval Value in number + * @returns {any} + */ + getMinorIntervalValue(): any; + + /** To get Pointer Distance From Scale in number + * @returns {any} + */ + getPointerDistanceFromScale(): any; + + /** To get PointerHeight in number + * @returns {any} + */ + getPointerHeight(): any; + + /** To get Pointer Placement in String + * @returns {any} + */ + getPointerPlacement(): any; + + /** To get PointerValue in number + * @returns {any} + */ + getPointerValue(): any; + + /** To get PointerWidth in number + * @returns {any} + */ + getPointerWidth(): any; + + /** To get Range Border Width in number + * @returns {any} + */ + getRangeBorderWidth(): any; + + /** To get Range Distance From Scale in number + * @returns {any} + */ + getRangeDistanceFromScale(): any; + + /** To get Range End Value in number + * @returns {any} + */ + getRangeEndValue(): any; + + /** To get Range End Width in number + * @returns {any} + */ + getRangeEndWidth(): any; + + /** To get Range Position in number + * @returns {any} + */ + getRangePosition(): any; + + /** To get Range Start Value in number + * @returns {any} + */ + getRangeStartValue(): any; + + /** To get Range Start Width in number + * @returns {any} + */ + getRangeStartWidth(): any; + + /** To get ScaleBarLength in number + * @returns {any} + */ + getScaleBarLength(): any; + + /** To get Scale Bar Size in number + * @returns {any} + */ + getScaleBarSize(): any; + + /** To get Scale Border Width in number + * @returns {any} + */ + getScaleBorderWidth(): any; + + /** To get Scale Direction in number + * @returns {any} + */ + getScaleDirection(): any; + + /** To get Scale Location in object + * @returns {any} + */ + getScaleLocation(): any; + + /** To get Scale Style in string + * @returns {any} + */ + getScaleStyle(): any; + + /** To get Tick Angle in number + * @returns {any} + */ + getTickAngle(): any; + + /** To get Tick Height in number + * @returns {any} + */ + getTickHeight(): any; + + /** To get getTickPlacement in number + * @returns {any} + */ + getTickPlacement(): any; + + /** To get Tick Style in string + * @returns {any} + */ + getTickStyle(): any; + + /** To get Tick Width in number + * @returns {any} + */ + getTickWidth(): any; + + /** To get get Tick XDistance From Scale in number + * @returns {any} + */ + getTickXDistanceFromScale(): any; + + /** To get Tick YDistance From Scale in number + * @returns {any} + */ + getTickYDistanceFromScale(): any; + + /** Specifies the scales. + * @returns {void} + */ + scales(): void; + + /** To set setBarDistanceFromScale + * @returns {void} + */ + setBarDistanceFromScale(): void; + + /** To set setBarPointerValue + * @returns {void} + */ + setBarPointerValue(): void; + + /** To set setBarWidth + * @returns {void} + */ + setBarWidth(): void; + + /** To set setCustomLabelAngle + * @returns {void} + */ + setCustomLabelAngle(): void; + + /** To set setCustomLabelValue + * @returns {void} + */ + setCustomLabelValue(): void; + + /** To set setLabelAngle + * @returns {void} + */ + setLabelAngle(): void; + + /** To set setLabelPlacement + * @returns {void} + */ + setLabelPlacement(): void; + + /** To set setLabelStyle + * @returns {void} + */ + setLabelStyle(): void; + + /** To set setLabelXDistanceFromScale + * @returns {void} + */ + setLabelXDistanceFromScale(): void; + + /** To set setLabelYDistanceFromScale + * @returns {void} + */ + setLabelYDistanceFromScale(): void; + + /** To set setMajorIntervalValue + * @returns {void} + */ + setMajorIntervalValue(): void; + + /** To set setMarkerStyle + * @returns {void} + */ + setMarkerStyle(): void; + + /** To set setMaximumValue + * @returns {void} + */ + setMaximumValue(): void; + + /** To set setMinimumValue + * @returns {void} + */ + setMinimumValue(): void; + + /** To set setMinorIntervalValue + * @returns {void} + */ + setMinorIntervalValue(): void; + + /** To set setPointerDistanceFromScale + * @returns {void} + */ + setPointerDistanceFromScale(): void; + + /** To set PointerHeight + * @returns {void} + */ + setPointerHeight(): void; + + /** To set setPointerPlacement + * @returns {void} + */ + setPointerPlacement(): void; + + /** To set PointerValue + * @returns {void} + */ + setPointerValue(): void; + + /** To set PointerWidth + * @returns {void} + */ + setPointerWidth(): void; + + /** To set setRangeBorderWidth + * @returns {void} + */ + setRangeBorderWidth(): void; + + /** To set setRangeDistanceFromScale + * @returns {void} + */ + setRangeDistanceFromScale(): void; + + /** To set setRangeEndValue + * @returns {void} + */ + setRangeEndValue(): void; + + /** To set setRangeEndWidth + * @returns {void} + */ + setRangeEndWidth(): void; + + /** To set setRangePosition + * @returns {void} + */ + setRangePosition(): void; + + /** To set setRangeStartValue + * @returns {void} + */ + setRangeStartValue(): void; + + /** To set setRangeStartWidth + * @returns {void} + */ + setRangeStartWidth(): void; + + /** To set setScaleBarLength + * @returns {void} + */ + setScaleBarLength(): void; + + /** To set setScaleBarSize + * @returns {void} + */ + setScaleBarSize(): void; + + /** To set setScaleBorderWidth + * @returns {void} + */ + setScaleBorderWidth(): void; + + /** To set setScaleDirection + * @returns {void} + */ + setScaleDirection(): void; + + /** To set setScaleLocation + * @returns {void} + */ + setScaleLocation(): void; + + /** To set setScaleStyle + * @returns {void} + */ + setScaleStyle(): void; + + /** To set setTickAngle + * @returns {void} + */ + setTickAngle(): void; + + /** To set setTickHeight + * @returns {void} + */ + setTickHeight(): void; + + /** To set setTickPlacement + * @returns {void} + */ + setTickPlacement(): void; + + /** To set setTickStyle + * @returns {void} + */ + setTickStyle(): void; + + /** To set setTickWidth + * @returns {void} + */ + setTickWidth(): void; + + /** To set setTickXDistanceFromScale + * @returns {void} + */ + setTickXDistanceFromScale(): void; + + /** To set setTickYDistanceFromScale + * @returns {void} + */ + setTickYDistanceFromScale(): void; + } + export namespace LinearGauge { + + export interface Model { + + /** Specifies the animationSpeed + * @Default {500} + */ + animationSpeed?: number; + + /** Specifies the backgroundColor for Linear gauge. + * @Default {null} + */ + backgroundColor?: string; + + /** Specifies the borderColor for Linear gauge. + * @Default {null} + */ + borderColor?: string; + + /** Specifies the animate state + * @Default {true} + */ + enableAnimation?: boolean; + + /** Specifies the animate state for marker pointer + * @Default {true} + */ + enableMarkerPointerAnimation?: boolean; + + /** Specifies the can resize state. + * @Default {false} + */ + isResponsive?: boolean; + + /** Used to Convert the date object to string while using the locale settings + * @Default {false} + */ + enableGroupSeparator?: boolean; + + /** Responsiveness of the linear gauge is controlled + * @Default {false} + */ + enableResize?: boolean; + + /** Specify frame of linear gauge + * @Default {null} + */ + frame?: Frame; + + /** Specifies the height of Linear gauge. + * @Default {400} + */ + height?: number; + + /** Specifies the labelColor for Linear gauge. + * @Default {null} + */ + labelColor?: string; + + /** Set the localization culture for the Linear gauge + * @Default {en-US} + */ + locale?: string; + + /** Specifies the maximum value of Linear gauge. + * @Default {100} + */ + maximum?: number; + + /** Specifies the minimum value of Linear gauge. + * @Default {0} + */ + minimum?: number; + + /** Specifies the orientation for Linear gauge. + * @Default {Vertical} + */ + orientation?: string; + + /** Specify labelPosition value of Linear gauge See + * @Default {bottom} + */ + outerCustomLabelPosition?: ej.datavisualization.LinearGauge.OuterCustomLabelPosition|string; + + /** Specifies the pointerGradient1 for Linear gauge. + * @Default {null} + */ + pointerGradient1?: any; + + /** Specifies the pointerGradient2 for Linear gauge. + * @Default {null} + */ + pointerGradient2?: any; + + /** Specifies the read only state. + * @Default {true} + */ + readOnly?: boolean; + + /** Specifies the scales + * @Default {null} + */ + scales?: Scale[]; + + /** Specifies the theme for Linear gauge. See LinearGauge.Themes + * @Default {flatlight} + */ + theme?: ej.datavisualization.LinearGauge.Themes|string; + + /** Specifies the tick Color for Linear gauge. + * @Default {null} + */ + tickColor?: string; + + /** Specify tooltip options of linear gauge + * @Default {false} + */ + tooltip?: Tooltip; + + /** Specifies the value of the Gauge. + * @Default {0} + */ + value?: number; + + /** Specifies the width of Linear gauge. + * @Default {150} + */ + width?: number; + + /** Triggers while the bar pointer are being drawn on the gauge. + */ + drawBarPointers?(e: DrawBarPointersEventArgs): void; + + /** Triggers while the customLabel are being drawn on the gauge. + */ + drawCustomLabel?(e: DrawCustomLabelEventArgs): void; + + /** Triggers while the Indicator are being drawn on the gauge. + */ + drawIndicators?(e: DrawIndicatorsEventArgs): void; + + /** Triggers while the label are being drawn on the gauge. + */ + drawLabels?(e: DrawLabelsEventArgs): void; + + /** Triggers while the marker are being drawn on the gauge. + */ + drawMarkerPointers?(e: DrawMarkerPointersEventArgs): void; + + /** Triggers while the range are being drawn on the gauge. + */ + drawRange?(e: DrawRangeEventArgs): void; + + /** Triggers while the ticks are being drawn on the gauge. + */ + drawTicks?(e: DrawTicksEventArgs): void; + + /** Triggers when the gauge is initialized. + */ + init?(e: InitEventArgs): void; + + /** Triggers while the gauge start to Load. + */ + load?(e: LoadEventArgs): void; + + /** Triggers when the left mouse button is clicked. + */ + mouseClick?(e: MouseClickEventArgs): void; + + /** Triggers when clicking and dragging the mouse pointer over the gauge pointer. + */ + mouseClickMove?(e: MouseClickMoveEventArgs): void; + + /** Triggers when the mouse click is released. + */ + mouseClickUp?(e: MouseClickUpEventArgs): void; + + /** Triggers while the rendering of the gauge completed. + */ + renderComplete?(e: RenderCompleteEventArgs): void; + } + + export interface DrawBarPointersEventArgs { + + /** returns the object of the gauge. + */ + object?: any; + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the context element + */ + context?: any; + + /** returns the startX and startY of the pointer + */ + position?: any; + + /** returns the gauge model + */ + Model?: any; - class SymbolPalette extends ej.Widget { - static fn: SymbolPalette; - constructor(element: JQuery | Element, options?: SymbolPalette.Model); - static Locale: any; - model: SymbolPalette.Model; - defaults: SymbolPalette.Model; - - /** Add items to Palettes at runtime - * @param {string} name of the Palette - * @param {any} JSON for the new items to added in Palette - * @returns {void} - */ - addPaletteItem(paletteName: string, node: any): void; - - /** Remove items to Palettes at runtime - * @param {string} name of the Palette - * @param {any} JSON for the new node to removed in Palette - * @returns {void} - */ - removePaletteItem(paletteName: string, node: any): void; - } - export namespace SymbolPalette { - - export interface Model { - - /** Defines whether the symbols can be dragged from palette or not - * @Default {true} - */ - allowDrag?: boolean; - - /** Customizes the style of the symbol palette - * @Default {e-symbolpalette} - */ - cssClass?: string; - - /** Defines the default properties of nodes and connectors - */ - defaultSettings?: DefaultSettings; - - /** Sets the Id of the diagram, over which the symbols will be dropped - * @Default {null} - */ - diagramId?: string; - - /** Sets the height of the palette headers - * @Default {30} - */ - headerHeight?: number; - - /** Defines the height of the symbol palette - * @Default {400} - */ - height?: number; - - /** Defines the height of the palette items - * @Default {50} - */ - paletteItemHeight?: number; - - /** Defines the width of the palette items - * @Default {50} - */ - paletteItemWidth?: number; - - /** An array of JSON objects, where each object represents a node/connector - * @Default {[]} - */ - palettes?: Palette[]; - - /** Defines the preview height of the symbols - * @Default {100} - */ - previewHeight?: number; - - /** Defines the offset value to be left between the mouse cursor and symbol previews - * @Default {(110, 110)} - */ - previewOffset?: any; - - /** Defines the width of the symbol previews - * @Default {100} - */ - previewWidth?: number; - - /** Enable or disable the palette item text - * @Default {true} - */ - showPaletteItemText?: boolean; - - /** The width of the palette - * @Default {250} - */ - width?: number; - - /** Triggers when a palette item is selected or unselected */ - selectionChange?(e: SelectionChangeEventArgs): void; - } - - export interface SelectionChangeEventArgs { - - /** returns whether an element is selected or unselected - */ - changeType?: string; - - /** returns the node or connector that is selected or unselected - */ - element?: any; - } - - export interface DefaultSettings { - - /** Defines the default properties of the nodes - * @Default {null} - */ - node?: any; - - /** Defines the default properties of the connectors - * @Default {null} - */ - connector?: any; - } - - export interface Palette { - - /** Defines the name of the palette - * @Default {null} - */ - name?: string; - - /** Defines whether the palette must be in expanded state or in collapsed state - * @Default {true} - */ - expanded?: boolean; - - /** Defines the palette items - * @Default {[]} - */ - items?: any[]; - } - } - - class LinearGauge extends ej.Widget { - static fn: LinearGauge; - constructor(element: JQuery | Element, options?: LinearGauge.Model); - static Locale: any; - model: LinearGauge.Model; - defaults: LinearGauge.Model; - - /** destroy the linear gauge all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** To export Image - * @returns {void} - */ - exportImage(): void; - - /** To get Bar Distance From Scale in number - * @returns {any} - */ - getBarDistanceFromScale(): any; - - /** To get Bar Pointer Value in number - * @returns {any} - */ - getBarPointerValue(): any; - - /** To get Bar Width in number - * @returns {any} - */ - getBarWidth(): any; - - /** To get CustomLabel Angle in number - * @returns {any} - */ - getCustomLabelAngle(): any; - - /** To get CustomLabel Value in string - * @returns {any} - */ - getCustomLabelValue(): any; - - /** To get Label Angle in number - * @returns {any} - */ - getLabelAngle(): any; - - /** To get LabelPlacement in number - * @returns {any} - */ - getLabelPlacement(): any; - - /** To get LabelStyle in number - * @returns {any} - */ - getLabelStyle(): any; - - /** To get Label XDistance From Scale in number - * @returns {any} - */ - getLabelXDistanceFromScale(): any; - - /** To get PointerValue in number - * @returns {any} - */ - getLabelYDistanceFromScale(): any; - - /** To get Major Interval Value in number - * @returns {any} - */ - getMajorIntervalValue(): any; - - /** To get MarkerStyle in number - * @returns {any} - */ - getMarkerStyle(): any; - - /** To get Maximum Value in number - * @returns {any} - */ - getMaximumValue(): any; - - /** To get PointerValue in number - * @returns {any} - */ - getMinimumValue(): any; - - /** To get Minor Interval Value in number - * @returns {any} - */ - getMinorIntervalValue(): any; - - /** To get Pointer Distance From Scale in number - * @returns {any} - */ - getPointerDistanceFromScale(): any; - - /** To get PointerHeight in number - * @returns {any} - */ - getPointerHeight(): any; - - /** To get Pointer Placement in String - * @returns {any} - */ - getPointerPlacement(): any; - - /** To get PointerValue in number - * @returns {any} - */ - getPointerValue(): any; - - /** To get PointerWidth in number - * @returns {any} - */ - getPointerWidth(): any; - - /** To get Range Border Width in number - * @returns {any} - */ - getRangeBorderWidth(): any; - - /** To get Range Distance From Scale in number - * @returns {any} - */ - getRangeDistanceFromScale(): any; - - /** To get Range End Value in number - * @returns {any} - */ - getRangeEndValue(): any; - - /** To get Range End Width in number - * @returns {any} - */ - getRangeEndWidth(): any; - - /** To get Range Position in number - * @returns {any} - */ - getRangePosition(): any; - - /** To get Range Start Value in number - * @returns {any} - */ - getRangeStartValue(): any; - - /** To get Range Start Width in number - * @returns {any} - */ - getRangeStartWidth(): any; - - /** To get ScaleBarLength in number - * @returns {any} - */ - getScaleBarLength(): any; - - /** To get Scale Bar Size in number - * @returns {any} - */ - getScaleBarSize(): any; - - /** To get Scale Border Width in number - * @returns {any} - */ - getScaleBorderWidth(): any; - - /** To get Scale Direction in number - * @returns {any} - */ - getScaleDirection(): any; - - /** To get Scale Location in object - * @returns {any} - */ - getScaleLocation(): any; - - /** To get Scale Style in string - * @returns {any} - */ - getScaleStyle(): any; - - /** To get Tick Angle in number - * @returns {any} - */ - getTickAngle(): any; - - /** To get Tick Height in number - * @returns {any} - */ - getTickHeight(): any; - - /** To get getTickPlacement in number - * @returns {any} - */ - getTickPlacement(): any; - - /** To get Tick Style in string - * @returns {any} - */ - getTickStyle(): any; - - /** To get Tick Width in number - * @returns {any} - */ - getTickWidth(): any; - - /** To get get Tick XDistance From Scale in number - * @returns {any} - */ - getTickXDistanceFromScale(): any; - - /** To get Tick YDistance From Scale in number - * @returns {any} - */ - getTickYDistanceFromScale(): any; - - /** Specifies the scales. - * @returns {void} - */ - scales(): void; - - /** To set setBarDistanceFromScale - * @returns {void} - */ - setBarDistanceFromScale(): void; - - /** To set setBarPointerValue - * @returns {void} - */ - setBarPointerValue(): void; - - /** To set setBarWidth - * @returns {void} - */ - setBarWidth(): void; - - /** To set setCustomLabelAngle - * @returns {void} - */ - setCustomLabelAngle(): void; - - /** To set setCustomLabelValue - * @returns {void} - */ - setCustomLabelValue(): void; - - /** To set setLabelAngle - * @returns {void} - */ - setLabelAngle(): void; - - /** To set setLabelPlacement - * @returns {void} - */ - setLabelPlacement(): void; - - /** To set setLabelStyle - * @returns {void} - */ - setLabelStyle(): void; - - /** To set setLabelXDistanceFromScale - * @returns {void} - */ - setLabelXDistanceFromScale(): void; - - /** To set setLabelYDistanceFromScale - * @returns {void} - */ - setLabelYDistanceFromScale(): void; - - /** To set setMajorIntervalValue - * @returns {void} - */ - setMajorIntervalValue(): void; - - /** To set setMarkerStyle - * @returns {void} - */ - setMarkerStyle(): void; - - /** To set setMaximumValue - * @returns {void} - */ - setMaximumValue(): void; - - /** To set setMinimumValue - * @returns {void} - */ - setMinimumValue(): void; - - /** To set setMinorIntervalValue - * @returns {void} - */ - setMinorIntervalValue(): void; - - /** To set setPointerDistanceFromScale - * @returns {void} - */ - setPointerDistanceFromScale(): void; - - /** To set PointerHeight - * @returns {void} - */ - setPointerHeight(): void; - - /** To set setPointerPlacement - * @returns {void} - */ - setPointerPlacement(): void; - - /** To set PointerValue - * @returns {void} - */ - setPointerValue(): void; - - /** To set PointerWidth - * @returns {void} - */ - setPointerWidth(): void; - - /** To set setRangeBorderWidth - * @returns {void} - */ - setRangeBorderWidth(): void; - - /** To set setRangeDistanceFromScale - * @returns {void} - */ - setRangeDistanceFromScale(): void; - - /** To set setRangeEndValue - * @returns {void} - */ - setRangeEndValue(): void; - - /** To set setRangeEndWidth - * @returns {void} - */ - setRangeEndWidth(): void; - - /** To set setRangePosition - * @returns {void} - */ - setRangePosition(): void; - - /** To set setRangeStartValue - * @returns {void} - */ - setRangeStartValue(): void; - - /** To set setRangeStartWidth - * @returns {void} - */ - setRangeStartWidth(): void; - - /** To set setScaleBarLength - * @returns {void} - */ - setScaleBarLength(): void; - - /** To set setScaleBarSize - * @returns {void} - */ - setScaleBarSize(): void; - - /** To set setScaleBorderWidth - * @returns {void} - */ - setScaleBorderWidth(): void; - - /** To set setScaleDirection - * @returns {void} - */ - setScaleDirection(): void; - - /** To set setScaleLocation - * @returns {void} - */ - setScaleLocation(): void; - - /** To set setScaleStyle - * @returns {void} - */ - setScaleStyle(): void; - - /** To set setTickAngle - * @returns {void} - */ - setTickAngle(): void; - - /** To set setTickHeight - * @returns {void} - */ - setTickHeight(): void; - - /** To set setTickPlacement - * @returns {void} - */ - setTickPlacement(): void; - - /** To set setTickStyle - * @returns {void} - */ - setTickStyle(): void; - - /** To set setTickWidth - * @returns {void} - */ - setTickWidth(): void; - - /** To set setTickXDistanceFromScale - * @returns {void} - */ - setTickXDistanceFromScale(): void; - - /** To set setTickYDistanceFromScale - * @returns {void} - */ - setTickYDistanceFromScale(): void; - } - export namespace LinearGauge { - - export interface Model { - - /** Specifies the animationSpeed - * @Default {500} - */ - animationSpeed?: number; - - /** Specifies the backgroundColor for Linear gauge. - * @Default {null} - */ - backgroundColor?: string; - - /** Specifies the borderColor for Linear gauge. - * @Default {null} - */ - borderColor?: string; - - /** Specifies the animate state - * @Default {true} - */ - enableAnimation?: boolean; - - /** Specifies the animate state for marker pointer - * @Default {true} - */ - enableMarkerPointerAnimation?: boolean; - - /** Specifies the can resize state. - * @Default {false} - */ - isResponsive?: boolean; - - /** Used to Convert the date object to string while using the locale settings - * @Default {false} - */ - enableGroupSeparator?: boolean; - - /** Responsiveness of the linear gauge is controlled - * @Default {false} - */ - enableResize?: boolean; - - /** Specify frame of linear gauge - * @Default {null} - */ - frame?: Frame; - - /** Specifies the height of Linear gauge. - * @Default {400} - */ - height?: number; - - /** Specifies the labelColor for Linear gauge. - * @Default {null} - */ - labelColor?: string; - /** Set the localization culture for the Linear gauge - * @Default {en-US} - */ - locale?: string; - - /** Specifies the maximum value of Linear gauge. - * @Default {100} - */ - maximum?: number; - - /** Specifies the minimum value of Linear gauge. - * @Default {0} - */ - minimum?: number; - - /** Specifies the orientation for Linear gauge. - * @Default {Vertical} - */ - orientation?: string; - - /** Specify labelPosition value of Linear gauge See OuterCustomLabelPosition - * @Default {bottom} - */ - outerCustomLabelPosition?: ej.datavisualization.LinearGauge.OuterCustomLabelPosition | string; - - /** Specifies the pointerGradient1 for Linear gauge. - * @Default {null} - */ - pointerGradient1?: any; - - /** Specifies the pointerGradient2 for Linear gauge. - * @Default {null} - */ - pointerGradient2?: any; - - /** Specifies the read only state. - * @Default {true} - */ - readOnly?: boolean; - - /** Specifies the scales - * @Default {null} - */ - scales?: Scale[]; - - /** Specifies the theme for Linear gauge. See LinearGauge.Themes - * @Default {flatlight} - */ - theme?: ej.datavisualization.LinearGauge.Themes | string; - - /** Specifies the tick Color for Linear gauge. - * @Default {null} - */ - tickColor?: string; - - /** Specify tooltip options of linear gauge - * @Default {false} - */ - tooltip?: Tooltip; - - /** Specifies the value of the Gauge. - * @Default {0} - */ - value?: number; - - /** Specifies the width of Linear gauge. - * @Default {150} - */ - width?: number; - - /** Triggers while the bar pointer are being drawn on the gauge. */ - drawBarPointers?(e: DrawBarPointersEventArgs): void; - - /** Triggers while the customLabel are being drawn on the gauge. */ - drawCustomLabel?(e: DrawCustomLabelEventArgs): void; - - /** Triggers while the Indicator are being drawn on the gauge. */ - drawIndicators?(e: DrawIndicatorsEventArgs): void; - - /** Triggers while the label are being drawn on the gauge. */ - drawLabels?(e: DrawLabelsEventArgs): void; - - /** Triggers while the marker are being drawn on the gauge. */ - drawMarkerPointers?(e: DrawMarkerPointersEventArgs): void; - - /** Triggers while the range are being drawn on the gauge. */ - drawRange?(e: DrawRangeEventArgs): void; - - /** Triggers while the ticks are being drawn on the gauge. */ - drawTicks?(e: DrawTicksEventArgs): void; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** Triggers when the gauge is initialized. */ - init?(e: InitEventArgs): void; - - /** Triggers while the gauge start to Load. */ - load?(e: LoadEventArgs): void; - - /** Triggers when the left mouse button is clicked. */ - mouseClick?(e: MouseClickEventArgs): void; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** Triggers when clicking and dragging the mouse pointer over the gauge pointer. */ - mouseClickMove?(e: MouseClickMoveEventArgs): void; + /** returns the pointer style + */ + style?: string; - /** Triggers when the mouse click is released. */ - mouseClickUp?(e: MouseClickUpEventArgs): void; + /** returns the current Bar pointer element. + */ + barElement?: any; - /** Triggers while the rendering of the gauge completed. */ - renderComplete?(e: RenderCompleteEventArgs): void; - } + /** returns the index of the bar pointer. + */ + barPointerIndex?: number; - export interface DrawBarPointersEventArgs { + /** returns the value of the bar pointer. + */ + PointerValue?: number; - /** returns the object of the gauge. - */ - object?: any; + /** returns the name of the event + */ + type?: any; + } - /** returns the cancel option value - */ - cancel?: boolean; + export interface DrawCustomLabelEventArgs { - /** returns the context element - */ - context?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the startX and startY of the pointer - */ - position?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the gauge model - */ - Model?: any; + /** returns the context element + */ + context?: any; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the startX and startY of the customLabel + */ + position?: any; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** returns the gauge model + */ + Model?: any; - /** returns the pointer style - */ - style?: string; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** returns the current Bar pointer element. - */ - barElement?: any; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the index of the bar pointer. - */ - barPointerIndex?: number; + /** returns the customLabel style + */ + style?: any; - /** returns the value of the bar pointer. - */ - PointerValue?: number; + /** returns the current customLabel element. + */ + customLabelElement?: any; - /** returns the name of the event - */ - type?: any; - } + /** returns the index of the customLabel. + */ + customLabelIndex?: number; - export interface DrawCustomLabelEventArgs { + /** returns the name of the event + */ + type?: any; + } - /** returns the object of the gauge. - */ - object?: any; + export interface DrawIndicatorsEventArgs { - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the object of the gauge. + */ + object?: any; - /** returns the context element - */ - context?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the startX and startY of the customLabel - */ - position?: any; + /** returns the context element + */ + context?: any; - /** returns the gauge model - */ - Model?: any; + /** returns the startX and startY of the Indicator + */ + position?: any; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the gauge model + */ + Model?: any; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** returns the customLabel style - */ - style?: any; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the current customLabel element. - */ - customLabelElement?: any; + /** returns the Indicator style + */ + style?: string; - /** returns the index of the customLabel. - */ - customLabelIndex?: number; + /** returns the current Indicator element. + */ + IndicatorElement?: any; - /** returns the name of the event - */ - type?: any; - } + /** returns the index of the Indicator. + */ + IndicatorIndex?: number; - export interface DrawIndicatorsEventArgs { + /** returns the name of the event + */ + type?: any; + } - /** returns the object of the gauge. - */ - object?: any; + export interface DrawLabelsEventArgs { - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the object of the gauge. + */ + object?: any; - /** returns the context element - */ - context?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the startX and startY of the Indicator - */ - position?: any; + /** returns the context element + */ + context?: any; - /** returns the gauge model - */ - Model?: any; + /** returns the startX and startY of the label + */ + position?: any; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the gauge model + */ + Model?: any; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** returns the Indicator style - */ - style?: string; + /** returns the scaleIndex to which the label belongs. + */ + scaleIndex?: number; - /** returns the current Indicator element. - */ - IndicatorElement?: any; + /** returns the label style + */ + style?: string; - /** returns the index of the Indicator. - */ - IndicatorIndex?: number; + /** returns the angle of the label. + */ + angle?: number; - /** returns the name of the event - */ - type?: any; - } + /** returns the current label element. + */ + element?: any; - export interface DrawLabelsEventArgs { + /** returns the index of the label. + */ + index?: number; - /** returns the object of the gauge. - */ - object?: any; + /** returns the label value of the label. + */ + value?: number; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: any; + } - /** returns the context element - */ - context?: any; + export interface DrawMarkerPointersEventArgs { - /** returns the startX and startY of the label - */ - position?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the gauge model - */ - Model?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the context element + */ + context?: any; - /** returns the scaleIndex to which the label belongs. - */ - scaleIndex?: number; + /** returns the startX and startY of the pointer + */ + position?: any; - /** returns the label style - */ - style?: string; + /** returns the gauge model + */ + Model?: any; - /** returns the angle of the label. - */ - angle?: number; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** returns the current label element. - */ - element?: any; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the index of the label. - */ - index?: number; + /** returns the ticks style + */ + style?: string; - /** returns the label value of the label. - */ - value?: number; + /** returns the current marker pointer element. + */ + markerElement?: any; - /** returns the name of the event - */ - type?: any; - } + /** returns the index of the marker pointer. + */ + markerPointerIndex?: number; - export interface DrawMarkerPointersEventArgs { + /** returns the value of the marker pointer. + */ + pointerValue?: number; - /** returns the object of the gauge. - */ - object?: any; + /** returns the angle of the marker pointer. + */ + pointerAngle?: number; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: any; + } - /** returns the context element - */ - context?: any; + export interface DrawRangeEventArgs { - /** returns the startX and startY of the pointer - */ - position?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the gauge model - */ - Model?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the context element + */ + context?: any; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** returns the startX and startY of the range + */ + position?: any; - /** returns the ticks style - */ - style?: string; + /** returns the gauge model + */ + Model?: any; - /** returns the current marker pointer element. - */ - markerElement?: any; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** returns the index of the marker pointer. - */ - markerPointerIndex?: number; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the value of the marker pointer. - */ - pointerValue?: number; + /** returns the range style + */ + style?: string; - /** returns the angle of the marker pointer. - */ - pointerAngle?: number; + /** returns the current range element. + */ + rangeElement?: any; - /** returns the name of the event - */ - type?: any; - } + /** returns the index of the range. + */ + rangeIndex?: number; - export interface DrawRangeEventArgs { + /** returns the name of the event + */ + type?: any; + } - /** returns the object of the gauge. - */ - object?: any; + export interface DrawTicksEventArgs { - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the object of the gauge. + */ + object?: any; - /** returns the context element - */ - context?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the startX and startY of the range - */ - position?: any; + /** returns the context element + */ + context?: any; - /** returns the gauge model - */ - Model?: any; + /** returns the startX and startY of the ticks + */ + position?: any; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the gauge model + */ + Model?: any; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** returns the range style - */ - style?: string; + /** returns the scaleIndex to which the tick belongs. + */ + scaleIndex?: number; - /** returns the current range element. - */ - rangeElement?: any; + /** returns the ticks style + */ + style?: string; - /** returns the index of the range. - */ - rangeIndex?: number; + /** returns the angle of the tick. + */ + angle?: number; - /** returns the name of the event - */ - type?: any; - } + /** returns the current tick element. + */ + element?: any; - export interface DrawTicksEventArgs { + /** returns the index of the tick. + */ + index?: number; - /** returns the object of the gauge. - */ - object?: any; + /** returns the tick value of the tick. + */ + value?: number; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: any; + } - /** returns the context element - */ - context?: any; + export interface InitEventArgs { - /** returns the startX and startY of the ticks - */ - position?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the gauge model - */ - Model?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the gauge model + */ + Model?: any; - /** returns the scaleIndex to which the tick belongs. - */ - scaleIndex?: number; + /** returns the entire scale element. + */ + scaleElement?: any; - /** returns the ticks style - */ - style?: string; + /** returns the context element + */ + context?: any; - /** returns the angle of the tick. - */ - angle?: number; + /** returns the name of the event + */ + type?: string; + } - /** returns the current tick element. - */ - element?: any; + export interface LoadEventArgs { - /** returns the index of the tick. - */ - index?: number; + /** returns the object of the gauge. + */ + object?: any; - /** returns the tick value of the tick. - */ - value?: number; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: any; - } + /** returns the gauge model + */ + Model?: any; - export interface InitEventArgs { + /** returns the entire scale element. + */ + scaleElement?: any; - /** returns the object of the gauge. - */ - object?: any; + /** returns the context element + */ + context?: any; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: any; + } - /** returns the gauge model - */ - Model?: any; + export interface MouseClickEventArgs { - /** returns the entire scale element. - */ - scaleElement?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the context element - */ - context?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; - } + /** returns the gauge model + */ + model?: any; - export interface LoadEventArgs { + /** returns the name of the event + */ + type?: any; - /** returns the object of the gauge. - */ - object?: any; + /** returns the scale element. + */ + scaleElement?: any; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the gauge model - */ - Model?: any; + /** returns the context element* @param {Object} args.markerpointer returns the context element + */ + context?: any; - /** returns the entire scale element. - */ - scaleElement?: any; + /** returns the pointer Index + */ + markerpointerindex?: number; - /** returns the context element - */ - context?: any; + /** returns the pointer element. + */ + markerpointerelement?: any; - /** returns the name of the event - */ - type?: any; - } + /** returns the value of the pointer. + */ + markerpointervalue?: number; - export interface MouseClickEventArgs { + /** returns the pointer style + */ + style?: string; - /** returns the object of the gauge. - */ - object?: any; + /** returns the startX and startY of the pointer. + */ + position?: any; + } - /** returns the cancel option value - */ - cancel?: boolean; + export interface MouseClickMoveEventArgs { - /** returns the gauge model - */ - model?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the name of the event - */ - type?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the scale element. - */ - scaleElement?: any; + /** returns the gauge model + */ + model?: any; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** returns the name of the event + */ + type?: any; - /** returns the context element* @param {Object} args.markerpointer returns the context element - */ - context?: any; + /** returns the scale element. + */ + scaleElement?: any; - /** returns the pointer Index - */ - markerpointerindex?: number; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the pointer element. - */ - markerpointerelement?: any; + /** returns the context element + */ + context?: any; - /** returns the value of the pointer. - */ - markerpointervalue?: number; + /** returns the pointer Index + */ + index?: number; - /** returns the pointer style - */ - style?: string; + /** returns the pointer element. + */ + element?: any; - /** returns the startX and startY of the pointer. - */ - position?: any; - } + /** returns the value of the pointer. + */ + value?: number; - export interface MouseClickMoveEventArgs { + /** returns the pointer style + */ + style?: string; - /** returns the object of the gauge. - */ - object?: any; + /** returns the startX and startY of the pointer. + */ + position?: any; + } - /** returns the cancel option value - */ - cancel?: boolean; + export interface MouseClickUpEventArgs { - /** returns the gauge model - */ - model?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the name of the event - */ - type?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the scale element. - */ - scaleElement?: any; + /** returns the gauge model + */ + model?: any; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** returns the name of the event + */ + type?: any; - /** returns the context element - */ - context?: any; + /** returns the scale element. + */ + scaleElement?: any; - /** returns the pointer Index - */ - index?: number; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the pointer element. - */ - element?: any; + /** returns the context element* @param {Object} args.markerpointer returns the context element + */ + context?: any; + + /** returns the pointer Index + */ + markerpointerIndex?: number; + + /** returns the pointer element. + */ + markerpointerElement?: any; + + /** returns the value of the pointer. + */ + markerpointerValue?: number; + + /** returns the pointer style + */ + style?: string; + + /** returns the startX and startY of the pointer. + */ + position?: any; + } + + export interface RenderCompleteEventArgs { + + /** returns the object of the gauge. + */ + object?: any; + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the gauge model + */ + Model?: any; + + /** returns the entire scale element. + */ + scaleElement?: any; + + /** returns the context element + */ + context?: any; + + /** returns the name of the event + */ + type?: any; + } + + export interface Frame { + + /** Specifies the frame background image URL of linear gauge + * @Default {null} + */ + backgroundImageUrl?: string; + + /** Specifies the frame InnerWidth + * @Default {8} + */ + innerWidth?: number; + + /** Specifies the frame OuterWidth + * @Default {12} + */ + outerWidth?: number; + } + + export interface ScalesBarPointersBorder { + + /** Specifies the border Color of bar pointer + * @Default {null} + */ + color?: string; + + /** Specifies the border Width of bar pointer + * @Default {1.5} + */ + width?: number; + } + + export interface ScalesBarPointer { + + /** Specifies the backgroundColor of bar pointer + * @Default {null} + */ + backgroundColor?: string; + + /** Specifies the border of bar pointer + * @Default {null} + */ + border?: ScalesBarPointersBorder; + + /** Specifies the distanceFromScale of bar pointer + * @Default {0} + */ + distanceFromScale?: number; + + /** Specifies the scaleBar Gradient of bar pointer + * @Default {null} + */ + gradients?: any; + + /** Specifies the opacity of bar pointer + * @Default {1} + */ + opacity?: number; + + /** Specifies the value of bar pointer + * @Default {null} + */ + value?: number; + + /** Specifies the pointer Width of bar pointer + * @Default {width=30} + */ + width?: number; + } + + export interface ScalesBorder { + + /** Specifies the border color of the Scale. + * @Default {null} + */ + color?: string; + + /** Specifies the border width of the Scale. + * @Default {1.5} + */ + width?: number; + } + + export interface ScalesCustomLabelsFont { + + /** Specifies the fontFamily in customLabels + * @Default {Arial} + */ + fontFamily?: string; + + /** Specifies the fontStyle in customLabels. See + * @Default {Bold} + */ + fontStyle?: ej.datavisualization.LinearGauge.FontStyle|string; + + /** Specifies the font size in customLabels + * @Default {11px} + */ + size?: string; + } + + export interface ScalesCustomLabelsPosition { + + /** Specifies the position x in customLabels + * @Default {0} + */ + x?: number; + + /** Specifies the y in customLabels + * @Default {0} + */ + y?: number; + } + + export interface ScalesCustomLabel { + + /** Specifies the label Color in customLabels + * @Default {null} + */ + color?: number; + + /** Specifies the font in customLabels + * @Default {null} + */ + font?: ScalesCustomLabelsFont; + + /** Specifies the opacity in customLabels + * @Default {0} + */ + opacity?: string; + + /** Specifies the position in customLabels + * @Default {null} + */ + position?: ScalesCustomLabelsPosition; + + /** Specifies the positionType in customLabels.See CustomLabelPositionType + * @Default {null} + */ + positionType?: any; + + /** Specifies the textAngle in customLabels + * @Default {0} + */ + textAngle?: number; + + /** Specifies the label Value in customLabels + */ + value?: string; + } + + export interface ScalesIndicatorsBorder { + + /** Specifies the border Color in bar indicators + * @Default {null} + */ + color?: string; + + /** Specifies the border Width in bar indicators + * @Default {1.5} + */ + width?: number; + } + + export interface ScalesIndicatorsFont { + + /** Specifies the fontFamily of font in bar indicators + * @Default {Arial} + */ + fontFamily?: string; + + /** Specifies the fontStyle of font in bar indicators. See FontStyle + * @Default {ej.datavisualization.LinearGauge.FontStyle.Bold} + */ + fontStyle?: ej.datavisualization.LinearGauge.FontStyle|string; + + /** Specifies the size of font in bar indicators + * @Default {11px} + */ + size?: string; + } + + export interface ScalesIndicatorsPosition { + + /** Specifies the x position in bar indicators + * @Default {0} + */ + x?: number; + + /** Specifies the y position in bar indicators + * @Default {0} + */ + y?: number; + } + + export interface ScalesIndicatorsStateRange { + + /** Specifies the backgroundColor in bar indicators state ranges + * @Default {null} + */ + backgroundColor?: string; + + /** Specifies the borderColor in bar indicators state ranges + * @Default {null} + */ + borderColor?: string; + + /** Specifies the endValue in bar indicators state ranges + * @Default {60} + */ + endValue?: number; + + /** Specifies the startValue in bar indicators state ranges + * @Default {50} + */ + startValue?: number; + + /** Specifies the text in bar indicators state ranges + */ + text?: string; + + /** Specifies the textColor in bar indicators state ranges + * @Default {null} + */ + textColor?: string; + } + + export interface ScalesIndicatorsTextLocation { + + /** Specifies the textLocation position in bar indicators + * @Default {0} + */ + x?: number; + + /** Specifies the Y position in bar indicators + * @Default {0} + */ + y?: number; + } + + export interface ScalesIndicator { + + /** Specifies the backgroundColor in bar indicators + * @Default {null} + */ + backgroundColor?: string; + + /** Specifies the border in bar indicators + * @Default {null} + */ + border?: ScalesIndicatorsBorder; + + /** Specifies the font of bar indicators + * @Default {null} + */ + font?: ScalesIndicatorsFont; + + /** Specifies the indicator Height of bar indicators + * @Default {30} + */ + height?: number; + + /** Specifies the opacity in bar indicators + * @Default {null} + */ + opacity?: number; + + /** Specifies the position in bar indicators + * @Default {null} + */ + position?: ScalesIndicatorsPosition; + + /** Specifies the state ranges in bar indicators + * @Default {Array} + */ + stateRanges?: ScalesIndicatorsStateRange[]; + + /** Specifies the textLocation in bar indicators + * @Default {null} + */ + textLocation?: ScalesIndicatorsTextLocation; + + /** Specifies the indicator Style of font in bar indicators + * @Default {ej.datavisualization.LinearGauge.IndicatorType.Rectangle} + */ + type?: ej.datavisualization.LinearGauge.IndicatorTypes|string; + + /** Specifies the indicator Width in bar indicators + * @Default {30} + */ + width?: number; + } + + export interface ScalesLabelsDistanceFromScale { + + /** Specifies the xDistanceFromScale of labels. + * @Default {-10} + */ + x?: number; + + /** Specifies the yDistanceFromScale of labels. + * @Default {0} + */ + y?: number; + } + + export interface ScalesLabelsFont { + + /** Specifies the fontFamily of font. + * @Default {Arial} + */ + fontFamily?: string; + + /** Specifies the fontStyle of font.See FontStyle + * @Default {ej.datavisualization.LinearGauge.FontStyle.Bold} + */ + fontStyle?: ej.datavisualization.LinearGauge.FontStyle|string; + + /** Specifies the size of font. + * @Default {11px} + */ + size?: string; + } + + export interface ScalesLabel { + + /** Specifies the angle of labels. + * @Default {0} + */ + angle?: number; + + /** Specifies the DistanceFromScale of labels. + * @Default {null} + */ + distanceFromScale?: ScalesLabelsDistanceFromScale; + + /** Specifies the font of labels. + * @Default {null} + */ + font?: ScalesLabelsFont; + + /** need to includeFirstValue. + * @Default {true} + */ + includeFirstValue?: boolean; + + /** Specifies the opacity of label. + * @Default {0} + */ + opacity?: number; + + /** Specifies the label Placement of label. See + * @Default {Near} + */ + placement?: ej.datavisualization.LinearGauge.PointerPlacement|string; + + /** Specifies the textColor of font. + * @Default {null} + */ + textColor?: string; + + /** Specifies the label Style of label. See + * @Default {ej.datavisualization.LinearGauge.LabelType.Major} + */ + type?: ej.datavisualization.LinearGauge.ScaleType|string; + + /** Specifies the unitText of label. + */ + unitText?: string; + + /** Specifies the unitText Position of label.See + * @Default {Back} + */ + unitTextPlacement?: ej.datavisualization.LinearGauge.UnitTextPlacement|string; + } + + export interface ScalesMarkerPointersBorder { + + /** Specifies the border color of marker pointer + * @Default {null} + */ + color?: string; + + /** Specifies the border of marker pointer + * @Default {number} + */ + width?: number; + } + + export interface ScalesMarkerPointer { + + /** Specifies the backgroundColor of marker pointer + * @Default {null} + */ + backgroundColor?: string; + + /** Specifies the border of marker pointer + * @Default {null} + */ + border?: ScalesMarkerPointersBorder; + + /** Specifies the distanceFromScale of marker pointer + * @Default {0} + */ + distanceFromScale?: number; + + /** Specifies the pointer Gradient of marker pointer + * @Default {null} + */ + gradients?: any; + + /** Specifies the pointer Length of marker pointer + * @Default {30} + */ + length?: number; + + /** Specifies the opacity of marker pointer + * @Default {1} + */ + opacity?: number; + + /** Specifies the pointer Placement of marker pointer See PointerPlacement + * @Default {Far} + */ + placement?: ej.datavisualization.LinearGauge.PointerPlacement|string; + + /** Specifies the marker Style of marker pointerSee + * @Default {Triangle} + */ + type?: ej.datavisualization.LinearGauge.MarkerType|string; + + /** Specifies the value of marker pointer + * @Default {null} + */ + value?: number; + + /** Specifies the pointer Width of marker pointer + * @Default {30} + */ + width?: number; + } + + export interface ScalesPosition { + + /** Specifies the Horizontal position + * @Default {50} + */ + x?: number; + + /** Specifies the vertical position + * @Default {50} + */ + y?: number; + } + + export interface ScalesRangesBorder { + + /** Specifies the border color in the ranges. + * @Default {null} + */ + color?: string; + + /** Specifies the border width in the ranges. + * @Default {1.5} + */ + width?: number; + } + + export interface ScalesRange { + + /** Specifies the backgroundColor in the ranges. + * @Default {null} + */ + backgroundColor?: string; + + /** Specifies the border in the ranges. + * @Default {null} + */ + border?: ScalesRangesBorder; + + /** Specifies the distanceFromScale in the ranges. + * @Default {0} + */ + distanceFromScale?: number; + + /** Specifies the endValue in the ranges. + * @Default {60} + */ + endValue?: number; + + /** Specifies the endWidth in the ranges. + * @Default {10} + */ + endWidth?: number; + + /** Specifies the range Gradient in the ranges. + * @Default {null} + */ + gradients?: any; + + /** Specifies the opacity in the ranges. + * @Default {null} + */ + opacity?: number; + + /** Specifies the range Position in the ranges. See RangePlacement + * @Default {Center} + */ + placement?: ej.datavisualization.LinearGauge.PointerPlacement|string; + + /** Specifies the startValue in the ranges. + * @Default {20} + */ + startValue?: number; + + /** Specifies the startWidth in the ranges. + * @Default {10} + */ + startWidth?: number; + } + + export interface ScalesTicksDistanceFromScale { + + /** Specifies the xDistanceFromScale in the tick. + * @Default {0} + */ + x?: number; + + /** Specifies the yDistanceFromScale in the tick. + * @Default {0} + */ + y?: number; + } + + export interface ScalesTick { + + /** Specifies the angle in the tick. + * @Default {0} + */ + angle?: number; + + /** Specifies the tick Color in the tick. + * @Default {null} + */ + color?: string; + + /** Specifies the DistanceFromScale in the tick. + * @Default {null} + */ + distanceFromScale?: ScalesTicksDistanceFromScale; + + /** Specifies the tick Height in the tick. + * @Default {10} + */ + height?: number; + + /** Specifies the opacity in the tick. + * @Default {0} + */ + opacity?: number; + + /** Specifies the tick Placement in the tick. See TickPlacement + * @Default {Near} + */ + placement?: ej.datavisualization.LinearGauge.PointerPlacement|string; + + /** Specifies the tick Style in the tick. See + * @Default {MajorInterval} + */ + type?: ej.datavisualization.LinearGauge.TicksType|string; + + /** Specifies the tick Width in the tick. + * @Default {3} + */ + width?: number; + } + + export interface Scale { + + /** Specifies the backgroundColor of the Scale. + * @Default {null} + */ + backgroundColor?: string; + + /** Specifies the scaleBar Gradient of bar pointer + * @Default {Array} + */ + barPointers?: ScalesBarPointer[]; + + /** Specifies the border of the Scale. + * @Default {null} + */ + border?: ScalesBorder; + + /** Specifies the customLabel + * @Default {Array} + */ + customLabels?: ScalesCustomLabel[]; + + /** Specifies the scale Direction of the Scale. See + * @Default {CounterClockwise} + */ + direction?: ej.datavisualization.LinearGauge.Direction|string; + + /** Specifies the indicator + * @Default {Array} + */ + indicators?: ScalesIndicator[]; + + /** Specifies the labels. + * @Default {Array} + */ + labels?: ScalesLabel[]; + + /** Specifies the scaleBar Length. + * @Default {290} + */ + length?: number; + + /** Specifies the majorIntervalValue of the Scale. + * @Default {10} + */ + majorIntervalValue?: number; + + /** Specifies the markerPointers + * @Default {Array} + */ + markerPointers?: ScalesMarkerPointer[]; + + /** Specifies the maximum of the Scale. + * @Default {null} + */ + maximum?: number; + + /** Specifies the minimum of the Scale. + * @Default {null} + */ + minimum?: number; + + /** Specifies the minorIntervalValue of the Scale. + * @Default {2} + */ + minorIntervalValue?: number; + + /** Specifies the opacity of the Scale. + * @Default {NaN} + */ + opacity?: number; + + /** Specifies the position + * @Default {null} + */ + position?: ScalesPosition; + + /** Specifies the ranges in the tick. + * @Default {Array} + */ + ranges?: ScalesRange[]; + + /** Specifies the shadowOffset. + * @Default {0} + */ + shadowOffset?: number; + + /** Specifies the showBarPointers state. + * @Default {true} + */ + showBarPointers?: boolean; + + /** Specifies the showCustomLabels state. + * @Default {false} + */ + showCustomLabels?: boolean; + + /** Specifies the showIndicators state. + * @Default {false} + */ + showIndicators?: boolean; + + /** Specifies the showLabels state. + * @Default {true} + */ + showLabels?: boolean; + + /** Specifies the showMarkerPointers state. + * @Default {true} + */ + showMarkerPointers?: boolean; + + /** Specifies the showRanges state. + * @Default {false} + */ + showRanges?: boolean; + + /** Specifies the showTicks state. + * @Default {true} + */ + showTicks?: boolean; + + /** Specifies the ticks in the scale. + * @Default {Array} + */ + ticks?: ScalesTick[]; + + /** Specifies the scaleBar type .See + * @Default {Rectangle} + */ + type?: ej.datavisualization.LinearGauge.ScaleType|string; + + /** Specifies the scaleBar width. + * @Default {30} + */ + width?: number; + } + + export interface Tooltip { + + /** Specify showCustomLabelTooltip value of linear gauge + * @Default {false} + */ + showCustomLabelTooltip?: boolean; + + /** Specify showLabelTooltip value of linear gauge + * @Default {false} + */ + showLabelTooltip?: boolean; + + /** Specify templateID value of linear gauge + * @Default {false} + */ + templateID?: string; + } + } + namespace LinearGauge { + enum OuterCustomLabelPosition { + //string + Left, + //string + Right, + //string + Top, + //string + Bottom, + } + } + namespace LinearGauge { + enum FontStyle { + //string + Bold, + //string + Italic, + //string + Regular, + //string + Strikeout, + //string + Underline, + } + } + namespace LinearGauge { + enum Direction { + //string + Clockwise, + //string + CounterClockwise, + } + } + namespace LinearGauge { + enum IndicatorTypes { + //string + Rectangle, + //string + Circle, + //string + RoundedRectangle, + //string + Text, + } + } + namespace LinearGauge { + enum PointerPlacement { + //string + Near, + //string + Far, + //string + Center, + } + } + namespace LinearGauge { + enum ScaleType { + //string + Major, + //string + Minor, + } + } + namespace LinearGauge { + enum UnitTextPlacement { + //string + Back, + //string + From, + } + } + namespace LinearGauge { + enum MarkerType { + //string + Rectangle, + //string + Triangle, + //string + Ellipse, + //string + Diamond, + //string + Pentagon, + //string + Circle, + //string + Star, + //string + Slider, + //string + Pointer, + //string + Wedge, + //string + Trapezoid, + //string + RoundedRectangle, + } + } + namespace LinearGauge { + enum TicksType { + //string + Majorinterval, + //string + Minorinterval, + } + } + namespace LinearGauge { + enum Themes { + //string + FlatLight, + //string + FlatDark, + } + } + + class CircularGauge extends ej.Widget { + static fn: CircularGauge; + constructor(element: JQuery | Element, options?: CircularGauge.Model); + static Locale: any; + model: CircularGauge.Model; + defaults: CircularGauge.Model; + + /** destroy the circular gauge widget. all events bound using this._on will be unbind automatically and bring the control to pre-init state. + * @returns {void} + */ + destroy(): void; + + /** To export Image + * @returns {boolean} + */ + exportImage(): boolean; + + /** To get BackNeedleLength + * @returns {any} + */ + getBackNeedleLength(): any; + + /** To get CustomLabelAngle + * @returns {any} + */ + getCustomLabelAngle(): any; + + /** To get CustomLabelValue + * @returns {any} + */ + getCustomLabelValue(): any; + + /** To get LabelAngle + * @returns {any} + */ + getLabelAngle(): any; + + /** To get LabelDistanceFromScale + * @returns {any} + */ + getLabelDistanceFromScale(): any; + + /** To get LabelPlacement + * @returns {any} + */ + getLabelPlacement(): any; + + /** To get LabelStyle + * @returns {any} + */ + getLabelStyle(): any; + + /** To get MajorIntervalValue + * @returns {any} + */ + getMajorIntervalValue(): any; + + /** To get MarkerDistanceFromScale + * @returns {any} + */ + getMarkerDistanceFromScale(): any; + + /** To get MarkerStyle + * @returns {any} + */ + getMarkerStyle(): any; + + /** To get MaximumValue + * @returns {any} + */ + getMaximumValue(): any; + + /** To get MinimumValue + * @returns {any} + */ + getMinimumValue(): any; + + /** To get MinorIntervalValue + * @returns {any} + */ + getMinorIntervalValue(): any; + + /** To get NeedleStyle + * @returns {any} + */ + getNeedleStyle(): any; + + /** To get PointerCapBorderWidth + * @returns {any} + */ + getPointerCapBorderWidth(): any; + + /** To get PointerCapRadius + * @returns {any} + */ + getPointerCapRadius(): any; + + /** To get PointerLength + * @returns {any} + */ + getPointerLength(): any; + + /** To get PointerNeedleType + * @returns {any} + */ + getPointerNeedleType(): any; + + /** To get PointerPlacement + * @returns {any} + */ + getPointerPlacement(): any; + + /** To get PointerValue + * @returns {any} + */ + getPointerValue(): any; + + /** To get PointerWidth + * @returns {any} + */ + getPointerWidth(): any; + + /** To get RangeBorderWidth + * @returns {any} + */ + getRangeBorderWidth(): any; + + /** To get RangeDistanceFromScale + * @returns {any} + */ + getRangeDistanceFromScale(): any; + + /** To get RangeEndValue + * @returns {any} + */ + getRangeEndValue(): any; + + /** To get RangePosition + * @returns {any} + */ + getRangePosition(): any; + + /** To get RangeSize + * @returns {any} + */ + getRangeSize(): any; + + /** To get RangeStartValue + * @returns {any} + */ + getRangeStartValue(): any; + + /** To get ScaleBarSize + * @returns {any} + */ + getScaleBarSize(): any; + + /** To get ScaleBorderWidth + * @returns {any} + */ + getScaleBorderWidth(): any; + + /** To get ScaleDirection + * @returns {any} + */ + getScaleDirection(): any; + + /** To get ScaleRadius + * @returns {any} + */ + getScaleRadius(): any; + + /** To get StartAngle + * @returns {any} + */ + getStartAngle(): any; + + /** To get SubGaugeLocation + * @returns {any} + */ + getSubGaugeLocation(): any; + + /** To get SweepAngle + * @returns {any} + */ + getSweepAngle(): any; + + /** To get TickAngle + * @returns {any} + */ + getTickAngle(): any; + + /** To get TickDistanceFromScale + * @returns {any} + */ + getTickDistanceFromScale(): any; + + /** To get TickHeight + * @returns {any} + */ + getTickHeight(): any; + + /** To get TickPlacement + * @returns {any} + */ + getTickPlacement(): any; + + /** To get TickStyle + * @returns {any} + */ + getTickStyle(): any; + + /** To get TickWidth + * @returns {any} + */ + getTickWidth(): any; + + /** To set includeFirstValue + * @returns {void} + */ + includeFirstValue(): void; + + /** Switching the redraw option for the gauge + * @returns {void} + */ + redraw(): void; + + /** To set BackNeedleLength + * @returns {void} + */ + setBackNeedleLength(): void; + + /** To set CustomLabelAngle + * @returns {void} + */ + setCustomLabelAngle(): void; + + /** To set CustomLabelValue + * @returns {void} + */ + setCustomLabelValue(): void; + + /** To set LabelAngle + * @returns {void} + */ + setLabelAngle(): void; + + /** To set LabelDistanceFromScale + * @returns {void} + */ + setLabelDistanceFromScale(): void; + + /** To set LabelPlacement + * @returns {void} + */ + setLabelPlacement(): void; + + /** To set LabelStyle + * @returns {void} + */ + setLabelStyle(): void; + + /** To set MajorIntervalValue + * @returns {void} + */ + setMajorIntervalValue(): void; + + /** To set MarkerDistanceFromScale + * @returns {void} + */ + setMarkerDistanceFromScale(): void; + + /** To set MarkerStyle + * @returns {void} + */ + setMarkerStyle(): void; + + /** To set MaximumValue + * @returns {void} + */ + setMaximumValue(): void; + + /** To set MinimumValue + * @returns {void} + */ + setMinimumValue(): void; + + /** To set MinorIntervalValue + * @returns {void} + */ + setMinorIntervalValue(): void; + + /** To set NeedleStyle + * @returns {void} + */ + setNeedleStyle(): void; + + /** To set PointerCapBorderWidth + * @returns {void} + */ + setPointerCapBorderWidth(): void; + + /** To set PointerCapRadius + * @returns {void} + */ + setPointerCapRadius(): void; + + /** To set PointerLength + * @returns {void} + */ + setPointerLength(): void; + + /** To set PointerNeedleType + * @returns {void} + */ + setPointerNeedleType(): void; + + /** To set PointerPlacement + * @returns {void} + */ + setPointerPlacement(): void; + + /** To set PointerValue + * @returns {void} + */ + setPointerValue(): void; + + /** To set PointerWidth + * @returns {void} + */ + setPointerWidth(): void; + + /** To set RangeBorderWidth + * @returns {void} + */ + setRangeBorderWidth(): void; + + /** To set RangeDistanceFromScale + * @returns {void} + */ + setRangeDistanceFromScale(): void; + + /** To set RangeEndValue + * @returns {void} + */ + setRangeEndValue(): void; + + /** To set RangePosition + * @returns {void} + */ + setRangePosition(): void; + + /** To set RangeSize + * @returns {void} + */ + setRangeSize(): void; + + /** To set RangeStartValue + * @returns {void} + */ + setRangeStartValue(): void; + + /** To set ScaleBarSize + * @returns {void} + */ + setScaleBarSize(): void; + + /** To set ScaleBorderWidth + * @returns {void} + */ + setScaleBorderWidth(): void; + + /** To set ScaleDirection + * @returns {void} + */ + setScaleDirection(): void; + + /** To set ScaleRadius + * @returns {void} + */ + setScaleRadius(): void; + + /** To set StartAngle + * @returns {void} + */ + setStartAngle(): void; + + /** To set SubGaugeLocation + * @returns {void} + */ + setSubGaugeLocation(): void; + + /** To set SweepAngle + * @returns {void} + */ + setSweepAngle(): void; + + /** To set TickAngle + * @returns {void} + */ + setTickAngle(): void; + + /** To set TickDistanceFromScale + * @returns {void} + */ + setTickDistanceFromScale(): void; + + /** To set TickHeight + * @returns {void} + */ + setTickHeight(): void; + + /** To set TickPlacement + * @returns {void} + */ + setTickPlacement(): void; + + /** To set TickStyle + * @returns {void} + */ + setTickStyle(): void; + + /** To set TickWidth + * @returns {void} + */ + setTickWidth(): void; + } + export namespace CircularGauge { + + export interface Model { + + /** Specifies animationSpeed of circular gauge + * @Default {500} + */ + animationSpeed?: number; + + /** Specifies the background color of circular gauge. + * @Default {null} + */ + backgroundColor?: string; + + /** Specify distanceFromCorner value of circular gauge + * @Default {center} + */ + distanceFromCorner?: number; + + /** Specify range zOrder placement of circular gauge. + * @Default {Rear} + */ + rangeZOrder?: ej.datavisualization.CircularGauge.RangeZOrderPlacement|string; + + /** Specify animate value of circular gauge + * @Default {true} + */ + enableAnimation?: boolean; + + /** Specify to convert the date object to string, using locale settings. + * @Default {false} + */ + enableGroupSeparator?: boolean; + + /** Controls whether circular gauge has to be responsive while resizing. + * @Default {false} + */ + enableResize?: boolean; + + /** Specify the frame of circular gauge + * @Default {Object} + */ + frame?: Frame; + + /** Specify gaugePosition value of circular gauge See GaugePosition + * @Default {center} + */ + gaugePosition?: ej.datavisualization.CircularGauge.gaugePosition|string; + + /** Specifies the height of circular gauge. + * @Default {360} + */ + height?: number; + + /** Specifies the interiorGradient of circular gauge. + * @Default {null} + */ + interiorGradient?: any; + + /** Specify isRadialGradient value of circular gauge + * @Default {false} + */ + isRadialGradient?: boolean; + + /** Specify isResponsive value of circular gauge + * @Default {false} + */ + isResponsive?: boolean; + + /** Name of the culture based on which circular gauge should be localized. + * @Default {en-US} + */ + locale?: string; + + /** Specifies the maximum value of circular gauge. + * @Default {100} + */ + maximum?: number; + + /** Specifies the minimum value of circular gauge. + * @Default {0} + */ + minimum?: number; + + /** Specify outerCustomLabelPosition value of circular gauge See + * @Default {bottom} + */ + outerCustomLabelPosition?: ej.datavisualization.CircularGauge.OuterCustomLabelPosition|string; + + /** Specifies the radius of circular gauge. + * @Default {180} + */ + radius?: number; + + /** Specify readonly value of circular gauge + * @Default {true} + */ + readOnly?: boolean; + + /** Specify the pointers, ticks, labels, indicators, ranges of circular gauge + * @Default {null} + */ + scales?: Scale[]; + + /** Specify the theme of circular gauge. + * @Default {flatlight} + */ + theme?: string; + + /** Options to customize the legend. + */ + legend?: Legend; + + /** Specify tooltip option of circular gauge + * @Default {object} + */ + tooltip?: Tooltip; + + /** Specifies the value of circular gauge. + * @Default {0} + */ + value?: number; + + /** Specifies the width of circular gauge. + * @Default {360} + */ + width?: number; + + /** Fires before rendering the legend item. This event is fired for each legend item in CircularGauge. You can use this event to customize legend item shape or add custom text to + * legend item. + */ + legendItemRender?(e: LegendItemRenderEventArgs): void; + + /** Fires on clicking the legend item. + */ + legendItemClick?(e: LegendItemClickEventArgs): void; + + /** Fires when mouse moving on ranges. + */ + rangeMouseMove?(e: RangeMouseMoveEventArgs): void; + + /** Triggers while the custom labels are being drawn on the gauge. + */ + drawCustomLabel?(e: DrawCustomLabelEventArgs): void; + + /** Triggers while the indicators are being started to drawn on the gauge. + */ + drawIndicators?(e: DrawIndicatorsEventArgs): void; + + /** Triggers while the labels are being drawn on the gauge. + */ + drawLabels?(e: DrawLabelsEventArgs): void; + + /** Triggers while the pointer cap is being drawn on the gauge. + */ + drawPointerCap?(e: DrawPointerCapEventArgs): void; + + /** Triggers while the pointers are being drawn on the gauge. + */ + drawPointers?(e: DrawPointersEventArgs): void; + + /** Triggers when the ranges begin to be getting drawn on the gauge. + */ + drawRange?(e: DrawRangeEventArgs): void; + + /** Triggers while the ticks are being drawn on the gauge. + */ + drawTicks?(e: DrawTicksEventArgs): void; + + /** Triggers while the gauge start to Load. + */ + load?(e: LoadEventArgs): void; + + /** Triggers when the left mouse button is clicked. + */ + mouseClick?(e: MouseClickEventArgs): void; + + /** Triggers when clicking and dragging the mouse pointer over the gauge pointer. + */ + mouseClickMove?(e: MouseClickMoveEventArgs): void; + + /** Triggers when the mouse click is released. + */ + mouseClickUp?(e: MouseClickUpEventArgs): void; + + /** Triggers when the rendering of the gauge is completed. + */ + renderComplete?(e: RenderCompleteEventArgs): void; + } + + export interface LegendItemRenderEventArgs { + + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** returns the value of the pointer. - */ - value?: number; + /** Instance of the circulargauge model object + */ + model?: any; - /** returns the pointer style - */ - style?: string; + /** Name of the event + */ + type?: string; - /** returns the startX and startY of the pointer. - */ - position?: any; - } + /** Instance of the legend item object that is about to be rendered + */ + data?: any; + } - export interface MouseClickUpEventArgs { + export interface LegendItemClickEventArgs { - /** returns the object of the gauge. - */ - object?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** returns the cancel option value - */ - cancel?: boolean; + /** Instance of the circulargauge model object + */ + model?: any; - /** returns the gauge model - */ - model?: any; + /** Name of the event + */ + type?: string; - /** returns the name of the event - */ - type?: any; + /** Instance of the legend item object that is about to be rendered + */ + data?: any; + } - /** returns the scale element. - */ - scaleElement?: any; + export interface RangeMouseMoveEventArgs { - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** returns the context element* @param {Object} args.markerpointer returns the context element - */ - context?: any; - - /** returns the pointer Index - */ - markerpointerIndex?: number; - - /** returns the pointer element. - */ - markerpointerElement?: any; - - /** returns the value of the pointer. - */ - markerpointerValue?: number; - - /** returns the pointer style - */ - style?: string; - - /** returns the startX and startY of the pointer. - */ - position?: any; - } - - export interface RenderCompleteEventArgs { - - /** returns the object of the gauge. - */ - object?: any; - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the gauge model - */ - Model?: any; - - /** returns the entire scale element. - */ - scaleElement?: any; - - /** returns the context element - */ - context?: any; - - /** returns the name of the event - */ - type?: any; - } - - export interface Frame { - - /** Specifies the frame background image URL of linear gauge - * @Default {null} - */ - backgroundImageUrl?: string; - - /** Specifies the frame InnerWidth - * @Default {8} - */ - innerWidth?: number; - - /** Specifies the frame OuterWidth - * @Default {12} - */ - outerWidth?: number; - } - - export interface ScalesBarPointersBorder { - - /** Specifies the border Color of bar pointer - * @Default {null} - */ - color?: string; - - /** Specifies the border Width of bar pointer - * @Default {1.5} - */ - width?: number; - } - - export interface ScalesBarPointer { - - /** Specifies the backgroundColor of bar pointer - * @Default {null} - */ - backgroundColor?: string; - - /** Specifies the border of bar pointer - * @Default {null} - */ - border?: ScalesBarPointersBorder; - - /** Specifies the distanceFromScale of bar pointer - * @Default {0} - */ - distanceFromScale?: number; - - /** Specifies the scaleBar Gradient of bar pointer - * @Default {null} - */ - gradients?: any; - - /** Specifies the opacity of bar pointer - * @Default {1} - */ - opacity?: number; - - /** Specifies the value of bar pointer - * @Default {null} - */ - value?: number; - - /** Specifies the pointer Width of bar pointer - * @Default {width=30} - */ - width?: number; - } - - export interface ScalesBorder { - - /** Specifies the border color of the Scale. - * @Default {null} - */ - color?: string; - - /** Specifies the border width of the Scale. - * @Default {1.5} - */ - width?: number; - } - - export interface ScalesCustomLabelsFont { - - /** Specifies the fontFamily in customLabels - * @Default {Arial} - */ - fontFamily?: string; - - /** Specifies the fontStyle in customLabels. See FontStyle - * @Default {Bold} - */ - fontStyle?: ej.datavisualization.LinearGauge.FontStyle | string; - - /** Specifies the font size in customLabels - * @Default {11px} - */ - size?: string; - } - - export interface ScalesCustomLabelsPosition { - - /** Specifies the position x in customLabels - * @Default {0} - */ - x?: number; - - /** Specifies the y in customLabels - * @Default {0} - */ - y?: number; - } - - export interface ScalesCustomLabel { - - /** Specifies the label Color in customLabels - * @Default {null} - */ - color?: number; - - /** Specifies the font in customLabels - * @Default {null} - */ - font?: ScalesCustomLabelsFont; - - /** Specifies the opacity in customLabels - * @Default {0} - */ - opacity?: string; - - /** Specifies the position in customLabels - * @Default {null} - */ - position?: ScalesCustomLabelsPosition; - - /** Specifies the positionType in customLabels.See CustomLabelPositionType - * @Default {null} - */ - positionType?: any; - - /** Specifies the textAngle in customLabels - * @Default {0} - */ - textAngle?: number; - - /** Specifies the label Value in customLabels - */ - value?: string; - } - - export interface ScalesIndicatorsBorder { - - /** Specifies the border Color in bar indicators - * @Default {null} - */ - color?: string; - - /** Specifies the border Width in bar indicators - * @Default {1.5} - */ - width?: number; - } - - export interface ScalesIndicatorsFont { - - /** Specifies the fontFamily of font in bar indicators - * @Default {Arial} - */ - fontFamily?: string; - - /** Specifies the fontStyle of font in bar indicators. See FontStyle - * @Default {ej.datavisualization.LinearGauge.FontStyle.Bold} - */ - fontStyle?: ej.datavisualization.LinearGauge.FontStyle | string; - - /** Specifies the size of font in bar indicators - * @Default {11px} - */ - size?: string; - } - - export interface ScalesIndicatorsPosition { - - /** Specifies the x position in bar indicators - * @Default {0} - */ - x?: number; - - /** Specifies the y position in bar indicators - * @Default {0} - */ - y?: number; - } - - export interface ScalesIndicatorsStateRange { - - /** Specifies the backgroundColor in bar indicators state ranges - * @Default {null} - */ - backgroundColor?: string; - - /** Specifies the borderColor in bar indicators state ranges - * @Default {null} - */ - borderColor?: string; - - /** Specifies the endValue in bar indicators state ranges - * @Default {60} - */ - endValue?: number; - - /** Specifies the startValue in bar indicators state ranges - * @Default {50} - */ - startValue?: number; - - /** Specifies the text in bar indicators state ranges - */ - text?: string; - - /** Specifies the textColor in bar indicators state ranges - * @Default {null} - */ - textColor?: string; - } - - export interface ScalesIndicatorsTextLocation { - - /** Specifies the textLocation position in bar indicators - * @Default {0} - */ - x?: number; - - /** Specifies the Y position in bar indicators - * @Default {0} - */ - y?: number; - } - - export interface ScalesIndicator { - - /** Specifies the backgroundColor in bar indicators - * @Default {null} - */ - backgroundColor?: string; - - /** Specifies the border in bar indicators - * @Default {null} - */ - border?: ScalesIndicatorsBorder; - - /** Specifies the font of bar indicators - * @Default {null} - */ - font?: ScalesIndicatorsFont; - - /** Specifies the indicator Height of bar indicators - * @Default {30} - */ - height?: number; - - /** Specifies the opacity in bar indicators - * @Default {NaN} - */ - opacity?: number; - - /** Specifies the position in bar indicators - * @Default {null} - */ - position?: ScalesIndicatorsPosition; - - /** Specifies the state ranges in bar indicators - * @Default {Array} - */ - stateRanges?: ScalesIndicatorsStateRange[]; - - /** Specifies the textLocation in bar indicators - * @Default {null} - */ - textLocation?: ScalesIndicatorsTextLocation; - - /** Specifies the indicator Style of font in bar indicators - * @Default {ej.datavisualization.LinearGauge.IndicatorType.Rectangle} - */ - type?: ej.datavisualization.LinearGauge.IndicatorTypes | string; - - /** Specifies the indicator Width in bar indicators - * @Default {30} - */ - width?: number; - } - - export interface ScalesLabelsDistanceFromScale { - - /** Specifies the xDistanceFromScale of labels. - * @Default {-10} - */ - x?: number; - - /** Specifies the yDistanceFromScale of labels. - * @Default {0} - */ - y?: number; - } - - export interface ScalesLabelsFont { - - /** Specifies the fontFamily of font. - * @Default {Arial} - */ - fontFamily?: string; - - /** Specifies the fontStyle of font.See FontStyle - * @Default {ej.datavisualization.LinearGauge.FontStyle.Bold} - */ - fontStyle?: ej.datavisualization.LinearGauge.FontStyle | string; - - /** Specifies the size of font. - * @Default {11px} - */ - size?: string; - } - - export interface ScalesLabel { - - /** Specifies the angle of labels. - * @Default {0} - */ - angle?: number; - - /** Specifies the DistanceFromScale of labels. - * @Default {null} - */ - distanceFromScale?: ScalesLabelsDistanceFromScale; - - /** Specifies the font of labels. - * @Default {null} - */ - font?: ScalesLabelsFont; - - /** need to includeFirstValue. - * @Default {true} - */ - includeFirstValue?: boolean; - - /** Specifies the opacity of label. - * @Default {0} - */ - opacity?: number; - - /** Specifies the label Placement of label. See LabelPlacement - * @Default {Near} - */ - placement?: ej.datavisualization.LinearGauge.PointerPlacement | string; - - /** Specifies the textColor of font. - * @Default {null} - */ - textColor?: string; - - /** Specifies the label Style of label. See LabelType - * @Default {ej.datavisualization.LinearGauge.LabelType.Major} - */ - type?: ej.datavisualization.LinearGauge.ScaleType | string; - - /** Specifies the unitText of label. - */ - unitText?: string; - - /** Specifies the unitText Position of label.See UnitTextPlacement - * @Default {Back} - */ - unitTextPlacement?: ej.datavisualization.LinearGauge.UnitTextPlacement | string; - } - - export interface ScalesMarkerPointersBorder { - - /** Specifies the border color of marker pointer - * @Default {null} - */ - color?: string; - - /** Specifies the border of marker pointer - * @Default {number} - */ - width?: number; - } - - export interface ScalesMarkerPointer { - - /** Specifies the backgroundColor of marker pointer - * @Default {null} - */ - backgroundColor?: string; - - /** Specifies the border of marker pointer - * @Default {null} - */ - border?: ScalesMarkerPointersBorder; - - /** Specifies the distanceFromScale of marker pointer - * @Default {0} - */ - distanceFromScale?: number; - - /** Specifies the pointer Gradient of marker pointer - * @Default {null} - */ - gradients?: any; - - /** Specifies the pointer Length of marker pointer - * @Default {30} - */ - length?: number; - - /** Specifies the opacity of marker pointer - * @Default {1} - */ - opacity?: number; - - /** Specifies the pointer Placement of marker pointer See PointerPlacement - * @Default {Far} - */ - placement?: ej.datavisualization.LinearGauge.PointerPlacement | string; - - /** Specifies the marker Style of marker pointerSee MarkerType - * @Default {Triangle} - */ - type?: ej.datavisualization.LinearGauge.MarkerType | string; - - /** Specifies the value of marker pointer - * @Default {null} - */ - value?: number; - - /** Specifies the pointer Width of marker pointer - * @Default {30} - */ - width?: number; - } - - export interface ScalesPosition { - - /** Specifies the Horizontal position - * @Default {50} - */ - x?: number; - - /** Specifies the vertical position - * @Default {50} - */ - y?: number; - } - - export interface ScalesRangesBorder { - - /** Specifies the border color in the ranges. - * @Default {null} - */ - color?: string; - - /** Specifies the border width in the ranges. - * @Default {1.5} - */ - width?: number; - } - - export interface ScalesRange { - - /** Specifies the backgroundColor in the ranges. - * @Default {null} - */ - backgroundColor?: string; - - /** Specifies the border in the ranges. - * @Default {null} - */ - border?: ScalesRangesBorder; - - /** Specifies the distanceFromScale in the ranges. - * @Default {0} - */ - distanceFromScale?: number; - - /** Specifies the endValue in the ranges. - * @Default {60} - */ - endValue?: number; - - /** Specifies the endWidth in the ranges. - * @Default {10} - */ - endWidth?: number; - - /** Specifies the range Gradient in the ranges. - * @Default {null} - */ - gradients?: any; - - /** Specifies the opacity in the ranges. - * @Default {null} - */ - opacity?: number; - - /** Specifies the range Position in the ranges. See RangePlacement - * @Default {Center} - */ - placement?: ej.datavisualization.LinearGauge.PointerPlacement | string; - - /** Specifies the startValue in the ranges. - * @Default {20} - */ - startValue?: number; - - /** Specifies the startWidth in the ranges. - * @Default {10} - */ - startWidth?: number; - } - - export interface ScalesTicksDistanceFromScale { - - /** Specifies the xDistanceFromScale in the tick. - * @Default {0} - */ - x?: number; - - /** Specifies the yDistanceFromScale in the tick. - * @Default {0} - */ - y?: number; - } - - export interface ScalesTick { - - /** Specifies the angle in the tick. - * @Default {0} - */ - angle?: number; - - /** Specifies the tick Color in the tick. - * @Default {null} - */ - color?: string; - - /** Specifies the DistanceFromScale in the tick. - * @Default {null} - */ - distanceFromScale?: ScalesTicksDistanceFromScale; - - /** Specifies the tick Height in the tick. - * @Default {10} - */ - height?: number; - - /** Specifies the opacity in the tick. - * @Default {0} - */ - opacity?: number; - - /** Specifies the tick Placement in the tick. See TickPlacement - * @Default {Near} - */ - placement?: ej.datavisualization.LinearGauge.PointerPlacement | string; - - /** Specifies the tick Style in the tick. See TickType - * @Default {MajorInterval} - */ - type?: ej.datavisualization.LinearGauge.TicksType | string; - - /** Specifies the tick Width in the tick. - * @Default {3} - */ - width?: number; - } - - export interface Scale { - - /** Specifies the backgroundColor of the Scale. - * @Default {null} - */ - backgroundColor?: string; - - /** Specifies the scaleBar Gradient of bar pointer - * @Default {Array} - */ - barPointers?: ScalesBarPointer[]; - - /** Specifies the border of the Scale. - * @Default {null} - */ - border?: ScalesBorder; - - /** Specifies the customLabel - * @Default {Array} - */ - customLabels?: ScalesCustomLabel[]; - - /** Specifies the scale Direction of the Scale. See Directions - * @Default {CounterClockwise} - */ - direction?: ej.datavisualization.LinearGauge.Direction | string; - - /** Specifies the indicator - * @Default {Array} - */ - indicators?: ScalesIndicator[]; - - /** Specifies the labels. - * @Default {Array} - */ - labels?: ScalesLabel[]; - - /** Specifies the scaleBar Length. - * @Default {290} - */ - length?: number; - - /** Specifies the majorIntervalValue of the Scale. - * @Default {10} - */ - majorIntervalValue?: number; - - /** Specifies the markerPointers - * @Default {Array} - */ - markerPointers?: ScalesMarkerPointer[]; - - /** Specifies the maximum of the Scale. - * @Default {null} - */ - maximum?: number; - - /** Specifies the minimum of the Scale. - * @Default {null} - */ - minimum?: number; - - /** Specifies the minorIntervalValue of the Scale. - * @Default {2} - */ - minorIntervalValue?: number; - - /** Specifies the opacity of the Scale. - * @Default {NaN} - */ - opacity?: number; - - /** Specifies the position - * @Default {null} - */ - position?: ScalesPosition; - - /** Specifies the ranges in the tick. - * @Default {Array} - */ - ranges?: ScalesRange[]; - - /** Specifies the shadowOffset. - * @Default {0} - */ - shadowOffset?: number; - - /** Specifies the showBarPointers state. - * @Default {true} - */ - showBarPointers?: boolean; - - /** Specifies the showCustomLabels state. - * @Default {false} - */ - showCustomLabels?: boolean; - - /** Specifies the showIndicators state. - * @Default {false} - */ - showIndicators?: boolean; - - /** Specifies the showLabels state. - * @Default {true} - */ - showLabels?: boolean; - - /** Specifies the showMarkerPointers state. - * @Default {true} - */ - showMarkerPointers?: boolean; - - /** Specifies the showRanges state. - * @Default {false} - */ - showRanges?: boolean; - - /** Specifies the showTicks state. - * @Default {true} - */ - showTicks?: boolean; - - /** Specifies the ticks in the scale. - * @Default {Array} - */ - ticks?: ScalesTick[]; - - /** Specifies the scaleBar type .See ScaleType - * @Default {Rectangle} - */ - type?: ej.datavisualization.LinearGauge.ScaleType | string; - - /** Specifies the scaleBar width. - * @Default {30} - */ - width?: number; - } - - export interface Tooltip { - - /** Specify showCustomLabelTooltip value of linear gauge - * @Default {false} - */ - showCustomLabelTooltip?: boolean; - - /** Specify showLabelTooltip value of linear gauge - * @Default {false} - */ - showLabelTooltip?: boolean; - - /** Specify templateID value of linear gauge - * @Default {false} - */ - templateID?: string; - } - } - namespace LinearGauge { - enum OuterCustomLabelPosition { - //string - Left, - //string - Right, - //string - Top, - //string - Bottom, - } - } - namespace LinearGauge { - enum FontStyle { - //string - Bold, - //string - Italic, - //string - Regular, - //string - Strikeout, - //string - Underline, - } - } - namespace LinearGauge { - enum Direction { - //string - Clockwise, - //string - CounterClockwise, - } - } - namespace LinearGauge { - enum IndicatorTypes { - //string - Rectangle, - //string - Circle, - //string - RoundedRectangle, - //string - Text, - } - } - namespace LinearGauge { - enum PointerPlacement { - //string - Near, - //string - Far, - //string - Center, - } - } - namespace LinearGauge { - enum ScaleType { - //string - Major, - //string - Minor, - } - } - namespace LinearGauge { - enum UnitTextPlacement { - //string - Back, - //string - From, - } - } - namespace LinearGauge { - enum MarkerType { - //string - Rectangle, - //string - Triangle, - //string - Ellipse, - //string - Diamond, - //string - Pentagon, - //string - Circle, - //string - Star, - //string - Slider, - //string - Pointer, - //string - Wedge, - //string - Trapezoid, - //string - RoundedRectangle, - } - } - namespace LinearGauge { - enum TicksType { - //string - Majorinterval, - //string - Minorinterval, - } - } - namespace LinearGauge { - enum Themes { - //string - FlatLight, - //string - FlatDark, - } - } - - class CircularGauge extends ej.Widget { - static fn: CircularGauge; - constructor(element: JQuery | Element, options?: CircularGauge.Model); - static Locale: any; - model: CircularGauge.Model; - defaults: CircularGauge.Model; - - /** destroy the circular gauge widget. all events bound using this._on will be unbind automatically and bring the control to pre-init state. - * @returns {void} - */ - destroy(): void; - - /** To export Image - * @returns {boolean} - */ - exportImage(): boolean; - - /** To get BackNeedleLength - * @returns {any} - */ - getBackNeedleLength(): any; - - /** To get CustomLabelAngle - * @returns {any} - */ - getCustomLabelAngle(): any; - - /** To get CustomLabelValue - * @returns {any} - */ - getCustomLabelValue(): any; - - /** To get LabelAngle - * @returns {any} - */ - getLabelAngle(): any; - - /** To get LabelDistanceFromScale - * @returns {any} - */ - getLabelDistanceFromScale(): any; - - /** To get LabelPlacement - * @returns {any} - */ - getLabelPlacement(): any; - - /** To get LabelStyle - * @returns {any} - */ - getLabelStyle(): any; - - /** To get MajorIntervalValue - * @returns {any} - */ - getMajorIntervalValue(): any; - - /** To get MarkerDistanceFromScale - * @returns {any} - */ - getMarkerDistanceFromScale(): any; - - /** To get MarkerStyle - * @returns {any} - */ - getMarkerStyle(): any; - - /** To get MaximumValue - * @returns {any} - */ - getMaximumValue(): any; - - /** To get MinimumValue - * @returns {any} - */ - getMinimumValue(): any; - - /** To get MinorIntervalValue - * @returns {any} - */ - getMinorIntervalValue(): any; - - /** To get NeedleStyle - * @returns {any} - */ - getNeedleStyle(): any; - - /** To get PointerCapBorderWidth - * @returns {any} - */ - getPointerCapBorderWidth(): any; - - /** To get PointerCapRadius - * @returns {any} - */ - getPointerCapRadius(): any; - - /** To get PointerLength - * @returns {any} - */ - getPointerLength(): any; - - /** To get PointerNeedleType - * @returns {any} - */ - getPointerNeedleType(): any; - - /** To get PointerPlacement - * @returns {any} - */ - getPointerPlacement(): any; - - /** To get PointerValue - * @returns {any} - */ - getPointerValue(): any; - - /** To get PointerWidth - * @returns {any} - */ - getPointerWidth(): any; - - /** To get RangeBorderWidth - * @returns {any} - */ - getRangeBorderWidth(): any; - - /** To get RangeDistanceFromScale - * @returns {any} - */ - getRangeDistanceFromScale(): any; - - /** To get RangeEndValue - * @returns {any} - */ - getRangeEndValue(): any; - - /** To get RangePosition - * @returns {any} - */ - getRangePosition(): any; - - /** To get RangeSize - * @returns {any} - */ - getRangeSize(): any; - - /** To get RangeStartValue - * @returns {any} - */ - getRangeStartValue(): any; - - /** To get ScaleBarSize - * @returns {any} - */ - getScaleBarSize(): any; - - /** To get ScaleBorderWidth - * @returns {any} - */ - getScaleBorderWidth(): any; - - /** To get ScaleDirection - * @returns {any} - */ - getScaleDirection(): any; - - /** To get ScaleRadius - * @returns {any} - */ - getScaleRadius(): any; - - /** To get StartAngle - * @returns {any} - */ - getStartAngle(): any; - - /** To get SubGaugeLocation - * @returns {any} - */ - getSubGaugeLocation(): any; - - /** To get SweepAngle - * @returns {any} - */ - getSweepAngle(): any; - - /** To get TickAngle - * @returns {any} - */ - getTickAngle(): any; - - /** To get TickDistanceFromScale - * @returns {any} - */ - getTickDistanceFromScale(): any; - - /** To get TickHeight - * @returns {any} - */ - getTickHeight(): any; - - /** To get TickPlacement - * @returns {any} - */ - getTickPlacement(): any; - - /** To get TickStyle - * @returns {any} - */ - getTickStyle(): any; - - /** To get TickWidth - * @returns {any} - */ - getTickWidth(): any; - - /** To set includeFirstValue - * @returns {void} - */ - includeFirstValue(): void; - - /** Switching the redraw option for the gauge - * @returns {void} - */ - redraw(): void; - - /** To set BackNeedleLength - * @returns {void} - */ - setBackNeedleLength(): void; - - /** To set CustomLabelAngle - * @returns {void} - */ - setCustomLabelAngle(): void; - - /** To set CustomLabelValue - * @returns {void} - */ - setCustomLabelValue(): void; - - /** To set LabelAngle - * @returns {void} - */ - setLabelAngle(): void; - - /** To set LabelDistanceFromScale - * @returns {void} - */ - setLabelDistanceFromScale(): void; - - /** To set LabelPlacement - * @returns {void} - */ - setLabelPlacement(): void; - - /** To set LabelStyle - * @returns {void} - */ - setLabelStyle(): void; - - /** To set MajorIntervalValue - * @returns {void} - */ - setMajorIntervalValue(): void; - - /** To set MarkerDistanceFromScale - * @returns {void} - */ - setMarkerDistanceFromScale(): void; - - /** To set MarkerStyle - * @returns {void} - */ - setMarkerStyle(): void; - - /** To set MaximumValue - * @returns {void} - */ - setMaximumValue(): void; - - /** To set MinimumValue - * @returns {void} - */ - setMinimumValue(): void; - - /** To set MinorIntervalValue - * @returns {void} - */ - setMinorIntervalValue(): void; - - /** To set NeedleStyle - * @returns {void} - */ - setNeedleStyle(): void; - - /** To set PointerCapBorderWidth - * @returns {void} - */ - setPointerCapBorderWidth(): void; - - /** To set PointerCapRadius - * @returns {void} - */ - setPointerCapRadius(): void; - - /** To set PointerLength - * @returns {void} - */ - setPointerLength(): void; - - /** To set PointerNeedleType - * @returns {void} - */ - setPointerNeedleType(): void; - - /** To set PointerPlacement - * @returns {void} - */ - setPointerPlacement(): void; - - /** To set PointerValue - * @returns {void} - */ - setPointerValue(): void; - - /** To set PointerWidth - * @returns {void} - */ - setPointerWidth(): void; - - /** To set RangeBorderWidth - * @returns {void} - */ - setRangeBorderWidth(): void; - - /** To set RangeDistanceFromScale - * @returns {void} - */ - setRangeDistanceFromScale(): void; - - /** To set RangeEndValue - * @returns {void} - */ - setRangeEndValue(): void; - - /** To set RangePosition - * @returns {void} - */ - setRangePosition(): void; - - /** To set RangeSize - * @returns {void} - */ - setRangeSize(): void; - - /** To set RangeStartValue - * @returns {void} - */ - setRangeStartValue(): void; - - /** To set ScaleBarSize - * @returns {void} - */ - setScaleBarSize(): void; - - /** To set ScaleBorderWidth - * @returns {void} - */ - setScaleBorderWidth(): void; - - /** To set ScaleDirection - * @returns {void} - */ - setScaleDirection(): void; - - /** To set ScaleRadius - * @returns {void} - */ - setScaleRadius(): void; - - /** To set StartAngle - * @returns {void} - */ - setStartAngle(): void; - - /** To set SubGaugeLocation - * @returns {void} - */ - setSubGaugeLocation(): void; - - /** To set SweepAngle - * @returns {void} - */ - setSweepAngle(): void; - - /** To set TickAngle - * @returns {void} - */ - setTickAngle(): void; - - /** To set TickDistanceFromScale - * @returns {void} - */ - setTickDistanceFromScale(): void; - - /** To set TickHeight - * @returns {void} - */ - setTickHeight(): void; - - /** To set TickPlacement - * @returns {void} - */ - setTickPlacement(): void; - - /** To set TickStyle - * @returns {void} - */ - setTickStyle(): void; - - /** To set TickWidth - * @returns {void} - */ - setTickWidth(): void; - } - export namespace CircularGauge { - - export interface Model { - - /** Specifies animationSpeed of circular gauge - * @Default {500} - */ - animationSpeed?: number; - - /** Specifies the background color of circular gauge. - * @Default {null} - */ - backgroundColor?: string; - - /** Specify distanceFromCorner value of circular gauge - * @Default {center} - */ - distanceFromCorner?: number; - - /** Specify animate value of circular gauge - * @Default {true} - */ - enableAnimation?: boolean; - - /** Specify to convert the date object to string, using locale settings. - * @Default {false} - */ - enableGroupSeparator?: boolean; - - /** Controls whether circular gauge has to be responsive while resizing. - * @Default {false} - */ - enableResize?: boolean; - - /** Specify the frame of circular gauge - * @Default {Object} - */ - frame?: Frame; - - /** Specify gaugePosition value of circular gauge See GaugePosition - * @Default {center} - */ - gaugePosition?: ej.datavisualization.CircularGauge.gaugePosition | string; - - /** Specifies the height of circular gauge. - * @Default {360} - */ - height?: number; - - /** Specifies the interiorGradient of circular gauge. - * @Default {null} - */ - interiorGradient?: any; - - /** Specify isRadialGradient value of circular gauge - * @Default {false} - */ - isRadialGradient?: boolean; - - /** Specify isResponsive value of circular gauge - * @Default {false} - */ - isResponsive?: boolean; - - /** Name of the culture based on which circular gauge should be localized. - * @Default {en-US} - */ - locale?: string; - - /** Specifies the maximum value of circular gauge. - * @Default {100} - */ - maximum?: number; - - /** Specifies the minimum value of circular gauge. - * @Default {0} - */ - minimum?: number; - - /** Specify outerCustomLabelPosition value of circular gauge See OuterCustomLabelPosition - * @Default {bottom} - */ - outerCustomLabelPosition?: ej.datavisualization.CircularGauge.CustomLabelPositionType | string; - - /** Specifies the radius of circular gauge. - * @Default {180} - */ - radius?: number; - - /** Specify readonly value of circular gauge - * @Default {true} - */ - readOnly?: boolean; - - /** Specify the pointers, ticks, labels, indicators, ranges of circular gauge - * @Default {null} - */ - scales?: Scale[]; - - /** Specify the theme of circular gauge. - * @Default {flatlight} - */ - theme?: string; - - /** Options to customize the legend. - */ - legend?: Legend; - - /** Specify tooltip option of circular gauge - * @Default {object} - */ - tooltip?: Tooltip; + /** Instance of the circulargauge model object + */ + model?: any; - /** Specifies the value of circular gauge. - * @Default {0} - */ - value?: number; + /** Name of the event + */ + type?: string; - /** Specifies the width of circular gauge. - * @Default {360} - */ - width?: number; + /** Region of ranges + */ + data?: any; + } - /** Fires before rendering the legend item. This event is fired for each legend item in CircularGauge. You can use this event to customize legend item shape or add custom text to legend item. */ - legendItemRender?(e: LegendItemRenderEventArgs): void; + export interface DrawCustomLabelEventArgs { - /** Fires on clicking the legend item. */ - legendItemClick?(e: LegendItemClickEventArgs): void; + /** returns the object of the gauge. + */ + object?: any; - /** Fires when mouse moving on ranges. */ - rangeMouseMove?(e: RangeMouseMoveEventArgs): void; + /** returns the cancel option value + */ + cancel?: boolean; - /** Triggers while the custom labels are being drawn on the gauge. */ - drawCustomLabel?(e: DrawCustomLabelEventArgs): void; + /** returns the context element + */ + context?: any; - /** Triggers while the indicators are being started to drawn on the gauge. */ - drawIndicators?(e: DrawIndicatorsEventArgs): void; + /** returns the startX and startY of the custom label + */ + position?: any; - /** Triggers while the labels are being drawn on the gauge. */ - drawLabels?(e: DrawLabelsEventArgs): void; + /** returns the gauge model + */ + model?: any; - /** Triggers while the pointer cap is being drawn on the gauge. */ - drawPointerCap?(e: DrawPointerCapEventArgs): void; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** Triggers while the pointers are being drawn on the gauge. */ - drawPointers?(e: DrawPointersEventArgs): void; + /** returns the scaleIndex to which the custom label belongs. + */ + scaleIndex?: number; - /** Triggers when the ranges begin to be getting drawn on the gauge. */ - drawRange?(e: DrawRangeEventArgs): void; + /** returns the custom label style + */ + style?: string; - /** Triggers while the ticks are being drawn on the gauge. */ - drawTicks?(e: DrawTicksEventArgs): void; + /** returns the current custom label element. + */ + customLabelElement?: any; - /** Triggers while the gauge start to Load. */ - load?(e: LoadEventArgs): void; + /** returns the index of the custom label. + */ + customLabelIndex?: number; - /** Triggers when the left mouse button is clicked. */ - mouseClick?(e: MouseClickEventArgs): void; + /** returns the name of the event + */ + type?: string; + } - /** Triggers when clicking and dragging the mouse pointer over the gauge pointer. */ - mouseClickMove?(e: MouseClickMoveEventArgs): void; + export interface DrawIndicatorsEventArgs { - /** Triggers when the mouse click is released. */ - mouseClickUp?(e: MouseClickUpEventArgs): void; + /** returns the object of the gauge. + */ + object?: any; - /** Triggers when the rendering of the gauge is completed. */ - renderComplete?(e: RenderCompleteEventArgs): void; - } + /** returns the cancel option value + */ + cancel?: boolean; - export interface LegendItemRenderEventArgs { + /** returns the context element + */ + context?: any; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** returns the startX and startY of the indicator + */ + position?: any; - /** Instance of the circulargauge model object - */ - model?: any; + /** returns the gauge model + */ + model?: any; - /** Name of the event - */ - type?: string; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** Instance of the legend item object that is about to be rendered - */ - data?: any; - } + /** returns the scaleIndex to which the indicator belongs. + */ + scaleIndex?: number; - export interface LegendItemClickEventArgs { + /** returns the indicator style + */ + style?: string; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** returns the current indicator element. + */ + indicatorElement?: any; - /** Instance of the circulargauge model object - */ - model?: any; + /** returns the index of the indicator. + */ + indicatorIndex?: number; - /** Name of the event - */ - type?: string; + /** returns the name of the event + */ + type?: string; + } - /** Instance of the legend item object that is about to be rendered - */ - data?: any; - } + export interface DrawLabelsEventArgs { - export interface RangeMouseMoveEventArgs { + /** returns the object of the gauge. + */ + object?: any; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** returns the cancel option value + */ + cancel?: boolean; - /** Instance of the circulargauge model object - */ - model?: any; + /** returns the context element + */ + context?: any; - /** Name of the event - */ - type?: string; + /** returns the startX and startY of the labels + */ + position?: any; - /** Region of ranges - */ - data?: any; - } + /** returns the gauge model + */ + model?: any; - export interface DrawCustomLabelEventArgs { + /** returns the options of the scale element. + */ + scaleElement?: any; - /** returns the object of the gauge. - */ - object?: any; + /** returns the scaleIndex to which the label belongs. + */ + scaleIndex?: number; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the label style + */ + style?: string; - /** returns the context element - */ - context?: any; + /** returns the angle of the labels. + */ + angle?: number; - /** returns the startX and startY of the custom label - */ - position?: any; + /** returns the current label element. + */ + element?: any; - /** returns the gauge model - */ - model?: any; + /** returns the index of the label. + */ + index?: number; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the value of the label. + */ + pointerValue?: number; - /** returns the scaleIndex to which the custom label belongs. - */ - scaleIndex?: number; + /** returns the name of the event + */ + type?: string; + } - /** returns the custom label style - */ - style?: string; + export interface DrawPointerCapEventArgs { - /** returns the current custom label element. - */ - customLabelElement?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the index of the custom label. - */ - customLabelIndex?: number; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; - } + /** returns the context element + */ + context?: any; - export interface DrawIndicatorsEventArgs { + /** returns the options of the scale element. + */ + scaleElement?: any; - /** returns the object of the gauge. - */ - object?: any; + /** returns the startX and startY of the pointer cap. + */ + position?: any; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the gauge model + */ + model?: any; - /** returns the context element - */ - context?: any; + /** returns the pointer cap style + */ + style?: string; - /** returns the startX and startY of the indicator - */ - position?: any; + /** returns the name of the event + */ + type?: string; + } - /** returns the gauge model - */ - model?: any; + export interface DrawPointersEventArgs { - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the scaleIndex to which the indicator belongs. - */ - scaleIndex?: number; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the indicator style - */ - style?: string; + /** returns the context element + */ + context?: any; - /** returns the current indicator element. - */ - indicatorElement?: any; + /** returns the startX and startY of the pointer + */ + position?: any; - /** returns the index of the indicator. - */ - indicatorIndex?: number; + /** returns the gauge model + */ + model?: any; - /** returns the name of the event - */ - type?: string; - } + /** returns the options of the scale element. + */ + scaleElement?: any; - export interface DrawLabelsEventArgs { + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the object of the gauge. - */ - object?: any; + /** returns the pointer style + */ + style?: string; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the angle of the pointer. + */ + angle?: number; - /** returns the context element - */ - context?: any; + /** returns the current pointer element. + */ + element?: any; - /** returns the startX and startY of the labels - */ - position?: any; + /** returns the index of the pointer. + */ + index?: number; - /** returns the gauge model - */ - model?: any; + /** returns the value of the pointer. + */ + value?: number; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the name of the event + */ + type?: string; + } - /** returns the scaleIndex to which the label belongs. - */ - scaleIndex?: number; + export interface DrawRangeEventArgs { - /** returns the label style - */ - style?: string; + /** returns the object of the gauge. + */ + object?: any; - /** returns the angle of the labels. - */ - angle?: number; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the current label element. - */ - element?: any; + /** returns the context element + */ + context?: any; - /** returns the index of the label. - */ - index?: number; + /** returns the startX and startY of the range + */ + position?: any; - /** returns the value of the label. - */ - pointerValue?: number; + /** returns the gauge model + */ + model?: any; - /** returns the name of the event - */ - type?: string; - } + /** returns the options of the scale element. + */ + scaleElement?: any; - export interface DrawPointerCapEventArgs { + /** returns the scaleIndex to which the range belongs. + */ + scaleIndex?: number; - /** returns the object of the gauge. - */ - object?: any; + /** returns the range style + */ + style?: string; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the current range element. + */ + rangeElement?: any; - /** returns the context element - */ - context?: any; + /** returns the index of the range. + */ + rangeIndex?: number; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the name of the event + */ + type?: string; + } - /** returns the startX and startY of the pointer cap. - */ - position?: any; + export interface DrawTicksEventArgs { - /** returns the gauge model - */ - model?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the pointer cap style - */ - style?: string; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; - } + /** returns the context element + */ + context?: any; - export interface DrawPointersEventArgs { + /** returns the startX and startY of the ticks + */ + position?: any; - /** returns the object of the gauge. - */ - object?: any; + /** returns the gauge model + */ + model?: any; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the options of the scale element. + */ + scaleElement?: any; - /** returns the context element - */ - context?: any; + /** returns the scaleIndex to which the tick belongs. + */ + scaleIndex?: number; - /** returns the startX and startY of the pointer - */ - position?: any; + /** returns the ticks style + */ + style?: string; - /** returns the gauge model - */ - model?: any; + /** returns the angle of the tick. + */ + angle?: number; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the current tick element. + */ + element?: any; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** returns the index of the tick. + */ + index?: number; - /** returns the pointer style - */ - style?: string; + /** returns the label value of the tick. + */ + pointerValue?: number; - /** returns the angle of the pointer. - */ - angle?: number; + /** returns the name of the event + */ + type?: string; + } - /** returns the current pointer element. - */ - element?: any; + export interface LoadEventArgs { - /** returns the index of the pointer. - */ - index?: number; + /** returns the object of the gauge. + */ + object?: any; - /** returns the value of the pointer. - */ - value?: number; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; - } + /** returns the gauge model + */ + Model?: any; - export interface DrawRangeEventArgs { + /** returns the entire scale element. + */ + scaleElement?: any; - /** returns the object of the gauge. - */ - object?: any; + /** returns the context element + */ + context?: any; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: string; + } - /** returns the context element - */ - context?: any; + export interface MouseClickEventArgs { - /** returns the startX and startY of the range - */ - position?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the gauge model - */ - model?: any; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the gauge model + */ + model?: any; - /** returns the scaleIndex to which the range belongs. - */ - scaleIndex?: number; + /** returns the name of the event + */ + type?: any; - /** returns the range style - */ - style?: string; + /** returns the scale element. + */ + scaleElement?: any; - /** returns the current range element. - */ - rangeElement?: any; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the index of the range. - */ - rangeIndex?: number; + /** returns the context element + */ + context?: any; - /** returns the name of the event - */ - type?: string; - } + /** returns the pointer Index + */ + index?: number; - export interface DrawTicksEventArgs { + /** returns the pointer element. + */ + element?: any; - /** returns the object of the gauge. - */ - object?: any; + /** returns the value of the pointer. + */ + value?: number; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the angle of the pointer. + */ + angle?: number; - /** returns the context element - */ - context?: any; + /** returns the pointer style + */ + style?: string; - /** returns the startX and startY of the ticks - */ - position?: any; + /** returns the startX and startY of the pointer. + */ + position?: any; + } - /** returns the gauge model - */ - model?: any; + export interface MouseClickMoveEventArgs { - /** returns the options of the scale element. - */ - scaleElement?: any; + /** returns the object of the gauge. + */ + object?: any; - /** returns the scaleIndex to which the tick belongs. - */ - scaleIndex?: number; + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the ticks style - */ - style?: string; + /** returns the gauge model + */ + model?: any; - /** returns the angle of the tick. - */ - angle?: number; + /** returns the name of the event + */ + type?: any; - /** returns the current tick element. - */ - element?: any; + /** returns the scale element. + */ + scaleElement?: any; - /** returns the index of the tick. - */ - index?: number; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the label value of the tick. - */ - pointerValue?: number; + /** returns the context element + */ + context?: any; - /** returns the name of the event - */ - type?: string; - } + /** returns the pointer Index + */ + index?: number; - export interface LoadEventArgs { + /** returns the pointer element. + */ + element?: any; - /** returns the object of the gauge. - */ - object?: any; + /** returns the value of the pointer. + */ + value?: number; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the angle of the pointer. + */ + angle?: number; - /** returns the gauge model - */ - Model?: any; + /** returns the pointer style + */ + style?: string; - /** returns the entire scale element. - */ - scaleElement?: any; + /** returns the startX and startY of the pointer. + */ + position?: any; + } - /** returns the context element - */ - context?: any; + export interface MouseClickUpEventArgs { - /** returns the name of the event - */ - type?: string; - } + /** returns the object of the gauge. + */ + object?: any; - export interface MouseClickEventArgs { + /** returns the cancel option value + */ + cancel?: boolean; - /** returns the object of the gauge. - */ - object?: any; + /** returns the gauge model + */ + model?: any; - /** returns the cancel option value - */ - cancel?: boolean; + /** returns the name of the event + */ + type?: any; - /** returns the gauge model - */ - model?: any; + /** returns the scale element. + */ + scaleElement?: any; - /** returns the name of the event - */ - type?: any; + /** returns the scaleIndex to which the pointer belongs. + */ + scaleIndex?: number; - /** returns the scale element. - */ - scaleElement?: any; + /** returns the context element + */ + context?: any; + + /** returns the pointer Index + */ + index?: number; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** returns the pointer element. + */ + element?: any; - /** returns the context element - */ - context?: any; + /** returns the value of the pointer. + */ + value?: number; + + /** returns the angle of the pointer. + */ + angle?: number; + + /** returns the pointer style + */ + style?: string; + + /** returns the startX and startY of the pointer. + */ + position?: any; + } - /** returns the pointer Index - */ - index?: number; + export interface RenderCompleteEventArgs { + + /** returns the object of the gauge. + */ + object?: any; + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the context element + */ + context?: any; + + /** returns the entire scale element. + */ + scaleElement?: any; + + /** returns the gauge model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface Frame { + + /** Specify the URL of the frame background image for circular gauge + * @Default {null} + */ + backgroundImageUrl?: string; + + /** Specifies the frameType of circular gauge. See + * @Default {FullCircle} + */ + frameType?: ej.datavisualization.CircularGauge.FrameType|string; + + /** Specifies the end angle for the half circular frame. + * @Default {360} + */ + halfCircleFrameEndAngle?: number; + + /** Specifies the start angle for the half circular frame. + * @Default {180} + */ + halfCircleFrameStartAngle?: number; + } + + export interface ScalesBorder { + + /** Specify border color for scales of circular gauge + * @Default {null} + */ + color?: string; + + /** Specify border width of circular gauge + * @Default {1.5} + */ + width?: number; + } + + export interface ScalesCustomLabelsPosition { + + /** Specify x-axis position of label + * @Default {0} + */ + x?: number; + + /** Specify y-axis position of labels. + * @Default {0} + */ + y?: number; + } + + export interface ScalesCustomLabelsFont { + + /** Specify font fontFamily for custom labels. + * @Default {Arial} + */ + fontFamily?: string; + + /** Specify font Style for custom labels. + * @Default {Bold} + */ + fontStyle?: string; + + /** Specify font size for custom labels. + * @Default {12px} + */ + size?: string; + } + + export interface ScalesCustomLabel { + + /** Value of the custom labels. + */ + value?: string; + + /** Color of the custom labels. + */ + color?: string; + + /** Specify position of custom labels + * @Default {Object} + */ + position?: ScalesCustomLabelsPosition; + + /** Specify angle for the rotation of the custom labels in degrees. + * @Default {0} + */ + textAngle?: number; + + /** Specify font for custom labels + * @Default {Object} + */ + font?: ScalesCustomLabelsFont; + + /** Specifies the position of the custom labels. See + * @Default {inner} + */ + positionType?: ej.datavisualization.CircularGauge.CustomLabelPositionType|string; + } + + export interface ScalesIndicatorsPosition { + + /** Specify x-axis of position of circular gauge + * @Default {0} + */ + x?: number; + + /** Specify y-axis of position of circular gauge + * @Default {0} + */ + y?: number; + } + + export interface ScalesIndicatorsStateRange { + + /** Specify backgroundColor for indicator of circular gauge + * @Default {null} + */ + backgroundColor?: string; + + /** Specify borderColor for indicator of circular gauge + * @Default {null} + */ + borderColor?: string; + + /** Specify end value for each specified state of circular gauge + * @Default {0} + */ + endValue?: number; + + /** Specify value of the font as the indicator when the indicator style is set with the value "text" of circular gauge + * @Default {null} + */ + font?: any; + + /** Specify start value for each specified state of circular gauge + * @Default {0} + */ + startValue?: number; + + /** Specify value of the text as the indicator when the indicator style is set with the value "text" of circular gauge + */ + text?: string; + + /** Specify value of the textColor as the indicator when the indicator style is set with the value "text" of circular gauge + * @Default {null} + */ + textColor?: string; + } + + export interface ScalesIndicator { + + /** Specify indicator height of circular gauge + * @Default {15} + */ + height?: number; + + /** Specify imageUrl of circular gauge + * @Default {null} + */ + imageUrl?: string; + + /** Specify position of circular gauge + * @Default {Object} + */ + position?: ScalesIndicatorsPosition; + + /** Specify the various states of circular gauge + * @Default {Array} + */ + stateRanges?: ScalesIndicatorsStateRange[]; + + /** Specify indicator style of circular gauge. See + * @Default {Circle} + */ + type?: ej.datavisualization.CircularGauge.IndicatorTypes|string; + + /** Specify indicator width of circular gauge + * @Default {15} + */ + width?: number; + } + + export interface ScalesLabelsFont { + + /** Specify font fontFamily for labels of circular gauge + * @Default {Arial} + */ + fontFamily?: string; + + /** Specify font Style for labels of circular gauge + * @Default {Bold} + */ + fontStyle?: string; + + /** Specify font size for labels of circular gauge + * @Default {11px} + */ + size?: string; + } + + export interface ScalesLabel { + + /** Specify the angle for the labels of circular gauge + * @Default {0} + */ + angle?: number; + + /** Specify labels autoAngle value of circular gauge + * @Default {false} + */ + autoAngle?: boolean; + + /** Specify label color of circular gauge + * @Default {null} + */ + color?: string; + + /** Specify distanceFromScale value for labels of circular gauge + * @Default {0} + */ + distanceFromScale?: number; + + /** Specify font for labels of circular gauge + * @Default {Object} + */ + font?: ScalesLabelsFont; + + /** Specify includeFirstValue of circular gauge + * @Default {true} + */ + includeFirstValue?: boolean; + + /** Specify opacity value for labels of circular gauge + * @Default {null} + */ + opacity?: number; + + /** Specify label placement of circular gauge. See + * @Default {Near} + */ + placement?: ej.datavisualization.CircularGauge.Placement|string; + + /** Specify label Style of circular gauge. See + * @Default {Major} + */ + type?: ej.datavisualization.CircularGauge.LabelType|string; + + /** Specify unitText of circular gauge + */ + unitText?: string; + + /** Specify unitTextPosition of circular gauge. See UnitTextPosition + * @Default {Back} + */ + unitTextPosition?: ej.datavisualization.CircularGauge.UnitTextPlacement|string; + } + + export interface ScalesPointerCap { + + /** Specify cap backgroundColor of circular gauge + * @Default {null} + */ + backgroundColor?: string; + + /** Specify cap borderColor of circular gauge + * @Default {null} + */ + borderColor?: string; + + /** Specify pointerCap borderWidth value of circular gauge + * @Default {3} + */ + borderWidth?: number; + + /** Specify cap interiorGradient value of circular gauge + * @Default {null} + */ + interiorGradient?: any; + + /** Specify pointerCap Radius value of circular gauge + * @Default {7} + */ + radius?: number; + } + + export interface ScalesPointersBorder { + + /** Specify border color for pointer of circular gauge + * @Default {null} + */ + color?: string; + + /** Specify border width for pointers of circular gauge + * @Default {1.5} + */ + width?: number; + } + + export interface ScalesPointersPointerValueTextFont { + + /** Specify pointer value text font family of circular gauge. + * @Default {Arial} + */ + fontFamily?: string; + + /** Specify pointer value text font style of circular gauge. + * @Default {Bold} + */ + fontStyle?: string; + + /** Specify pointer value text size of circular gauge. + * @Default {11px} + */ + size?: string; + } + + export interface ScalesPointersPointerValueText { + + /** Specify pointer text angle of circular gauge. + * @Default {0} + */ + angle?: number; + + /** Specify pointer text auto angle of circular gauge. + * @Default {false} + */ + autoAngle?: boolean; + + /** Specify pointer value text color of circular gauge. + * @Default {#8c8c8c} + */ + color?: string; + + /** Specify pointer value text distance from pointer of circular gauge. + * @Default {20} + */ + distance?: number; + + /** Specify pointer value text font option of circular gauge. + * @Default {object} + */ + font?: ScalesPointersPointerValueTextFont; + + /** Specify pointer value text opacity of circular gauge. + * @Default {1} + */ + opacity?: number; + + /** enable pointer value text visibility of circular gauge. + * @Default {false} + */ + showValue?: boolean; + } + + export interface ScalesPointer { + + /** Specify backgroundColor for the pointer of circular gauge + * @Default {null} + */ + backgroundColor?: string; + + /** Specify backNeedleLength of circular gauge + * @Default {10} + */ + backNeedleLength?: number; + + /** Specify the border for pointers of circular gauge + * @Default {Object} + */ + border?: ScalesPointersBorder; + + /** Specify distanceFromScale value for pointers of circular gauge + * @Default {0} + */ + distanceFromScale?: number; + + /** Specify pointer gradients of circular gauge + * @Default {null} + */ + gradients?: any; + + /** Specify pointer image of circular gauge.It is applicable for both marker as well as needle type pointers. + * @Default {NULL} + */ + imageUrl?: string; + + /** Specify pointer length of circular gauge + * @Default {150} + */ + length?: number; + + /** Specify marker Style value of circular gauge. See + * @Default {Rectangle} + */ + markerType?: ej.datavisualization.CircularGauge.MarkerType|string; + + /** Specify needle Style value of circular gauge. See + * @Default {Triangle} + */ + needleType?: ej.datavisualization.CircularGauge.NeedleType|string; + + /** Specify opacity value for pointer of circular gauge + * @Default {1} + */ + opacity?: number; + + /** Specify radius value for pointer of circular gauge + * @Default {null} + */ + radius?: number; + + /** Specify pointer Placement value of circular gauge. See PointerPlacement + * @Default {Near} + */ + placement?: ej.datavisualization.CircularGauge.Placement|string; + + /** Specify pointer value text of circular gauge. + * @Default {Object} + */ + pointerValueText?: ScalesPointersPointerValueText; + + /** Specify showBackNeedle value of circular gauge + * @Default {false} + */ + showBackNeedle?: boolean; + + /** Specify pointer type value of circular gauge. See + * @Default {Needle} + */ + type?: ej.datavisualization.CircularGauge.PointerType|string; + + /** Specify value of the pointer of circular gauge + * @Default {null} + */ + value?: number; + + /** Specify pointer width of circular gauge + * @Default {7} + */ + width?: number; + } + + export interface ScalesRangesBorder { + + /** Specify border color for ranges of circular gauge + * @Default {#32b3c6} + */ + color?: string; + + /** Specify border width for ranges of circular gauge + * @Default {1.5} + */ + width?: number; + } + + export interface ScalesRange { + + /** Specify backgroundColor for the ranges of circular gauge + * @Default {#32b3c6} + */ + backgroundColor?: string; + + /** Specify text for the ranges of circular gauge + * @Default {null} + */ + legendText?: string; + + /** Specify border for ranges of circular gauge + * @Default {Object} + */ + border?: ScalesRangesBorder; + + /** Specify distanceFromScale value for ranges of circular gauge + * @Default {25} + */ + distanceFromScale?: number; + + /** Specify endValue for ranges of circular gauge + * @Default {null} + */ + endValue?: number; + + /** Specify endWidth for ranges of circular gauge + * @Default {10} + */ + endWidth?: number; + + /** Specify range gradients of circular gauge + * @Default {null} + */ + gradients?: any; + + /** Specify opacity value for ranges of circular gauge + * @Default {null} + */ + opacity?: number; + + /** Specify placement of circular gauge. See RangePlacement + * @Default {Near} + */ + placement?: ej.datavisualization.CircularGauge.Placement|string; + + /** Specify size of the range value of circular gauge + * @Default {5} + */ + size?: number; + + /** Specify startValue for ranges of circular gauge + * @Default {null} + */ + startValue?: number; + + /** Specify startWidth of circular gauge + * @Default {[Array.number] scale.ranges.startWidth = 10} + */ + startWidth?: number; + } + + export interface ScalesSubGaugesPosition { + + /** Specify x-axis position for sub-gauge of circular gauge + * @Default {0} + */ + x?: number; + + /** Specify y-axis position for sub-gauge of circular gauge + * @Default {0} + */ + y?: number; + } + + export interface ScalesSubGauge { + + /** Specify subGauge Height of circular gauge + * @Default {150} + */ + height?: number; + + /** Specify position for sub-gauge of circular gauge + * @Default {Object} + */ + position?: ScalesSubGaugesPosition; + + /** Specify subGauge Width of circular gauge + * @Default {150} + */ + width?: number; + } + + export interface ScalesTick { + + /** Specify the angle for the ticks of circular gauge + * @Default {0} + */ + angle?: number; + + /** Specify tick color of circular gauge + * @Default {null} + */ + color?: string; + + /** Specify distanceFromScale value for ticks of circular gauge + * @Default {0} + */ + distanceFromScale?: number; + + /** Specify tick height of circular gauge + * @Default {16} + */ + height?: number; + + /** Specify tick placement of circular gauge. See TickPlacement + * @Default {Near} + */ + placement?: ej.datavisualization.CircularGauge.Placement|string; + + /** Specify tick Style of circular gauge. See TickType + * @Default {Major} + */ + type?: ej.datavisualization.CircularGauge.LabelType|string; + + /** Specify tick width of circular gauge + * @Default {3} + */ + width?: number; + } + + export interface Scale { + + /** Specify backgroundColor for the scale of circular gauge + * @Default {null} + */ + backgroundColor?: string; + + /** Specify border for scales of circular gauge + * @Default {Object} + */ + border?: ScalesBorder; + + /** Specify scale direction of circular gauge. See + * @Default {Clockwise} + */ + direction?: ej.datavisualization.CircularGauge.Direction|string; + + /** Specify the custom labels for the scales. + * @Default {Array} + */ + customLabels?: ScalesCustomLabel[]; + + /** Specify representing state of circular gauge + * @Default {Array} + */ + indicators?: ScalesIndicator[]; + + /** Specify the text values displayed in a meaningful manner alongside the ticks of circular gauge + * @Default {Array} + */ + labels?: ScalesLabel[]; + + /** Specify majorIntervalValue of circular gauge + * @Default {10} + */ + majorIntervalValue?: number; + + /** Specify maximum scale value of circular gauge + * @Default {null} + */ + maximum?: number; + + /** Specify minimum scale value of circular gauge + * @Default {null} + */ + minimum?: number; + + /** Specify minorIntervalValue of circular gauge + * @Default {2} + */ + minorIntervalValue?: number; + + /** Specify opacity value of circular gauge + * @Default {1} + */ + opacity?: number; + + /** Specify pointer cap of circular gauge + * @Default {Object} + */ + pointerCap?: ScalesPointerCap; + + /** Specify pointers value of circular gauge + * @Default {Array} + */ + pointers?: ScalesPointer[]; + + /** Specify scale radius of circular gauge + * @Default {170} + */ + radius?: number; + + /** Specify ranges value of circular gauge + * @Default {Array} + */ + ranges?: ScalesRange[]; + + /** Specify shadowOffset value of circular gauge + * @Default {0} + */ + shadowOffset?: number; + + /** Specify showIndicators of circular gauge + * @Default {false} + */ + showIndicators?: boolean; + + /** Specify showLabels of circular gauge + * @Default {true} + */ + showLabels?: boolean; + + /** Specify showPointers of circular gauge + * @Default {true} + */ + showPointers?: boolean; + + /** Specify showRanges of circular gauge + * @Default {false} + */ + showRanges?: boolean; + + /** Specify showScaleBar of circular gauge + * @Default {false} + */ + showScaleBar?: boolean; + + /** Specify showTicks of circular gauge + * @Default {true} + */ + showTicks?: boolean; + + /** Specify scaleBar size of circular gauge + * @Default {6} + */ + size?: number; + + /** Specify startAngle of circular gauge + * @Default {115} + */ + startAngle?: number; + + /** Specify subGauge of circular gauge + * @Default {Array} + */ + subGauges?: ScalesSubGauge[]; + + /** Specify sweepAngle of circular gauge + * @Default {310} + */ + sweepAngle?: number; + + /** Specify ticks of circular gauge + * @Default {Array} + */ + ticks?: ScalesTick[]; + } + + export interface LegendBorder { + + /** Border color of the legend. + * @Default {transparent} + */ + color?: string; + + /** Border width of the legend. + * @Default {1} + */ + width?: number; + } + + export interface LegendItemStyleBorder { + + /** Border color of the legend items. + * @Default {transparent} + */ + color?: string; + + /** Border width of the legend items. + * @Default {1} + */ + width?: number; + } + + export interface LegendItemStyle { + + /** Options for customizing the border of legend items. + */ + border?: LegendItemStyleBorder; + + /** Specifies the height of the legend item shapes. + * @Default {10} + */ + height?: number; + + /** Specifies the width of the legend item shapes. + * @Default {10} + */ + width?: number; + } + + export interface LegendSize { + + /** Specify the height of the legend. Height can be specified in pixel. + * @Default {null} + */ + height?: string; + + /** Specify the width of the legend. Width can be specified in pixel. + * @Default {null} + */ + width?: string; + } + + export interface LegendFont { + + /** Font family for legend item text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for legend item text. + * @Default {Normal} + */ + fontStyle?: string; + + /** Font weight for legend item text. + * @Default {Regular} + */ + fontWeight?: string; + + /** Font size for legend item text. + * @Default {12px} + */ + size?: string; + + /** Font color of the text for legend items. + * @Default {null} + */ + color?: string; + } + + export interface Legend { + + /** Toggles the visibility of the legend. + * @Default {false} + */ + visible?: boolean; + + /** Toggles the visibility of the ranges. + * @Default {true} + */ + toggleVisibility?: boolean; + + /** Specifies the alignment of the legend. + * @Default {Center. See Alignment} + */ + alignment?: ej.datavisualization.CircularGauge.LegendAlignment|string; + + /** Options for customizing the legend border. + */ + border?: LegendBorder; + + /** Fill color for the legend items. By using this property, it displays all legend item shapes in same color.Legend items representing invisible ranges is displayed in gray color. + * @Default {null} + */ + fill?: string; + + /** Gap or padding between the legend items. + * @Default {20} + */ + itemPadding?: number; + + /** Options to customize the style of legend items. + */ + itemStyle?: LegendItemStyle; + + /** Opacity of the legend. + * @Default {1} + */ + opacity?: number; + + /** Places the legend at specified position. Legend can be placed at **left**, **right**, **top** or **bottom** of the circular gauge. + * @Default {Bottom. See Position} + */ + position?: ej.datavisualization.CircularGauge.LegendPosition|string; + + /** Shape of the legend items. + * @Default {Circle. See Shape} + */ + shape?: ej.datavisualization.CircularGauge.LegendShape|string; + + /** Options to customize the size of the legend. + */ + size?: LegendSize; + + /** Options to customize the font used for legend item text. + */ + font?: LegendFont; + } + + export interface Tooltip { + + /** enable showCustomLabelTooltip of circular gauge + * @Default {false} + */ + showCustomLabelTooltip?: boolean; + + /** enable showLabelTooltip of circular gauge + * @Default {false} + */ + showLabelTooltip?: boolean; + + /** Specify tooltip templateID of circular gauge + * @Default {false} + */ + templateID?: string; + } + } + namespace CircularGauge { + enum RangeZOrderPlacement { + //string + Rear, + //string + Front, + } + } + namespace CircularGauge { + enum FrameType { + //string + FullCircle, + //string + HalfCircle, + } + } + namespace CircularGauge { + enum gaugePosition { + //string + TopLeft, + //string + TopRight, + //string + TopCenter, + //string + MiddleLeft, + //string + MiddleRight, + //string + Center, + //string + BottomLeft, + //string + BottomRight, + //string + BottomCenter, + } + } + namespace CircularGauge { + enum OuterCustomLabelPosition { + //string + Top, + //string + Bottom, + //string + Right, + //string + Left, + } + } + namespace CircularGauge { + enum Direction { + //string + Clockwise, + //string + CounterClockwise, + } + } + namespace CircularGauge { + enum CustomLabelPositionType { + //string + Inner, + //string + Outer, + } + } + namespace CircularGauge { + enum IndicatorTypes { + //string + Rectangle, + //string + Circle, + //string + Text, + //string + RoundedRectangle, + //string + Image, + } + } + namespace CircularGauge { + enum Placement { + //string + Near, + //string + Far, + } + } + namespace CircularGauge { + enum LabelType { + //string + Major, + //string + Minor, + } + } + namespace CircularGauge { + enum UnitTextPlacement { + //string + Back, + //string + Front, + } + } + namespace CircularGauge { + enum MarkerType { + //string + Rectangle, + //string + Circle, + //string + Triangle, + //string + Ellipse, + //string + Diamond, + //string + Pentagon, + //string + Slider, + //string + Pointer, + //string + Wedge, + //string + Trapezoid, + //string + RoundedRectangle, + //string + Image, + } + } + namespace CircularGauge { + enum NeedleType { + //string + Triangle, + //string + Rectangle, + //string + Arrow, + //string + Image, + //string + Trapezoid, + } + } + namespace CircularGauge { + enum PointerType { + //string + Needle, + //string + Marker, + } + } + namespace CircularGauge { + enum LegendAlignment { + //string + Center, + //string + Near, + //string + Far, + } + } + namespace CircularGauge { + enum LegendPosition { + //string + Left, + //string + Right, + //string + Top, + //string + Bottom, + } + } + namespace CircularGauge { + enum LegendShape { + //string + Rectangle, + //string + Circle, + //string + Triangle, + //string + Ellipse, + //string + Diamond, + //string + Pentagon, + //string + Slider, + //string + Trapezoid, + //string + Line, + } + } + + class DigitalGauge extends ej.Widget { + static fn: DigitalGauge; + constructor(element: JQuery | Element, options?: DigitalGauge.Model); + static Locale: any; + model: DigitalGauge.Model; + defaults: DigitalGauge.Model; + + /** To destroy the digital gauge + * @returns {void} + */ + destroy(): void; + + /** To export Digital Gauge as Image + * @param {string} fileName for the Image + * @param {string} fileType for the Image + * @returns {boolean} + */ + exportImage(fileName: string, fileType: string): boolean; + + /** Gets the location of an item that is displayed on the gauge. + * @param {number} Position value of an item that is displayed on the gauge. + * @returns {any} + */ + getPosition(itemIndex: number): any; + + /** ClientSideMethod getValue Gets the value of an item that is displayed on the gauge + * @param {number} Index value of an item that displayed on the gauge + * @returns {any} + */ + getValue(itemIndex: number): any; + + /** Refresh the digital gauge widget + * @returns {void} + */ + refresh(): void; + + /** ClientSideMethod Set Position Sets the location of an item to be displayed in the gauge + * @param {number} Index value of the digital gauge item + * @param {any} Location value of the digital gauge + * @returns {void} + */ + setPosition(itemIndex: number, value: any): void; + + /** ClientSideMethod SetValue Sets the value of an item to be displayed in the gauge. + * @param {number} Index value of the digital gauge item + * @param {string} Text value to be displayed in the gaugeS + * @returns {void} + */ + setValue(itemIndex: number, value: string): void; + } + export namespace DigitalGauge { + + export interface Model { + + /** Specifies the frame of the Digital gauge. + * @Default {{backgroundImageUrl: null, innerWidth: 6, outerWidth: 10}} + */ + frame?: Frame; + + /** Specifies the height of the DigitalGauge. + * @Default {150} + */ + height?: number; + + /** Specifies the resize option of the DigitalGauge. + * @Default {false} + */ + isResponsive?: boolean; + + /** Specifies the responsiveness of the Digital gauge + * @Default {false} + */ + enableResize?: boolean; + + /** Specifies the items for the DigitalGauge. + * @Default {null} + */ + items?: Item[]; + + /** Specifies the matrixSegmentData for the DigitalGauge. + */ + matrixSegmentData?: any; + + /** Specifies the segmentData for the DigitalGauge. + */ + segmentData?: any; + + /** Specifies the themes for the Digital gauge. See Themes + * @Default {flatlight} + */ + themes?: string; + + /** Specifies the value to the DigitalGauge. + * @Default {text} + */ + value?: string; + + /** Specifies the width for the Digital gauge. + * @Default {400} + */ + width?: number; + + /** Triggers when the gauge is initialized. + */ + init?(e: InitEventArgs): void; + + /** Triggers when the gauge item rendering. + */ + itemRendering?(e: ItemRenderingEventArgs): void; + + /** Triggers when the gauge is start to load. + */ + load?(e: LoadEventArgs): void; + + /** Triggers when the gauge render is completed. + */ + renderComplete?(e: RenderCompleteEventArgs): void; + } + + export interface InitEventArgs { + + /** returns the object of the gauge. + */ + object?: any; + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the all the options of the items. + */ + items?: any; + + /** returns the context element + */ + context?: any; + + /** returns the gauge model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface ItemRenderingEventArgs { + + /** returns the object of the gauge. + */ + object?: any; - /** returns the pointer element. - */ - element?: any; + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the all the options of the items. + */ + items?: any; + + /** returns the context element + */ + context?: any; + + /** returns the gauge model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface LoadEventArgs { + + /** returns the object of the gauge. + */ + object?: any; + + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the all the options of the items. + */ + items?: any; + + /** returns the context element + */ + context?: any; + + /** returns the gauge model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface RenderCompleteEventArgs { - /** returns the value of the pointer. - */ - value?: number; + /** returns the object of the gauge. + */ + object?: any; - /** returns the angle of the pointer. - */ - angle?: number; + /** returns the cancel option value + */ + cancel?: boolean; + + /** returns the all the options of the items. + */ + items?: any; + + /** returns the context element + */ + context?: any; + + /** returns the gauge model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface Frame { + + /** Specifies the URL of an image to be displayed as background of the Digital gauge. + * @Default {null} + */ + backgroundImageUrl?: string; + + /** Specifies the inner width for the frame, when the background image has been set for the Digital gauge.. + * @Default {6} + */ + innerWidth?: number; + + /** Specifies the outer width of the frame, when the background image has been set for the Digital gauge. + * @Default {10} + */ + outerWidth?: number; + } + + export interface ItemsCharacterSettings { + + /** Specifies the CharacterCount value for the DigitalGauge. + * @Default {4} + */ + count?: number; + + /** Specifies the opacity value for the DigitalGauge. + * @Default {1} + */ + opacity?: number; + + /** Specifies the value for spacing between the characters + * @Default {2} + */ + spacing?: number; + + /** Specifies the character type for the text to be displayed. + * @Default {ej.datavisualization.DigitalGauge.CharacterType.EightCrossEightDotMatrix} + */ + type?: ej.datavisualization.DigitalGauge.CharacterType|string; + } + + export interface ItemsFont { + + /** Set the font family value + * @Default {Arial} + */ + fontFamily?: string; + + /** Set the font style for the font + * @Default {italic} + */ + fontStyle?: ej.datavisualization.DigitalGauge.FontStyle|string; + + /** Set the font size value + * @Default {11px} + */ + size?: string; + } + + export interface ItemsPosition { + + /** Set the horizontal location for the text, where it needs to be placed within the gauge. + * @Default {0} + */ + x?: number; + + /** Set the vertical location for the text, where it needs to be placed within the gauge. + * @Default {0} + */ + y?: number; + } + + export interface ItemsSegmentSettings { + + /** Set the color for the text segments. + * @Default {null} + */ + color?: string; + + /** Set the gradient for the text segments. + * @Default {null} + */ + gradient?: any; + + /** Set the length for the text segments. + * @Default {2} + */ + length?: number; + + /** Set the opacity for the text segments. + * @Default {0} + */ + opacity?: number; + + /** Set the spacing for the text segments. + * @Default {1} + */ + spacing?: number; + + /** Set the width for the text segments. + * @Default {1} + */ + width?: number; + } + + export interface Item { + + /** Specifies the Character settings for the DigitalGauge. + * @Default {null} + */ + characterSettings?: ItemsCharacterSettings; + + /** Enable/Disable the custom font to be applied to the text in the gauge. + * @Default {false} + */ + enableCustomFont?: boolean; + + /** Set the specific font for the text, when the enableCustomFont is set to true + * @Default {null} + */ + font?: ItemsFont; + + /** Set the location for the text, where it needs to be placed within the gauge. + * @Default {null} + */ + position?: ItemsPosition; + + /** Set the segment settings for the digital gauge. + * @Default {null} + */ + segmentSettings?: ItemsSegmentSettings; + + /** Set the value for enabling/disabling the blurring effect for the shadows of the text + * @Default {0} + */ + shadowBlur?: number; + + /** Specifies the color of the text shadow. + * @Default {null} + */ + shadowColor?: string; + + /** Set the x offset value for the shadow of the text, indicating the location where it needs to be displayed. + * @Default {1} + */ + shadowOffsetX?: number; + + /** Set the y offset value for the shadow of the text, indicating the location where it needs to be displayed. + * @Default {1} + */ + shadowOffsetY?: number; + + /** Set the alignment of the text that is displayed within the gauge.See TextAlign + * @Default {left} + */ + textAlign?: string; + + /** Specifies the color of the text. + * @Default {null} + */ + textColor?: string; + + /** Specifies the text value. + * @Default {null} + */ + value?: string; + } + } + namespace DigitalGauge { + enum CharacterType { + //string + SevenSegment, + //string + FourteenSegment, + //string + SixteenSegment, + //string + EightCrossEightDotMatrix, + //string + EightCrossEightSquareMatrix, + } + } + namespace DigitalGauge { + enum FontStyle { + //string + Normal, + //string + Bold, + //string + Italic, + //string + Underline, + //string + Strikeout, + } + } + + class Chart extends ej.Widget { + static fn: Chart; + constructor(element: JQuery | Element, options?: Chart.Model); + static Locale: any; + model: Chart.Model; + defaults: Chart.Model; + + /** Animates the series and/or indicators in Chart. When parameter is not passed to this method, then all the series and indicators present in Chart are animated. + * @param {any} If an array collection is passed as parameter, series and indicator objects passed in array collection are animated.ExampleIf a series or indicator object is passed + * to this method, then the specific series or indicator is animated.Example, + * @returns {void} + */ + animate(options: any): void; + + /** Prints the rendered chart. + * @returns {void} + */ + print(): void; + + /** Exports chart as an image or to an excel file. Chart can be exported as an image only when exportCanvasRendering option is set to true. + * @param {string} Type of the export operation to be performed. Following are the two export types that are supported now,1. 'image'2. 'excel'Example + * @param {string} URL of the service, where the chart will be exported to excel.Example, + * @param {boolean} When this parameter is true, all the chart objects initialized to the same document are exported to a single excel file. This is an optional parameter. By + * default, it is false.Example, + * @returns {any} + */ + export(type: string, URL: string, exportMultipleChart: boolean): any; + + /** Redraws the entire chart. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. + * @returns {void} + */ + redraw(): void; + } + export namespace Chart { + + export interface Model { + + /** Options for adding and customizing annotations in Chart. + */ + annotations?: Annotation[]; + + /** Sets the background color of the chart. + * @Default {transparent} + */ + background?: string; + + /** URL of the image to be used as chart background. + * @Default {null} + */ + backGroundImageUrl?: string; + + /** Options for customizing the color, opacity and width of the chart border. + */ + border?: Border; + + /** This provides options for customizing export settings + */ + exportSettings?: ExportSettings; + + /** Options for configuring the border and background of the plot area. + */ + chartArea?: ChartArea; + + /** Options to split Chart into multiple plotting areas vertically. Each object in the collection represents a plotting area in Chart. + */ + columnDefinitions?: ColumnDefinition[]; + + /** Options for configuring the properties of all the series. You can also override the options for specific series by using series collection. + */ + commonSeriesOptions?: CommonSeriesOptions; + + /** Options for displaying the chart along with selected points while loading + * @Default {[ ]} + */ + selectedDataPointIndexes?: any[]; + + /** Options for displaying and customizing the crosshair. + */ + crosshair?: Crosshair; + + /** Depth of the 3D Chart from front view of series to background wall. This property is applicable only for 3D view. + * @Default {100} + */ + depth?: number; + + /** Controls whether 3D view has to be enabled or not. 3D view is supported only for column, bar. Stacking column, stacking bar, pie and doughnut series types. + * @Default {false} + */ + enable3D?: boolean; + + /** Controls whether Chart has to be rendered as Canvas or SVG. Canvas rendering supports all functionalities in SVG rendering except 3D Charts. + * @Default {false} + */ + enableCanvasRendering?: boolean; + + /** Controls whether the series has to be rendered at initial loading of chart, this will be useful in scenarios where chart is placed at the bottom of the web page and we need to + * render the series only when the chart is visible while scrolling to the top. + * @Default {true} + */ + initSeriesRender?: boolean; + + /** Controls whether 3D view has to be rotated on dragging. This property is applicable only for 3D view. + * @Default {false} + */ + enableRotation?: boolean; + + /** Options to customize the technical indicators. + */ + indicators?: Indicator[]; + + /** Controls whether Chart has to be responsive while resizing. + * @Default {false} + */ + isResponsive?: boolean; + + /** Options to customize the legend items and legend title. + */ + legend?: Legend; + + /** Name of the culture based on which chart should be localized. Number and date time values are localized with respect to the culture name.String type properties like title text are + * not localized automatically. Provide localized text as value to string type properties. + * @Default {en-US} + */ + locale?: string; + + /** Palette is used to store the series fill color in array and apply the color to series collection in the order of series index. + * @Default {null} + */ + palette?: any[]; + + /** Options to customize the left, right, top and bottom margins of chart area. + */ + Margin?: any; + + /** Perspective angle of the 3D view. Chart appears closer when perspective angle is decreased, and distant when perspective angle is increased.This property is applicable only when + * 3D view is enabled + * @Default {90} + */ + perspectiveAngle?: number; + + /** This is a horizontal axis that contains options to configure axis and it is the primary x axis for all the series in series array. To override x axis for particular series, create + * an axis object by providing unique name by using name property and add it to axes array. Then, assign the name to the series’s xAxisName property to link both axis and series. + */ + primaryXAxis?: PrimaryXAxis; + + /** To override x axis for particular series, create an axis object by providing unique name by using name property and add it to axes array. Then, assign the name to the series’s + * xAxisName property to link both axis and series. + */ + axes?: Axis[]; + + /** This is a vertical axis that contains options to configure axis. This is the primary y axis for all the series in series array. To override y axis for particular series, create an + * axis object by providing unique name by using name property and add it to axes array. Then, assign the name to the series’s yAxisName property to link both axis and series. + */ + primaryYAxis?: PrimaryYAxis; + + /** Rotation angle of the 3D view. This property is applicable only when 3D view is enabled. + * @Default {0} + */ + rotation?: number; + + /** Options to split Chart into multiple plotting areas horizontally. Each object in the collection represents a plotting area in Chart. + */ + rowDefinitions?: RowDefinition[]; + + /** Specifies the properties used for customizing the series. + */ + series?: Series[]; + + /** Controls whether data points has to be displayed side by side or along the depth of the axis. + * @Default {false} + */ + sideBySideSeriesPlacement?: boolean; + + /** Options to customize the Chart size. + */ + size?: Size; + + /** Specifies the theme for Chart. + * @Default {Flatlight. See Theme} + */ + theme?: ej.datavisualization.Chart.Theme|string; + + /** Slope angle of 3D Chart. This property is applicable only when 3D view is enabled. + * @Default {0} + */ + tilt?: number; + + /** Options for customizing the title and subtitle of Chart. + */ + title?: Title; + + /** Width of the wall used in 3D Chart. Wall is present only in Cartesian type 3D series and not in 3D pie or Doughnut series. This property is applicable only when 3D view is enabled. + * @Default {2} + */ + wallSize?: number; + + /** Options for enabling zooming feature of chart. + */ + zooming?: Zooming; + + /** Fires after the series animation is completed. This event will be triggered for each series when animation is enabled. + */ + animationComplete?(e: AnimationCompleteEventArgs): void; + + /** Fires before rendering the labels. This event is fired for each label in axis. You can use this event to add custom text to axis labels. + */ + axesLabelRendering?(e: AxesLabelRenderingEventArgs): void; + + /** Fires during the initialization of axis labels. + */ + axesLabelsInitialize?(e: AxesLabelsInitializeEventArgs): void; + + /** Fires during axes range calculation. This event is fired for each axis present in Chart. You can use this event to customize axis range as required. + */ + axesRangeCalculate?(e: AxesRangeCalculateEventArgs): void; + + /** Fires before rendering the axis title. This event is triggered for each axis with title. You can use this event to add custom text to axis title. + */ + axesTitleRendering?(e: AxesTitleRenderingEventArgs): void; + + /** Fires during the calculation of chart area bounds. You can use this event to customize the bounds of chart area. + */ + chartAreaBoundsCalculate?(e: ChartAreaBoundsCalculateEventArgs): void; + + /** Fires after chart is created. + */ + create?(e: CreateEventArgs): void; + + /** Fires when chart is destroyed completely. + */ + destroy?(e: DestroyEventArgs): void; + + /** Fires before rendering the data labels. This event is triggered for each data label in the series. You can use this event to add custom text in data labels. + */ + displayTextRendering?(e: DisplayTextRenderingEventArgs): void; + + /** Fires during the calculation of legend bounds. You can use this event to customize the bounds of legend. + */ + legendBoundsCalculate?(e: LegendBoundsCalculateEventArgs): void; + + /** Fires on clicking the legend item. + */ + legendItemClick?(e: LegendItemClickEventArgs): void; + + /** Fires when moving mouse over legend item. You can use this event for hit testing on legend items. + */ + legendItemMouseMove?(e: LegendItemMouseMoveEventArgs): void; + + /** Fires before rendering the legend item. This event is fired for each legend item in Chart. You can use this event to customize legend item shape or add custom text to legend item. + */ + legendItemRendering?(e: LegendItemRenderingEventArgs): void; + + /** Fires before loading the chart. + */ + load?(e: LoadEventArgs): void; + + /** Fires while performing rectangle zooming in chart. + */ + zoomed?(e: ZoomedEventArgs): void; + + /** Fires after selected the data in chart. + */ + rangeSelected?(e: RangeSelectedEventArgs): void; + + /** Fires on clicking a point in chart. You can use this event to handle clicks made on points. + */ + pointRegionClick?(e: PointRegionClickEventArgs): void; + + /** Fires when mouse is moved over a point. + */ + pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; + + /** Fires before rendering chart. + */ + preRender?(e: PreRenderEventArgs): void; + + /** Fires after selecting a series. This event is triggered after selecting a series only if selection mode is series. + */ + seriesRegionClick?(e: SeriesRegionClickEventArgs): void; + + /** Fires before rendering a series. This event is fired for each series in Chart. + */ + seriesRendering?(e: SeriesRenderingEventArgs): void; + + /** Fires before rendering the marker symbols. This event is triggered for each marker in Chart. + */ + symbolRendering?(e: SymbolRenderingEventArgs): void; + + /** Fires before rendering the Chart title. You can use this event to add custom text in Chart title. + */ + titleRendering?(e: TitleRenderingEventArgs): void; + + /** Fires before rendering the tooltip. This event is fired when tooltip is enabled and mouse is hovered on a Chart point. You can use this event to customize tooltip before rendering. + */ + toolTipInitialize?(e: ToolTipInitializeEventArgs): void; - /** returns the pointer style - */ - style?: string; + /** Fires before rendering crosshair tooltip in axis. This event is fired for each axis with crosshair label enabled. You can use this event to customize crosshair label before + * rendering + */ + trackAxisToolTip?(e: TrackAxisToolTipEventArgs): void; - /** returns the startX and startY of the pointer. - */ - position?: any; - } + /** Fires before rendering trackball tooltip. This event is fired for each series in Chart because trackball tooltip is displayed for all the series. You can use this event to + * customize the text displayed in trackball tooltip. + */ + trackToolTip?(e: TrackToolTipEventArgs): void; - export interface MouseClickMoveEventArgs { + /** Fires, on clicking the axis label. + */ + axisLabelClick?(e: AxisLabelClickEventArgs): void; - /** returns the object of the gauge. - */ - object?: any; + /** Fires on moving mouse over the axis label. + */ + axisLabelMouseMove?(e: AxisLabelMouseMoveEventArgs): void; - /** returns the cancel option value - */ - cancel?: boolean; + /** Fires, on the clicking the chart. + */ + chartClick?(e: ChartClickEventArgs): void; - /** returns the gauge model - */ - model?: any; + /** Fires, on the clicking the Multi level labels of the chart . + */ + multiLevelLabelClick?(e: MultiLevelLabelClickEventArgs): void; - /** returns the name of the event - */ - type?: any; + /** Fires on moving mouse over the chart. + */ + chartMouseMove?(e: ChartMouseMoveEventArgs): void; - /** returns the scale element. - */ - scaleElement?: any; + /** Fires, on double clicking the chart. + */ + chartDoubleClick?(e: ChartDoubleClickEventArgs): void; - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + /** Fires when the mouse pointer leaves the chart + */ + chartMouseLeave?(e: ChartMouseLeaveEventArgs): void; - /** returns the context element - */ - context?: any; + /** Fires on clicking the annotation. + */ + annotationClick?(e: AnnotationClickEventArgs): void; - /** returns the pointer Index - */ - index?: number; + /** Fires, after the chart is resized. + */ + afterResize?(e: AfterResizeEventArgs): void; - /** returns the pointer element. - */ - element?: any; + /** Fires, when chart size is changing. + */ + beforeResize?(e: BeforeResizeEventArgs): void; - /** returns the value of the pointer. - */ - value?: number; + /** Fires, when error bar is rendering. + */ + errorBarRendering?(e: ErrorBarRenderingEventArgs): void; - /** returns the angle of the pointer. - */ - angle?: number; + /** Fires, when multi level labels are rendering. + */ + multiLevelLabelRendering?(e: MultiLevelLabelRenderingEventArgs): void; - /** returns the pointer style - */ - style?: string; + /** Fires, when trendlines are rendering. + */ + trendlineRendering?(e: TrendlineRenderingEventArgs): void; - /** returns the startX and startY of the pointer. - */ - position?: any; - } + /** Trigger, after the scrollbar position is changed. + */ + scrollChanged?(e: ScrollChangedEventArgs): void; - export interface MouseClickUpEventArgs { + /** Event triggered when scroll starts + */ + scrollStart?(e: ScrollStartEventArgs): void; - /** returns the object of the gauge. - */ - object?: any; + /** Event triggered when scroll end + */ + scrollEnd?(e: ScrollEndEventArgs): void; - /** returns the cancel option value - */ - cancel?: boolean; + /** Fires when the dragging is started + */ + dragStart?(e: DragStartEventArgs): void; - /** returns the gauge model - */ - model?: any; + /** Fires while dragging + */ + dragging?(e: DraggingEventArgs): void; - /** returns the name of the event - */ - type?: any; + /** Fires when the dragging is completed + */ + dragEnd?(e: DragEndEventArgs): void; - /** returns the scale element. - */ - scaleElement?: any; + /** Fires when the sub Title of the chart is rendered + */ + subTitleRendering?(e: SubTitleRenderingEventArgs): void; + } - /** returns the scaleIndex to which the pointer belongs. - */ - scaleIndex?: number; + export interface AnimationCompleteEventArgs { - /** returns the context element - */ - context?: any; - - /** returns the pointer Index - */ - index?: number; + /** series - Instance of the series that completed has animation. + */ + data?: any; - /** returns the pointer element. - */ - element?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** returns the value of the pointer. - */ - value?: number; - - /** returns the angle of the pointer. - */ - angle?: number; - - /** returns the pointer style - */ - style?: string; - - /** returns the startX and startY of the pointer. - */ - position?: any; - } + /** Instance of the chart model object + */ + model?: any; - export interface RenderCompleteEventArgs { - - /** returns the object of the gauge. - */ - object?: any; - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the context element - */ - context?: any; - - /** returns the entire scale element. - */ - scaleElement?: any; - - /** returns the gauge model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface Frame { - - /** Specify the URL of the frame background image for circular gauge - * @Default {null} - */ - backgroundImageUrl?: string; - - /** Specifies the frameType of circular gauge. See Frame - * @Default {FullCircle} - */ - frameType?: ej.datavisualization.CircularGauge.FrameType | string; - - /** Specifies the end angle for the half circular frame. - * @Default {360} - */ - halfCircleFrameEndAngle?: number; - - /** Specifies the start angle for the half circular frame. - * @Default {180} - */ - halfCircleFrameStartAngle?: number; - } - - export interface ScalesBorder { - - /** Specify border color for scales of circular gauge - * @Default {null} - */ - color?: string; - - /** Specify border width of circular gauge - * @Default {1.5} - */ - width?: number; - } - - export interface ScalesCustomLabelsPosition { - - /** Specify x-axis position of label - * @Default {0} - */ - x?: number; - - /** Specify y-axis position of labels. - * @Default {0} - */ - y?: number; - } - - export interface ScalesCustomLabelsFont { - - /** Specify font fontFamily for custom labels. - * @Default {Arial} - */ - fontFamily?: string; - - /** Specify font Style for custom labels. - * @Default {Bold} - */ - fontStyle?: string; - - /** Specify font size for custom labels. - * @Default {12px} - */ - size?: string; - } - - export interface ScalesCustomLabel { - - /** Value of the custom labels. - */ - value?: string; - - /** Color of the custom labels. - */ - color?: string; - - /** Specify position of custom labels - * @Default {Object} - */ - position?: ScalesCustomLabelsPosition; - - /** Specify angle for the rotation of the custom labels in degrees. - * @Default {0} - */ - textAngle?: number; - - /** Specify font for custom labels - * @Default {Object} - */ - font?: ScalesCustomLabelsFont; - - /** Specifies the position of the custom labels. See CustomLabelPositionType - * @Default {inner} - */ - positionType?: ej.datavisualization.CircularGauge.CustomLabelPositionType | string; - } - - export interface ScalesIndicatorsPosition { - - /** Specify x-axis of position of circular gauge - * @Default {0} - */ - x?: number; - - /** Specify y-axis of position of circular gauge - * @Default {0} - */ - y?: number; - } - - export interface ScalesIndicatorsStateRange { - - /** Specify backgroundColor for indicator of circular gauge - * @Default {null} - */ - backgroundColor?: string; - - /** Specify borderColor for indicator of circular gauge - * @Default {null} - */ - borderColor?: string; - - /** Specify end value for each specified state of circular gauge - * @Default {0} - */ - endValue?: number; - - /** Specify value of the font as the indicator when the indicator style is set with the value "text" of circular gauge - * @Default {null} - */ - font?: any; - - /** Specify start value for each specified state of circular gauge - * @Default {0} - */ - startValue?: number; - - /** Specify value of the text as the indicator when the indicator style is set with the value "text" of circular gauge - */ - text?: string; - - /** Specify value of the textColor as the indicator when the indicator style is set with the value "text" of circular gauge - * @Default {null} - */ - textColor?: string; - } - - export interface ScalesIndicator { - - /** Specify indicator height of circular gauge - * @Default {15} - */ - height?: number; - - /** Specify imageUrl of circular gauge - * @Default {null} - */ - imageUrl?: string; - - /** Specify position of circular gauge - * @Default {Object} - */ - position?: ScalesIndicatorsPosition; - - /** Specify the various states of circular gauge - * @Default {Array} - */ - stateRanges?: ScalesIndicatorsStateRange[]; - - /** Specify indicator style of circular gauge. See IndicatorType - * @Default {Circle} - */ - type?: ej.datavisualization.CircularGauge.IndicatorTypes | string; - - /** Specify indicator width of circular gauge - * @Default {15} - */ - width?: number; - } - - export interface ScalesLabelsFont { - - /** Specify font fontFamily for labels of circular gauge - * @Default {Arial} - */ - fontFamily?: string; - - /** Specify font Style for labels of circular gauge - * @Default {Bold} - */ - fontStyle?: string; - - /** Specify font size for labels of circular gauge - * @Default {11px} - */ - size?: string; - } - - export interface ScalesLabel { - - /** Specify the angle for the labels of circular gauge - * @Default {0} - */ - angle?: number; - - /** Specify labels autoAngle value of circular gauge - * @Default {false} - */ - autoAngle?: boolean; - - /** Specify label color of circular gauge - * @Default {null} - */ - color?: string; - - /** Specify distanceFromScale value for labels of circular gauge - * @Default {0} - */ - distanceFromScale?: number; - - /** Specify font for labels of circular gauge - * @Default {Object} - */ - font?: ScalesLabelsFont; - - /** Specify includeFirstValue of circular gauge - * @Default {true} - */ - includeFirstValue?: boolean; - - /** Specify opacity value for labels of circular gauge - * @Default {null} - */ - opacity?: number; - - /** Specify label placement of circular gauge. See LabelPlacement - * @Default {Near} - */ - placement?: ej.datavisualization.CircularGauge.Placement | string; - - /** Specify label Style of circular gauge. See LabelType - * @Default {Major} - */ - type?: ej.datavisualization.CircularGauge.LabelType | string; - - /** Specify unitText of circular gauge - */ - unitText?: string; - - /** Specify unitTextPosition of circular gauge. See UnitTextPosition - * @Default {Back} - */ - unitTextPosition?: ej.datavisualization.CircularGauge.UnitTextPlacement | string; - } - - export interface ScalesPointerCap { - - /** Specify cap backgroundColor of circular gauge - * @Default {null} - */ - backgroundColor?: string; - - /** Specify cap borderColor of circular gauge - * @Default {null} - */ - borderColor?: string; - - /** Specify pointerCap borderWidth value of circular gauge - * @Default {3} - */ - borderWidth?: number; - - /** Specify cap interiorGradient value of circular gauge - * @Default {null} - */ - interiorGradient?: any; - - /** Specify pointerCap Radius value of circular gauge - * @Default {7} - */ - radius?: number; - } - - export interface ScalesPointersBorder { - - /** Specify border color for pointer of circular gauge - * @Default {null} - */ - color?: string; - - /** Specify border width for pointers of circular gauge - * @Default {1.5} - */ - width?: number; - } - - export interface ScalesPointersPointerValueTextFont { - - /** Specify pointer value text font family of circular gauge. - * @Default {Arial} - */ - fontFamily?: string; - - /** Specify pointer value text font style of circular gauge. - * @Default {Bold} - */ - fontStyle?: string; - - /** Specify pointer value text size of circular gauge. - * @Default {11px} - */ - size?: string; - } - - export interface ScalesPointersPointerValueText { - - /** Specify pointer text angle of circular gauge. - * @Default {0} - */ - angle?: number; - - /** Specify pointer text auto angle of circular gauge. - * @Default {false} - */ - autoAngle?: boolean; - - /** Specify pointer value text color of circular gauge. - * @Default {#8c8c8c} - */ - color?: string; - - /** Specify pointer value text distance from pointer of circular gauge. - * @Default {20} - */ - distance?: number; - - /** Specify pointer value text font option of circular gauge. - * @Default {object} - */ - font?: ScalesPointersPointerValueTextFont; - - /** Specify pointer value text opacity of circular gauge. - * @Default {1} - */ - opacity?: number; - - /** enable pointer value text visibility of circular gauge. - * @Default {false} - */ - showValue?: boolean; - } - - export interface ScalesPointer { - - /** Specify backgroundColor for the pointer of circular gauge - * @Default {null} - */ - backgroundColor?: string; - - /** Specify backNeedleLength of circular gauge - * @Default {10} - */ - backNeedleLength?: number; - - /** Specify the border for pointers of circular gauge - * @Default {Object} - */ - border?: ScalesPointersBorder; - - /** Specify distanceFromScale value for pointers of circular gauge - * @Default {0} - */ - distanceFromScale?: number; - - /** Specify pointer gradients of circular gauge - * @Default {null} - */ - gradients?: any; - - /** Specify pointer image of circular gauge.It is applicable for both marker as well as needle type pointers. - * @Default {NULL} - */ - imageUrl?: string; - - /** Specify pointer length of circular gauge - * @Default {150} - */ - length?: number; - - /** Specify marker Style value of circular gauge. See MarkerType - * @Default {Rectangle} - */ - markerType?: ej.datavisualization.CircularGauge.MarkerType | string; - - /** Specify needle Style value of circular gauge. See NeedleType - * @Default {Triangle} - */ - needleType?: ej.datavisualization.CircularGauge.NeedleType | string; - - /** Specify opacity value for pointer of circular gauge - * @Default {1} - */ - opacity?: number; - - /** Specify radius value for pointer of circular gauge - * @Default {null} - */ - radius?: number; - - /** Specify pointer Placement value of circular gauge. See PointerPlacement - * @Default {Near} - */ - placement?: ej.datavisualization.CircularGauge.Placement | string; - - /** Specify pointer value text of circular gauge. - * @Default {Object} - */ - pointerValueText?: ScalesPointersPointerValueText; - - /** Specify showBackNeedle value of circular gauge - * @Default {false} - */ - showBackNeedle?: boolean; - - /** Specify pointer type value of circular gauge. See PointerType - * @Default {Needle} - */ - type?: ej.datavisualization.CircularGauge.PointerType | string; - - /** Specify value of the pointer of circular gauge - * @Default {null} - */ - value?: number; - - /** Specify pointer width of circular gauge - * @Default {7} - */ - width?: number; - } - - export interface ScalesRangesBorder { - - /** Specify border color for ranges of circular gauge - * @Default {#32b3c6} - */ - color?: string; - - /** Specify border width for ranges of circular gauge - * @Default {1.5} - */ - width?: number; - } - - export interface ScalesRange { - - /** Specify backgroundColor for the ranges of circular gauge - * @Default {#32b3c6} - */ - backgroundColor?: string; - - /** Specify text for the ranges of circular gauge - * @Default {null} - */ - legendText?: string; - - /** Specify border for ranges of circular gauge - * @Default {Object} - */ - border?: ScalesRangesBorder; - - /** Specify distanceFromScale value for ranges of circular gauge - * @Default {25} - */ - distanceFromScale?: number; - - /** Specify endValue for ranges of circular gauge - * @Default {null} - */ - endValue?: number; - - /** Specify endWidth for ranges of circular gauge - * @Default {10} - */ - endWidth?: number; - - /** Specify range gradients of circular gauge - * @Default {null} - */ - gradients?: any; - - /** Specify opacity value for ranges of circular gauge - * @Default {null} - */ - opacity?: number; - - /** Specify placement of circular gauge. See RangePlacement - * @Default {Near} - */ - placement?: ej.datavisualization.CircularGauge.Placement | string; - - /** Specify size of the range value of circular gauge - * @Default {5} - */ - size?: number; - - /** Specify startValue for ranges of circular gauge - * @Default {null} - */ - startValue?: number; - - /** Specify startWidth of circular gauge - * @Default {[Array.number] scale.ranges.startWidth = 10} - */ - startWidth?: number; - } - - export interface ScalesSubGaugesPosition { - - /** Specify x-axis position for sub-gauge of circular gauge - * @Default {0} - */ - x?: number; - - /** Specify y-axis position for sub-gauge of circular gauge - * @Default {0} - */ - y?: number; - } - - export interface ScalesSubGauge { - - /** Specify subGauge Height of circular gauge - * @Default {150} - */ - height?: number; - - /** Specify position for sub-gauge of circular gauge - * @Default {Object} - */ - position?: ScalesSubGaugesPosition; - - /** Specify subGauge Width of circular gauge - * @Default {150} - */ - width?: number; - } - - export interface ScalesTick { - - /** Specify the angle for the ticks of circular gauge - * @Default {0} - */ - angle?: number; - - /** Specify tick color of circular gauge - * @Default {null} - */ - color?: string; - - /** Specify distanceFromScale value for ticks of circular gauge - * @Default {0} - */ - distanceFromScale?: number; - - /** Specify tick height of circular gauge - * @Default {16} - */ - height?: number; - - /** Specify tick placement of circular gauge. See TickPlacement - * @Default {Near} - */ - placement?: ej.datavisualization.CircularGauge.Placement | string; - - /** Specify tick Style of circular gauge. See TickType - * @Default {Major} - */ - type?: ej.datavisualization.CircularGauge.LabelType | string; - - /** Specify tick width of circular gauge - * @Default {3} - */ - width?: number; - } - - export interface Scale { - - /** Specify backgroundColor for the scale of circular gauge - * @Default {null} - */ - backgroundColor?: string; - - /** Specify border for scales of circular gauge - * @Default {Object} - */ - border?: ScalesBorder; - - /** Specify scale direction of circular gauge. See Directions - * @Default {Clockwise} - */ - direction?: ej.datavisualization.CircularGauge.Direction | string; - - /** Specify the custom labels for the scales. - * @Default {Array} - */ - customLabels?: ScalesCustomLabel[]; - - /** Specify representing state of circular gauge - * @Default {Array} - */ - indicators?: ScalesIndicator[]; - - /** Specify the text values displayed in a meaningful manner alongside the ticks of circular gauge - * @Default {Array} - */ - labels?: ScalesLabel[]; - - /** Specify majorIntervalValue of circular gauge - * @Default {10} - */ - majorIntervalValue?: number; - - /** Specify maximum scale value of circular gauge - * @Default {null} - */ - maximum?: number; - - /** Specify minimum scale value of circular gauge - * @Default {null} - */ - minimum?: number; - - /** Specify minorIntervalValue of circular gauge - * @Default {2} - */ - minorIntervalValue?: number; - - /** Specify opacity value of circular gauge - * @Default {1} - */ - opacity?: number; - - /** Specify pointer cap of circular gauge - * @Default {Object} - */ - pointerCap?: ScalesPointerCap; - - /** Specify pointers value of circular gauge - * @Default {Array} - */ - pointers?: ScalesPointer[]; - - /** Specify scale radius of circular gauge - * @Default {170} - */ - radius?: number; - - /** Specify ranges value of circular gauge - * @Default {Array} - */ - ranges?: ScalesRange[]; - - /** Specify shadowOffset value of circular gauge - * @Default {0} - */ - shadowOffset?: number; - - /** Specify showIndicators of circular gauge - * @Default {false} - */ - showIndicators?: boolean; - - /** Specify showLabels of circular gauge - * @Default {true} - */ - showLabels?: boolean; - - /** Specify showPointers of circular gauge - * @Default {true} - */ - showPointers?: boolean; - - /** Specify showRanges of circular gauge - * @Default {false} - */ - showRanges?: boolean; - - /** Specify showScaleBar of circular gauge - * @Default {false} - */ - showScaleBar?: boolean; - - /** Specify showTicks of circular gauge - * @Default {true} - */ - showTicks?: boolean; - - /** Specify scaleBar size of circular gauge - * @Default {6} - */ - size?: number; - - /** Specify startAngle of circular gauge - * @Default {115} - */ - startAngle?: number; - - /** Specify subGauge of circular gauge - * @Default {Array} - */ - subGauges?: ScalesSubGauge[]; - - /** Specify sweepAngle of circular gauge - * @Default {310} - */ - sweepAngle?: number; - - /** Specify ticks of circular gauge - * @Default {Array} - */ - ticks?: ScalesTick[]; - } - - export interface LegendBorder { - - /** Border color of the legend. - * @Default {transparent} - */ - color?: string; - - /** Border width of the legend. - * @Default {1} - */ - width?: number; - } - - export interface LegendItemStyleBorder { - - /** Border color of the legend items. - * @Default {transparent} - */ - color?: string; - - /** Border width of the legend items. - * @Default {1} - */ - width?: number; - } - - export interface LegendItemStyle { - - /** Options for customizing the border of legend items. - */ - border?: LegendItemStyleBorder; - - /** Specifies the height of the legend item shapes. - * @Default {10} - */ - height?: number; - - /** Specifies the width of the legend item shapes. - * @Default {10} - */ - width?: number; - } - - export interface LegendSize { - - /** Specify the height of the legend. Height can be specified in pixel. - * @Default {null} - */ - height?: string; - - /** Specify the width of the legend. Width can be specified in pixel. - * @Default {null} - */ - width?: string; - } - - export interface LegendFont { - - /** Font family for legend item text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for legend item text. - * @Default {Normal} - */ - fontStyle?: string; - - /** Font weight for legend item text. - * @Default {Regular} - */ - fontWeight?: string; - - /** Font size for legend item text. - * @Default {12px} - */ - size?: string; - - /** Font color of the text for legend items. - * @Default {null} - */ - color?: string; - } - - export interface Legend { - - /** Toggles the visibility of the legend. - * @Default {false} - */ - visible?: boolean; - - /** Specifies the alignment of the legend. - * @Default {Center. See Alignment} - */ - alignment?: ej.datavisualization.CircularGauge.LegendAlignment | string; - - /** Options for customizing the legend border. - */ - border?: LegendBorder; - - /** Fill color for the legend items. By using this property, it displays all legend item shapes in same color.Legend items representing invisible ranges is displayed in gray color. - * @Default {null} - */ - fill?: string; - - /** Gap or padding between the legend items. - * @Default {20} - */ - itemPadding?: number; - - /** Options to customize the style of legend items. - */ - itemStyle?: LegendItemStyle; - - /** Opacity of the legend. - * @Default {1} - */ - opacity?: number; - - /** Places the legend at specified position. Legend can be placed at left, right, top or bottom of the circular gauge. - * @Default {Bottom. See Position} - */ - position?: ej.datavisualization.CircularGauge.LegendPosition | string; - - /** Shape of the legend items. - * @Default {Circle. See Shape} - */ - shape?: ej.datavisualization.CircularGauge.LegendShape | string; - - /** Options to customize the size of the legend. - */ - size?: LegendSize; - - /** Options to customize the font used for legend item text. - */ - font?: LegendFont; - } - - export interface Tooltip { - - /** enable showCustomLabelTooltip of circular gauge - * @Default {false} - */ - showCustomLabelTooltip?: boolean; - - /** enable showLabelTooltip of circular gauge - * @Default {false} - */ - showLabelTooltip?: boolean; - - /** Specify tooltip templateID of circular gauge - * @Default {false} - */ - templateID?: string; - } - } - namespace CircularGauge { - enum FrameType { - //string - FullCircle, - //string - HalfCircle, - } - } - namespace CircularGauge { - enum gaugePosition { - //string - TopLeft, - //string - TopRight, - //string - TopCenter, - //string - MiddleLeft, - //string - MiddleRight, - //string - Center, - //string - BottomLeft, - //string - BottomRight, - //string - BottomCenter, - } - } - namespace CircularGauge { - enum CustomLabelPositionType { - //string - Top, - //string - Bottom, - //string - Right, - //string - Left, - } - } - namespace CircularGauge { - enum Direction { - //string - Clockwise, - //string - CounterClockwise, - } - } - namespace CircularGauge { - enum IndicatorTypes { - //string - Rectangle, - //string - Circle, - //string - Text, - //string - RoundedRectangle, - //string - Image, - } - } - namespace CircularGauge { - enum Placement { - //string - Near, - //string - Far, - } - } - namespace CircularGauge { - enum LabelType { - //string - Major, - //string - Minor, - } - } - namespace CircularGauge { - enum UnitTextPlacement { - //string - Back, - //string - Front, - } - } - namespace CircularGauge { - enum MarkerType { - //string - Rectangle, - //string - Circle, - //string - Triangle, - //string - Ellipse, - //string - Diamond, - //string - Pentagon, - //string - Slider, - //string - Pointer, - //string - Wedge, - //string - Trapezoid, - //string - RoundedRectangle, - //string - Image, - } - } - namespace CircularGauge { - enum NeedleType { - //string - Triangle, - //string - Rectangle, - //string - Arrow, - //string - Image, - //string - Trapezoid, - } - } - namespace CircularGauge { - enum PointerType { - //string - Needle, - //string - Marker, - } - } - - namespace CircularGauge { - enum LegendAlignment { - //string - Center, - //string - Near, - //string - Far, - } - } - - namespace CircularGauge { - enum LegendPosition { - //string - Left, - //string - Right, - //string - Top, - //string - Bottom, - } - } - - namespace CircularGauge { - enum LegendShape { - //string - Rectangle, - //string - Circle, - //string - Triangle, - //string - Ellipse, - //string - Diamond, - //string - Pentagon, - //string - Slider, - //string - Trapezoid, - //string - Line, - } - } - - class DigitalGauge extends ej.Widget { - static fn: DigitalGauge; - constructor(element: JQuery | Element, options?: DigitalGauge.Model); - static Locale: any; - model: DigitalGauge.Model; - defaults: DigitalGauge.Model; - - /** To destroy the digital gauge - * @returns {void} - */ - destroy(): void; - - /** To export Digital Gauge as Image - * @param {string} fileName for the Image - * @param {string} fileType for the Image - * @returns {boolean} - */ - exportImage(fileName: string, fileType: string): boolean; - - /** Gets the location of an item that is displayed on the gauge. - * @param {number} Position value of an item that is displayed on the gauge. - * @returns {any} - */ - getPosition(itemIndex: number): any; - - /** ClientSideMethod getValue Gets the value of an item that is displayed on the gauge - * @param {number} Index value of an item that displayed on the gauge - * @returns {any} - */ - getValue(itemIndex: number): any; - - /** Refresh the digital gauge widget - * @returns {void} - */ - refresh(): void; - - /** ClientSideMethod Set Position Sets the location of an item to be displayed in the gauge - * @param {number} Index value of the digital gauge item - * @param {any} Location value of the digital gauge - * @returns {void} - */ - setPosition(itemIndex: number, value: any): void; - - /** ClientSideMethod SetValue Sets the value of an item to be displayed in the gauge. - * @param {number} Index value of the digital gauge item - * @param {string} Text value to be displayed in the gaugeS - * @returns {void} - */ - setValue(itemIndex: number, value: string): void; - } - export namespace DigitalGauge { - - export interface Model { - - /** Specifies the frame of the Digital gauge. - * @Default {{backgroundImageUrl: null, innerWidth: 6, outerWidth: 10}} - */ - frame?: Frame; - - /** Specifies the height of the DigitalGauge. - * @Default {150} - */ - height?: number; - - /** Specifies the resize option of the DigitalGauge. - * @Default {false} - */ - isResponsive?: boolean; - - /** Specifies the responsiveness of the Digital gauge - * @Default {false} - */ - enableResize?: boolean; - - /** Specifies the items for the DigitalGauge. - * @Default {null} - */ - items?: Item[]; - - /** Specifies the matrixSegmentData for the DigitalGauge. - */ - matrixSegmentData?: any; - - /** Specifies the segmentData for the DigitalGauge. - */ - segmentData?: any; - - /** Specifies the themes for the Digital gauge. See Themes - * @Default {flatlight} - */ - themes?: string; - - /** Specifies the value to the DigitalGauge. - * @Default {text} - */ - value?: string; - - /** Specifies the width for the Digital gauge. - * @Default {400} - */ - width?: number; - - /** Triggers when the gauge is initialized. */ - init?(e: InitEventArgs): void; - - /** Triggers when the gauge item rendering. */ - itemRendering?(e: ItemRenderingEventArgs): void; - - /** Triggers when the gauge is start to load. */ - load?(e: LoadEventArgs): void; - - /** Triggers when the gauge render is completed. */ - renderComplete?(e: RenderCompleteEventArgs): void; - } - - export interface InitEventArgs { - - /** returns the object of the gauge. - */ - object?: any; - - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the all the options of the items. - */ - items?: any; - - /** returns the context element - */ - context?: any; - - /** returns the gauge model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface ItemRenderingEventArgs { - - /** returns the object of the gauge. - */ - object?: any; + /** Name of the event + */ + type?: string; + } - /** returns the cancel option value - */ - cancel?: boolean; + export interface AxesLabelRenderingEventArgs { - /** returns the all the options of the items. - */ - items?: any; - - /** returns the context element - */ - context?: any; - - /** returns the gauge model - */ - model?: any; + /** axis - Instance of the corresponding axis. label - Arguments of axis label value and text. + */ + data?: any; - /** returns the name of the event - */ - type?: string; - } + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - export interface LoadEventArgs { + /** Instance of the chart model object. + */ + model?: any; - /** returns the object of the gauge. - */ - object?: any; - - /** returns the cancel option value - */ - cancel?: boolean; + /** Name of the event + */ + type?: string; + } - /** returns the all the options of the items. - */ - items?: any; + export interface AxesLabelsInitializeEventArgs { - /** returns the context element - */ - context?: any; + /** dataAxes - Collection of axes in Chart + */ + data?: any; - /** returns the gauge model - */ - model?: any; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** returns the name of the event - */ - type?: string; - } + /** Instance of the chart model object. + */ + model?: any; - export interface RenderCompleteEventArgs { + /** Name of the event + */ + type?: string; + } - /** returns the object of the gauge. - */ - object?: any; + export interface AxesRangeCalculateEventArgs { - /** returns the cancel option value - */ - cancel?: boolean; - - /** returns the all the options of the items. - */ - items?: any; - - /** returns the context element - */ - context?: any; - - /** returns the gauge model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface Frame { - - /** Specifies the URL of an image to be displayed as background of the Digital gauge. - * @Default {null} - */ - backgroundImageUrl?: string; - - /** Specifies the inner width for the frame, when the background image has been set for the Digital gauge.. - * @Default {6} - */ - innerWidth?: number; - - /** Specifies the outer width of the frame, when the background image has been set for the Digital gauge. - * @Default {10} - */ - outerWidth?: number; - } - - export interface ItemsCharacterSettings { - - /** Specifies the CharacterCount value for the DigitalGauge. - * @Default {4} - */ - count?: number; - - /** Specifies the opacity value for the DigitalGauge. - * @Default {1} - */ - opacity?: number; - - /** Specifies the value for spacing between the characters - * @Default {2} - */ - spacing?: number; - - /** Specifies the character type for the text to be displayed. - * @Default {ej.datavisualization.DigitalGauge.CharacterType.EightCrossEightDotMatrix} - */ - type?: ej.datavisualization.DigitalGauge.CharacterType | string; - } - - export interface ItemsFont { - - /** Set the font family value - * @Default {Arial} - */ - fontFamily?: string; - - /** Set the font style for the font - * @Default {italic} - */ - fontStyle?: ej.datavisualization.DigitalGauge.FontStyle | string; - - /** Set the font size value - * @Default {11px} - */ - size?: string; - } - - export interface ItemsPosition { - - /** Set the horizontal location for the text, where it needs to be placed within the gauge. - * @Default {0} - */ - x?: number; - - /** Set the vertical location for the text, where it needs to be placed within the gauge. - * @Default {0} - */ - y?: number; - } - - export interface ItemsSegmentSettings { - - /** Set the color for the text segments. - * @Default {null} - */ - color?: string; - - /** Set the gradient for the text segments. - * @Default {null} - */ - gradient?: any; - - /** Set the length for the text segments. - * @Default {2} - */ - length?: number; - - /** Set the opacity for the text segments. - * @Default {0} - */ - opacity?: number; - - /** Set the spacing for the text segments. - * @Default {1} - */ - spacing?: number; - - /** Set the width for the text segments. - * @Default {1} - */ - width?: number; - } - - export interface Item { - - /** Specifies the Character settings for the DigitalGauge. - * @Default {null} - */ - characterSettings?: ItemsCharacterSettings; - - /** Enable/Disable the custom font to be applied to the text in the gauge. - * @Default {false} - */ - enableCustomFont?: boolean; - - /** Set the specific font for the text, when the enableCustomFont is set to true - * @Default {null} - */ - font?: ItemsFont; - - /** Set the location for the text, where it needs to be placed within the gauge. - * @Default {null} - */ - position?: ItemsPosition; - - /** Set the segment settings for the digital gauge. - * @Default {null} - */ - segmentSettings?: ItemsSegmentSettings; - - /** Set the value for enabling/disabling the blurring effect for the shadows of the text - * @Default {0} - */ - shadowBlur?: number; - - /** Specifies the color of the text shadow. - * @Default {null} - */ - shadowColor?: string; - - /** Set the x offset value for the shadow of the text, indicating the location where it needs to be displayed. - * @Default {1} - */ - shadowOffsetX?: number; - - /** Set the y offset value for the shadow of the text, indicating the location where it needs to be displayed. - * @Default {1} - */ - shadowOffsetY?: number; - - /** Set the alignment of the text that is displayed within the gauge.See TextAlign - * @Default {left} - */ - textAlign?: string; - - /** Specifies the color of the text. - * @Default {null} - */ - textColor?: string; - - /** Specifies the text value. - * @Default {null} - */ - value?: string; - } - } - namespace DigitalGauge { - enum CharacterType { - //string - SevenSegment, - //string - FourteenSegment, - //string - SixteenSegment, - //string - EightCrossEightDotMatrix, - //string - EightCrossEightSquareMatrix, - } - } - namespace DigitalGauge { - enum FontStyle { - //string - Normal, - //string - Bold, - //string - Italic, - //string - Underline, - //string - Strikeout, - } - } - - class Chart extends ej.Widget { - static fn: Chart; - constructor(element: JQuery | Element, options?: Chart.Model); - static Locale: any; - model: Chart.Model; - defaults: Chart.Model; - - /** Animates the series and/or indicators in Chart. When parameter is not passed to this method, then all the series and indicators present in Chart are animated. - * @param {any} If an array collection is passed as parameter, series and indicator objects passed in array collection are animated.ExampleIf a series - * or indicator object is passed to this method, then the specific series or indicator is animated.Example, - * @returns {void} - */ - animate(options: any): void; - - /** Prints the rendered chart. - * @returns {void} - */ - print(): void; - - /** Exports chart as an image or to an excel file. Chart can be exported as an image only when exportCanvasRendering option is set to true. - * @param {string} Type of the export operation to be performed. Following are the two export types that are supported now,1. 'image'2. 'excel'Example - * @param {string} URL of the service, where the chart will be exported to excel.Example, - * @param {boolean} When this parameter is true, all the chart objects initialized to the same document are exported to a single excel file. - * This is an optional parameter. By default, it is false.Example, - * @returns {any} - */ - export(type: string, URL: string, exportMultipleChart: boolean): any; - - /** Redraws the entire chart. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. - * @returns {void} - */ - redraw(): void; - } - export namespace Chart { - - export interface Model { - - /** Options for adding and customizing annotations in Chart. - */ - annotations?: Annotation[]; - - /** URL of the image to be used as chart background. - * @Default {null} - */ - backGroundImageUrl?: string; - - /** Options for customizing the color, opacity and width of the chart border. - */ - border?: Border; - - /** This provides options for customizing export settings - */ - exportSettings?: ExportSettings; - - /** Options for configuring the border and background of the plot area. - */ - chartArea?: ChartArea; - - /** Options to split Chart into multiple plotting areas vertically. Each object in the collection represents a plotting area in Chart. - */ - columnDefinitions?: ColumnDefinition[]; - - /** Options for configuring the properties of all the series. You can also override the options for specific series by using series collection. - */ - commonSeriesOptions?: CommonSeriesOptions; - - /** Options for displaying and customizing the crosshair. - */ - crosshair?: Crosshair; - - /** Depth of the 3D Chart from front view of series to background wall. This property is applicable only for 3D view. - * @Default {100} - */ - depth?: number; - - /** Controls whether 3D view has to be enabled or not. 3D view is supported only for column, bar. Stacking column, stacking bar, pie and doughnut series types. - * @Default {false} - */ - enable3D?: boolean; - - /** Controls whether Chart has to be rendered as Canvas or SVG. Canvas rendering supports all functionalities in SVG rendering except 3D Charts. - * @Default {false} - */ - enableCanvasRendering?: boolean; - - /** Controls whether the series has to be rendered at initial loading of chart, this will be useful in scenarios where chart is placed at the bottom of the web page - * and we need to render the series only when the chart is visible while scrolling to the top. - * @Default {true} - */ - initSeriesRender?: boolean; - - /** Controls whether 3D view has to be rotated on dragging. This property is applicable only for 3D view. - * @Default {false} - */ - enableRotation?: boolean; - - /** Options to customize the technical indicators. - */ - indicators?: Indicator[]; - - /** Controls whether Chart has to be responsive while resizing. - * @Default {false} - */ - isResponsive?: boolean; - - /** Options to customize the legend items and legend title. - */ - legend?: Legend; - - /** Name of the culture based on which chart should be localized. Number and date time values are localized with respect to the culture name.String type properties like title text are - * not localized automatically. Provide localized text as value to string type properties. - * @Default {en-US} - */ - locale?: string; - - /** Palette is used to store the series fill color in array and apply the color to series collection in the order of series index. - * @Default {null} - */ - palette?: any[]; - - /** Options to customize the left, right, top and bottom margins of chart area. - */ - Margin?: any; - - /** Perspective angle of the 3D view. Chart appears closer when perspective angle is decreased, and distant when perspective angle is increased. - * This property is applicable only when 3D view is enabled - * @Default {90} - */ - perspectiveAngle?: number; - - /** This is a horizontal axis that contains options to configure axis and it is the primary x axis for all the series in series array. - * To override x axis for particular series, create an axis object by providing unique name by using name property and add it to axes array. - * Then, assign the name to the series’s xAxisName property to link both axis and series. - */ - primaryXAxis?: PrimaryXAxis; - - /** To override x axis for particular series, create an axis object by providing unique name by using name property and add it to axes array. - * Then, assign the name to the series’s xAxisName property to link both axis and series. - */ - axes?: Axis[]; - - /** This is a vertical axis that contains options to configure axis. This is the primary y axis for all the series in series array. - * To override y axis for particular series, create an axis object by providing unique name by using name property and add it to axes array. - * Then, assign the name to the series’s yAxisName property to link both axis and series. - */ - primaryYAxis?: PrimaryYAxis; - - /** Rotation angle of the 3D view. This property is applicable only when 3D view is enabled. - * @Default {0} - */ - rotation?: number; + /** delta - Difference between minimum and maximum value of axis range. interval - Interval value of axis range. Grid lines, tick lines and axis labels are drawn based on this + * interval value. max - Maximum value of axis range. min - Minimum value of axis range. + */ + data?: any; - /** Options to split Chart into multiple plotting areas horizontally. Each object in the collection represents a plotting area in Chart. - */ - rowDefinitions?: RowDefinition[]; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Specifies the properties used for customizing the series. - */ - series?: Series[]; + /** Instance of the chart model object. + */ + model?: any; - /** Controls whether data points has to be displayed side by side or along the depth of the axis. - * @Default {false} - */ - sideBySideSeriesPlacement?: boolean; + /** Name of the event + */ + type?: string; + } - /** Options to customize the Chart size. - */ - size?: Size; + export interface AxesTitleRenderingEventArgs { - /** Specifies the theme for Chart. - * @Default {Flatlight. See Theme} - */ - theme?: ej.datavisualization.Chart.Theme | string; + /** axes - Instance of the axis whose title is being rendered locationX - X-coordinate of title location locationY - Y-coordinate of title location title - Axis title + * text. You can add custom text to the title. + */ + data?: any; - /** Slope angle of 3D Chart. This property is applicable only when 3D view is enabled. - * @Default {0} - */ - tilt?: number; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Options for customizing the title and subtitle of Chart. - */ - title?: Title; + /** Instance of the chart model object. + */ + model?: any; - /** Width of the wall used in 3D Chart. Wall is present only in Cartesian type 3D series and not in 3D pie or Doughnut series. This property is applicable only when 3D view is enabled. - * @Default {2} - */ - wallSize?: number; + /** Name of the event + */ + type?: string; + } - /** Options for enabling zooming feature of chart. - */ - zooming?: Zooming; + export interface ChartAreaBoundsCalculateEventArgs { - /** Fires after the series animation is completed. This event will be triggered for each series when animation is enabled. */ - animationComplete?(e: AnimationCompleteEventArgs): void; + /** areaBoundsHeight - Height of the chart area. areaBoundsWidth - Width of the chart area. areaBoundsX - X-coordinate of the chart area. areaBoundsY - Y-coordinate of the + * chart area. + */ + data?: any; - /** Fires before rendering the labels. This event is fired for each label in axis. You can use this event to add custom text to axis labels. */ - axesLabelRendering?(e: AxesLabelRenderingEventArgs): void; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Fires during the initialization of axis labels. */ - axesLabelsInitialize?(e: AxesLabelsInitializeEventArgs): void; + /** Instance of the chart model object. + */ + model?: any; - /** Fires during axes range calculation. This event is fired for each axis present in Chart. You can use this event to customize axis range as required. */ - axesRangeCalculate?(e: AxesRangeCalculateEventArgs): void; + /** Name of the event + */ + type?: string; + } - /** Fires before rendering the axis title. This event is triggered for each axis with title. You can use this event to add custom text to axis title. */ - axesTitleRendering?(e: AxesTitleRenderingEventArgs): void; + export interface CreateEventArgs { - /** Fires during the calculation of chart area bounds. You can use this event to customize the bounds of chart area. */ - chartAreaBoundsCalculate?(e: ChartAreaBoundsCalculateEventArgs): void; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Fires after chart is created. */ - create?(e: CreateEventArgs): void; + /** Instance of the chart model object. + */ + model?: any; - /** Fires when chart is destroyed completely. */ - destroy?(e: DestroyEventArgs): void; + /** Name of the event + */ + type?: string; + } - /** Fires before rendering the data labels. This event is triggered for each data label in the series. You can use this event to add custom text in data labels. */ - displayTextRendering?(e: DisplayTextRenderingEventArgs): void; + export interface DestroyEventArgs { - /** Fires during the calculation of legend bounds. You can use this event to customize the bounds of legend. */ - legendBoundsCalculate?(e: LegendBoundsCalculateEventArgs): void; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Fires on clicking the legend item. */ - legendItemClick?(e: LegendItemClickEventArgs): void; + /** Instance of the chart model object. + */ + model?: any; - /** Fires when moving mouse over legend item. You can use this event for hit testing on legend items. */ - legendItemMouseMove?(e: LegendItemMouseMoveEventArgs): void; + /** Name of the event + */ + type?: string; + } - /** Fires before rendering the legend item. This event is fired for each legend item in Chart. You can use this event to customize legend item shape or add custom text to legend item. */ - legendItemRendering?(e: LegendItemRenderingEventArgs): void; + export interface DisplayTextRenderingEventArgs { + + /** text - Text displayed in data label. You can add custom text to the data label locationX - X-coordinate of data label location locationY - Y-coordinate of data label + * location seriesIndex - Index of the series in series Collection whose data label is being rendered pointIndex - Index of the point in series whose data label is being + * rendered + */ + data?: any; - /** Fires before loading the chart. */ - load?(e: LoadEventArgs): void; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Fires while performing rectangle zooming in chart. */ - zoomed?(e: ZoomedEventArgs): void; + /** Instance of the chart model object. + */ + model?: any; - /** Fires after selected the data in chart. */ - rangeSelected?(e: RangeSelectedEventArgs): void; + /** Name of the event + */ + type?: string; + } - /** Fires on clicking a point in chart. You can use this event to handle clicks made on points. */ - pointRegionClick?(e: PointRegionClickEventArgs): void; + export interface LegendBoundsCalculateEventArgs { - /** Fires when mouse is moved over a point. */ - pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; + /** legendBoundsHeight - Height of the legend legendBoundsWidth - Width of the legend. legendBoundsRows - Number of rows to display the legend items + */ + data?: any; - /** Fires before rendering chart. */ - preRender?(e: PreRenderEventArgs): void; + /** Set this option to true to cancel the event. + */ + cancel?: boolean; - /** Fires after selecting a series. This event is triggered after selecting a series only if selection mode is series. */ - seriesRegionClick?(e: SeriesRegionClickEventArgs): void; + /** Instance of the chart model object. + */ + model?: any; - /** Fires before rendering a series. This event is fired for each series in Chart. */ - seriesRendering?(e: SeriesRenderingEventArgs): void; + /** Name of the event + */ + type?: string; + } - /** Fires before rendering the marker symbols. This event is triggered for each marker in Chart. */ - symbolRendering?(e: SymbolRenderingEventArgs): void; + export interface LegendItemClickEventArgs { - /** Fires before rendering the Chart title. You can use this event to add custom text in Chart title. */ - titleRendering?(e: TitleRenderingEventArgs): void; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Fires before rendering the tooltip. This event is fired when tooltip is enabled and mouse is hovered on a Chart point. You can use this event to customize tooltip before rendering. */ - toolTipInitialize?(e: ToolTipInitializeEventArgs): void; + /** Instance of the chart model object + */ + model?: any; - /** Fires before rendering crosshair tooltip in axis. This event is fired for each axis with crosshair label enabled. You can use this event to customize crosshair label before rendering */ - trackAxisToolTip?(e: TrackAxisToolTipEventArgs): void; + /** Name of the event + */ + type?: string; - /** Fires before rendering trackball tooltip. This event is fired for each series in Chart because trackball tooltip is displayed for all the series. - * You can use this event to customize the text displayed in trackball tooltip. - */ - trackToolTip?(e: TrackToolTipEventArgs): void; + /** startX - X-coordinate of legend item in pixel startY - Y-coordinate of legend item in pixel LegendItem - Instance of the legend item object that is about to be rendered + * style - Options to customize the legend item styles such as border, color, size, etc…, Bounds - Instance that holds information about legend bounds and legend item bounds. + * symbolShape - Name of the legend item shape. Use this option to customize legend item shape before rendering series - Instance of the series object corresponding to the + * legend item + */ + data?: any; + } - /** Fires, on clicking the axis label. */ - axisLabelClick?(e: AxisLabelClickEventArgs): void; + export interface LegendItemMouseMoveEventArgs { - /** Fires on moving mouse over the axis label. */ - axisLabelMouseMove?(e: AxisLabelMouseMoveEventArgs): void; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Fires, on the clicking the chart. */ - chartClick?(e: ChartClickEventArgs): void; + /** Instance of the chart model object + */ + model?: any; - /** Fires on moving mouse over the chart. */ - chartMouseMove?(e: ChartMouseMoveEventArgs): void; + /** Name of the event + */ + type?: string; - /** Fires, on double clicking the chart. */ - chartDoubleClick?(e: ChartDoubleClickEventArgs): void; + /** startX - X-coordinate of legend item in pixel startY - Y-coordinate of legend item in pixel LegendItem - Instance of the legend item object that is about to be rendered + * style - Options to customize the legend item styles such as border, color, size, etc…, Bounds - Instance that holds information about legend bounds and legend item bounds. + * symbolShape - Name of the legend item shape. Use this option to customize legend item shape before rendering series - Instance of the series object corresponding to the + * legend item + */ + data?: any; + } - /** Fires on clicking the annotation. */ - annotationClick?(e: AnnotationClickEventArgs): void; + export interface LegendItemRenderingEventArgs { - /** Fires, after the chart is resized. */ - afterResize?(e: AfterResizeEventArgs): void; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Fires, when chart size is changing. */ - beforeResize?(e: BeforeResizeEventArgs): void; + /** Instance of the chart model object + */ + model?: any; - /** Fires, when error bar is rendering. */ - errorBarRendering?(e: ErrorBarRenderingEventArgs): void; + /** Name of the event + */ + type?: string; - /** Trigger, after the scrollbar position is changed. */ - scrollChanged?(e: ScrollChangedEventArgs): void; + /** startX - X-coordinate of legend item in pixel startY - Y-coordinate of legend item in pixel legendItem - Instance of the legend item object that is about to be rendered + * style - Options to customize the legend item styles such as border, color, size, etc. symbolShape - Name of the legend item shape. Use this option to customize legend item + * shape before rendering + */ + data?: any; + } - /** Event triggered when scroll starts */ - scrollStart?(e: ScrollStartEventArgs): void; + export interface LoadEventArgs { - /** Event triggered when scroll end */ - scrollEnd?(e: ScrollEndEventArgs): void; - } + /** Set this option to true to cancel the event + */ + cancel?: boolean; - export interface AnimationCompleteEventArgs { + /** Instance of the chart model object + */ + model?: any; - /** Instance of the series that completed has animation. - */ - series?: any; + /** Name of the event + */ + type?: string; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface ZoomedEventArgs { - /** Instance of the chart model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the chart model object + */ + model?: any; - export interface AxesLabelRenderingEventArgs { + /** Name of the event + */ + type?: string; - /** Instance of the corresponding axis. - */ - axis?: any; + /** Selected data collection of object + */ + data?: any; + } - /** Formatted text of the respective label. You can also add custom text to the label. - */ - Text?: string; + export interface RangeSelectedEventArgs { - /** Actual value of the label. - */ - Value?: string; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + /** Instance of the chart model object + */ + model?: any; - /** Instance of the chart model object. - */ - model?: any; + /** Name of the event + */ + type?: string; - /** Name of the event - */ - type?: string; - } + /** Selected data collection of object + */ + data?: any; + } - export interface AxesLabelsInitializeEventArgs { + export interface PointRegionClickEventArgs { - /** Collection of axes in Chart - */ - dataAxes?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + /** Instance of the chart model object + */ + model?: any; - /** Instance of the chart model object. - */ - model?: any; + /** Name of the event + */ + type?: string; - /** Name of the event - */ - type?: string; - } + /** locationX - X-coordinate of point in pixel locationY - Y-coordinate of point in pixel seriesIndex - Index of the series in series collection to which the point belongs + * pointIndex - Index of the point in series + */ + data?: any; + } - export interface AxesRangeCalculateEventArgs { + export interface PointRegionMouseMoveEventArgs { - /** Difference between minimum and maximum value of axis range. - */ - delta?: number; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Interval value of axis range. Grid lines, tick lines and axis labels are drawn based on this interval value. - */ - interval?: number; + /** Instance of the chart model object + */ + model?: any; - /** Maximum value of axis range. - */ - max?: number; + /** Name of the event + */ + type?: string; - /** Minimum value of axis range. - */ - min?: number; + /** locationX - X-coordinate of point in pixel locationY - Y-coordinate of point in pixel seriesIndex - Index of the series in series collection to which the point belongs + * pointIndex - Index of the point in series + */ + data?: any; + } - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + export interface PreRenderEventArgs { - /** Instance of the chart model object. - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the chart model object + */ + model?: any; - export interface AxesTitleRenderingEventArgs { + /** Name of the event + */ + type?: string; + } - /** Instance of the axis whose title is being rendered - */ - axes?: any; + export interface SeriesRegionClickEventArgs { - /** X-coordinate of title location - */ - locationX?: number; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Y-coordinate of title location - */ - locationY?: number; + /** Instance of the chart model object + */ + model?: any; - /** Axis title text. You can add custom text to the title. - */ - title?: string; + /** Name of the event + */ + type?: string; - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + /** series - Instance of the selected series seriesIndex - Index of the selected series + */ + data?: any; + } - /** Instance of the chart model object. - */ - model?: any; + export interface SeriesRenderingEventArgs { - /** Name of the event - */ - type?: string; - } + /** Set this option to true to cancel the event + */ + cancel?: boolean; - export interface ChartAreaBoundsCalculateEventArgs { + /** Instance of the chart model object + */ + model?: any; - /** Height of the chart area. - */ - areaBoundsHeight?: number; + /** Name of the event + */ + type?: string; - /** Width of the chart area. - */ - areaBoundsWidth?: number; + /** series - Instance of the series which is about to get rendered + */ + data?: any; + } - /** X-coordinate of the chart area. - */ - areaBoundsX?: number; + export interface SymbolRenderingEventArgs { - /** Y-coordinate of the chart area. - */ - areaBoundsY?: number; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + /** Instance of the chart model object + */ + model?: any; - /** Instance of the chart model object. - */ - model?: any; + /** Name of the event + */ + type?: string; - /** Name of the event - */ - type?: string; - } + /** location - Instance that holds the location of marker symbol style - Options to customize the marker style such as color, border and size + */ + data?: any; + } - export interface CreateEventArgs { + export interface TitleRenderingEventArgs { - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Instance of the chart model object. - */ - model?: any; + /** Instance of the chart model object + */ + model?: any; - /** Name of the event - */ - type?: string; - } + /** Name of the event + */ + type?: string; - export interface DestroyEventArgs { + /** location - Option to customize the title location in pixels size - Read-only option to find the size of the title title - Use this option to add custom text in title + */ + data?: any; + } - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + export interface ToolTipInitializeEventArgs { - /** Instance of the chart model object. - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the chart model object + */ + model?: any; - export interface DisplayTextRenderingEventArgs { + /** Name of the event + */ + type?: string; - /** Text displayed in data label. You can add custom text to the data label - */ - text?: string; + /** currentText - Text to be displayed in tooltip. Set this option to customize the text displayed in tooltip pointIndex - Index of the point on which mouse is hovered + * seriesIndex - Index of the series in series collection whose point is hovered by mouse + */ + data?: any; + } - /** X-coordinate of data label location - */ - locationX?: number; + export interface TrackAxisToolTipEventArgs { - /** Y-coordinate of data label location - */ - locationY?: number; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Index of the series in series Collection whose data label is being rendered - */ - seriesIndex?: number; + /** Instance of the chart model object + */ + model?: any; - /** Index of the point in series whose data label is being rendered - */ - pointIndex?: number; + /** Name of the event + */ + type?: string; - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + /** location - Location of the crosshair label in pixels axisIndex - Index of the axis for which crosshair label is displayed crossAxis - Instance of the chart axis object + * for which cross hair label is displayed currentTrackText - Text to be displayed in crosshair label. Use this option to add custom text in crosshair label + */ + data?: any; + } - /** Instance of the chart model object. - */ - model?: any; + export interface TrackToolTipEventArgs { - /** Name of the event - */ - type?: string; - } + /** Set this option to true to cancel the event + */ + cancel?: boolean; - export interface LegendBoundsCalculateEventArgs { + /** Instance of the chart model object + */ + model?: any; - /** Height of the legend. - */ - legendBoundsHeight?: number; + /** Name of the event + */ + type?: string; - /** Width of the legend. - */ - legendBoundsWidth?: number; + /** location - Location of the trackball tooltip in pixels pointIndex - Index of the point for which trackball tooltip is displayed seriesIndex - Index of the series in + * series collection currentText - Text to be displayed in trackball tooltip. Use this option to add custom text in trackball tooltip series - Instance of the series object + * for which trackball tooltip is displayed. + */ + data?: any; + } - /** Number of rows to display the legend items - */ - legendBoundsRows?: number; + export interface AxisLabelClickEventArgs { - /** Set this option to true to cancel the event. - */ - cancel?: boolean; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Instance of the chart model object. - */ - model?: any; + /** Instance of the chart model object + */ + model?: any; - /** Name of the event - */ - type?: string; - } + /** Name of the event + */ + type?: string; - export interface LegendItemClickEventArgs { + /** location - X and Y co-ordinate of the labels in chart area. index - Index of the label. axis - Instance of the corresponding axis. text - Label that is clicked. + * + */ + data?: any; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface AxisLabelMouseMoveEventArgs { - /** Instance of the chart model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; + /** Instance of the chart model object + */ + model?: any; - /** X-coordinate of legend item in pixel - */ - startX?: number; + /** Name of the event + */ + type?: string; - /** Y-coordinate of legend item in pixel - */ - startY?: number; + /** location - X and Y co-ordinate of the labels in chart area. index - Index of the label. axis - Instance of the corresponding axis. text - Label that is hovered. + * + */ + data?: any; + } - /** Instance of the legend item object that is about to be rendered - */ - LegendItem?: any; + export interface ChartClickEventArgs { - /** Options to customize the legend item styles such as border, color, size, etc…, - */ - style?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Instance that holds information about legend bounds and legend item bounds. - */ - Bounds?: any; + /** Instance of the chart model object + */ + model?: any; - /** Name of the legend item shape. Use this option to customize legend item shape before rendering - */ - symbolShape?: string; + /** Name of the event + */ + type?: string; - /** Instance of the series object corresponding to the legend item - */ - series?: any; - } + /** location - X and Y co-ordinate of the points with respect to chart area.id - ID of the target element. size - Width and height of the chart. pageX - x-coordinate of the + * pointer, relative to the page pageY - y-coordinate of the pointer, relative to the page + */ + data?: any; + } - export interface LegendItemMouseMoveEventArgs { + export interface MultiLevelLabelClickEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Instance of the chart model object - */ - model?: any; + /** Instance of the chart model object + */ + model?: any; - /** Name of the event - */ - type?: string; + /** Name of the event + */ + type?: string; - /** X-coordinate of legend item in pixel - */ - startX?: number; + /** location - X and Y co-ordinate of the points with respect to chart area. axis - axis of the multilevellabels. multilevellabel - Multi level label details + */ + data?: any; + } - /** Y-coordinate of legend item in pixel - */ - startY?: number; + export interface ChartMouseMoveEventArgs { - /** Instance of the legend item object that is about to be rendered - */ - LegendItem?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Options to customize the legend item styles such as border, color, size, etc…, - */ - style?: any; + /** Instance of the chart model object + */ + model?: any; - /** Options to customize the legend item styles such as border, color, size, etc…, - */ - Bounds?: any; + /** Name of the event + */ + type?: string; + } - /** Name of the legend item shape. Use this option to customize legend item shape before rendering - */ - symbolShape?: string; + export interface ChartDoubleClickEventArgs { - /** Instance of the series object corresponding to the legend item - */ - series?: any; - } + /** Set this option to true to cancel the event + */ + cancel?: boolean; - export interface LegendItemRenderingEventArgs { + /** Instance of the chart model object + */ + model?: any; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Name of the event + */ + type?: string; + } - /** Instance of the chart model object - */ - model?: any; + export interface ChartMouseLeaveEventArgs { - /** Name of the event - */ - type?: string; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** X-coordinate of legend item in pixel - */ - startX?: number; + /** Instance of the chart model object + */ + model?: any; - /** Y-coordinate of legend item in pixel - */ - startY?: number; + /** Name of the event + */ + type?: string; - /** Instance of the legend item object that is about to be rendered - */ - legendItem?: any; + /** location - X and Y co-ordinate of the points with respect to chart area.id - ID of the target element. size - Width and height of the chart. pageX - x-coordinate of the + * pointer, relative to the page pageY - y-coordinate of the pointer, relative to the page + */ + data?: any; + } - /** Options to customize the legend item styles such as border, color, size, etc. - */ - style?: any; + export interface AnnotationClickEventArgs { - /** Name of the legend item shape. Use this option to customize legend item shape before rendering - */ - symbolShape?: string; - } + /** Set this option to true to cancel the event + */ + cancel?: boolean; - export interface LoadEventArgs { + /** Instance of the chart model object + */ + model?: any; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Name of the event + */ + type?: string; - /** Instance of the chart model object - */ - model?: any; + /** location - X and Y co-ordinate of the annotation in chart area. contentData - Information about the annotation, like Coordinate unit, Region, content pageX- + * x-coordinate of the pointer, relative to the page pageY - y-coordinate of the pointer, relative to the page + */ + data?: any; + } - /** Name of the event - */ - type?: string; - } - export interface ZoomedEventArgs { + export interface AfterResizeEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Instance of the chart model object - */ - model?: any; + /** Instance of the chart model object + */ + model?: any; - /** Name of the event - */ - type?: string; + /** Name of the event + */ + type?: string; - /** Selected data collection of object - */ - data?: any; - } - export interface RangeSelectedEventArgs { + /** width - Chart width, after resize height - Chart height, after resize prevWidth - Chart width, before resize prevHeight - Chart height, before resize + * originalWidth- Chart width, when the chart was first rendered originalHeight - Chart height, when the chart was first rendered + */ + data?: any; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface BeforeResizeEventArgs { - /** Instance of the chart model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; + /** Instance of the chart model object + */ + model?: any; - /** Selected data collection of object - */ - data?: any; - } + /** Name of the event + */ + type?: string; - export interface RangeSelectedEventArgs { + /** currentWidth - Chart width, before resize currentHeight - Chart height, before resize newWidth - Chart width, after resize newHeight - Chart height, after resize + */ + data?: any; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface ErrorBarRenderingEventArgs { - /** Instance of the chart model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; + /** Instance of the chart model object + */ + model?: any; - /** Selected data collection of object - */ - data?: any; - } + /** Name of the event + */ + type?: string; - export interface PointRegionClickEventArgs { + /** errorbar - Error bar Object + */ + data?: any; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface MultiLevelLabelRenderingEventArgs { - /** Instance of the chart model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; + /** Instance of the chart model object + */ + model?: any; - /** X-coordinate of point in pixel - */ - locationX?: number; + /** Name of the event + */ + type?: string; - /** Y-coordinate of point in pixel - */ - locationY?: number; + /** multilevellabels - MultiLevel Label Object + */ + data?: any; + } - /** Index of the point in series - */ - pointIndex?: number; + export interface TrendlineRenderingEventArgs { - /** Index of the series in series collection to which the point belongs - */ - seriesIndex?: number; - } + /** Set this option to true to cancel the event + */ + cancel?: boolean; - export interface PointRegionMouseMoveEventArgs { + /** Instance of the chart model object + */ + model?: any; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Name of the event + */ + type?: string; - /** Instance of the chart model object - */ - model?: any; + /** trendlines - Trendline Object series - Series data of the chart forwardForecast - Forward Forecast value for the trendline backwardForecast - Backward Forecast value + * for the trendline + */ + data?: any; + } - /** Name of the event - */ - type?: string; + export interface ScrollChangedEventArgs { - /** X-coordinate of point in pixel - */ - locationX?: number; + /** oldRange - returns the scrollbar position old start and end range value on change end of scrollbar newRange - returns the scrollbar position new start and end range value + * on change end of scrollbar + */ + data?: any; - /** Y-coordinate of point in pixel - */ - locationY?: number; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Index of the point in series - */ - pointIndex?: number; + /** returns the RangeNavigator model + */ + model?: any; - /** Index of the series in series collection to which the point belongs - */ - seriesIndex?: number; - } + /** returns the name of the event + */ + type?: string; + } - export interface PreRenderEventArgs { + export interface ScrollStartEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** startRange - returns the scrollbar position starting range value on changing scrollbar endRange - returns the scrollbar position end range value on changing scrollbar + */ + data?: any; - /** Instance of the chart model object - */ - model?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** returns the RangeNavigator model + */ + model?: any; - export interface SeriesRegionClickEventArgs { + /** returns the name of the event + */ + type?: string; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface ScrollEndEventArgs { - /** Instance of the chart model object - */ - model?: any; + /** oldRange - returns the scrollbar position old start and end range value on change end of scrollbar newRange - returns the scrollbar position new start and end range value + * on change end of scrollbar + */ + data?: any; - /** Name of the event - */ - type?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Instance of the selected series - */ - series?: any; + /** returns the RangeNavigator model + */ + model?: any; - /** Index of the selected series - */ - seriesIndex?: number; - } + /** returns the name of the event + */ + type?: string; + } - export interface SeriesRenderingEventArgs { + export interface DragStartEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Instance of the chart model object - */ - model?: any; + /** Instance of the chart model object + */ + model?: any; - /** Name of the event - */ - type?: string; + /** Name of the event + */ + type?: string; - /** Instance of the series which is about to get rendered - */ - series?: any; - } + /** seriesIndex - Series Index of the point held for dragging pointIndex - PointIndex of the point held for dragging point - Information of the point held for dragging + */ + data?: any; + } - export interface SymbolRenderingEventArgs { + export interface DraggingEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Set this option to true to cancel the event + */ + cancel?: boolean; + + /** Instance of the chart model object + */ + model?: any; + + /** Name of the event + */ + type?: string; + + /** seriesIndex - Series Index of the point held for dragging pointIndex - PointIndex of the point held for dragging oldValue - Previous value of the point before dragging + * newValue - Current value of the point + */ + data?: any; + } + + export interface DragEndEventArgs { - /** Instance of the chart model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; + + /** Instance of the chart model object + */ + model?: any; + + /** Name of the event + */ + type?: string; + + /** seriesIndex - Series Index of the point held for dragging pointIndex - PointIndex of the point held for dragging oldValue - Previous value of the point before dragging + * newValue - Current value of the point series - Contains the all the series information of the chart + */ + data?: any; + } + + export interface SubTitleRenderingEventArgs { + + /** Set this option to true to cancel the event + */ + cancel?: boolean; + + /** Instance of the chart model object + */ + model?: any; + + /** Name of the event + */ + type?: string; + + /** location - location of the subTitle text subtitle - text of the subtitle size - Size of the Subtitle text + */ + data?: any; + } + + export interface AnnotationsMargin { + + /** Annotation is placed at the specified value above its original position. + * @Default {0} + */ + bottom?: number; + + /** Annotation is placed at the specified value from left side of its original position. + * @Default {0} + */ + left?: number; + + /** Annotation is placed at the specified value from the right side of its original position. + * @Default {0} + */ + right?: number; + + /** Annotation is placed at the specified value under its original position. + * @Default {0} + */ + top?: number; + } + + export interface Annotation { + + /** Angle to rotate the annotation in degrees. + * @Default {'0'} + */ + angle?: number; + + /** Text content or id of a HTML element to be displayed as annotation. + */ + content?: string; + + /** Specifies how annotations have to be placed in Chart. + * @Default {none. See CoordinateUnit} + */ + coordinateUnit?: ej.datavisualization.Chart.CoordinateUnit|string; + + /** Specifies the horizontal alignment of the annotation. + * @Default {middle. See HorizontalAlignment} + */ + horizontalAlignment?: ej.datavisualization.Chart.HorizontalAlignment|string; + + /** Options to customize the margin of annotation. + */ + margin?: AnnotationsMargin; + + /** Controls the opacity of the annotation. + * @Default {1} + */ + opacity?: number; + + /** Specifies whether annotation has to be placed with respect to chart or series. + * @Default {chart. See Region} + */ + region?: ej.datavisualization.Chart.Region|string; + + /** Specifies the vertical alignment of the annotation. + * @Default {middle. See VerticalAlignment} + */ + verticalAlignment?: ej.datavisualization.Chart.VerticalAlignment|string; + + /** Controls the visibility of the annotation. + * @Default {false} + */ + visible?: boolean; + + /** Represents the horizontal offset when coordinateUnit is pixels.when coordinateUnit is points, it represents the x-coordinate of axis bounded with xAxisName property or primary X + * axis when xAxisName is not provided.This property is not applicable when coordinateUnit is none. + * @Default {0} + */ + x?: number; + + /** Name of the horizontal axis to be used for positioning the annotation. This property is applicable only when coordinateUnit is points. + */ + xAxisName?: string; + + /** Represents the vertical offset when coordinateUnit is pixels.When coordinateUnit is points, it represents the y-coordinate of axis bounded with yAxisName property or primary Y + * axis when yAxisName is not provided.This property is not applicable when coordinateUnit is none. + * @Default {0} + */ + y?: number; + + /** Name of the vertical axis to be used for positioning the annotation.This property is applicable only when coordinateUnit is points. + */ + yAxisName?: string; + } + + export interface Border { + + /** Border color of the chart. + * @Default {null} + */ + color?: string; + + /** Opacity of the chart border. + * @Default {0.3} + */ + opacity?: number; + + /** Width of the Chart border. + * @Default {0} + */ + width?: number; + } + + export interface ExportSettings { + + /** Specifies the downloading filename + * @Default {chart} + */ + filename?: string; + + /** Specifies the name of the action URL + */ + action?: string; + + /** Specifies the angle for rotation + * @Default {0} + */ + angle?: number; + + /** Specifies the format of the file to export + * @Default {png} + */ + type?: ej.datavisualization.Chart.ExportingType|string; + + /** Specifies the orientation of the document + * @Default {portrait} + */ + orientation?: ej.datavisualization.Chart.ExportingOrientation|string; + + /** Specifies the mode of exporting + * @Default {client} + */ + mode?: ej.datavisualization.Chart.ExportingMode|string; + + /** Enable/ disable the multiple excel exporting + * @Default {false} + */ + multipleExport?: boolean; + } + + export interface ChartAreaBorder { + + /** Border color of the plot area. + * @Default {Gray} + */ + color?: string; + + /** Opacity of the plot area border. + * @Default {0.3} + */ + opacity?: number; + + /** Border width of the plot area. + * @Default {0.5} + */ + width?: number; + } + + export interface ChartArea { + + /** Background color of the plot area. + * @Default {transparent} + */ + background?: string; + + /** Options for customizing the border of the plot area. + */ + border?: ChartAreaBorder; + } + + export interface ColumnDefinition { + + /** Specifies the unit to measure the width of the column in plotting area. + * @Default {'pixel'. See Unit} + */ + unit?: ej.datavisualization.Chart.Unit|string; + + /** Width of the column in plotting area. Width is measured in either pixel or percentage based on the value of unit property. + * @Default {50} + */ + columnWidth?: number; + + /** Color of the line that indicates the starting point of the column in plotting area. + * @Default {transparent} + */ + lineColor?: string; + + /** Width of the line that indicates the starting point of the column in plot area. + * @Default {1} + */ + lineWidth?: number; + } + + export interface CommonSeriesOptionsBorder { + + /** Border color of all series. + * @Default {transparent} + */ + color?: string; + + /** DashArray for border of the series. + * @Default {null} + */ + dashArray?: string; + + /** Border width of all series. + * @Default {1} + */ + width?: number; + } + + export interface CommonSeriesOptionsFont { + + /** Font color of the text in all series. + * @Default {#707070} + */ + color?: string; + + /** Font Family for all the series. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the font Style for all the series. + * @Default {normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Specifies the font weight for all the series. + * @Default {regular} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity for text in all the series. + * @Default {1} + */ + opacity?: number; + + /** Font size for text in all the series. + * @Default {12px} + */ + size?: string; + } + + export interface CommonSeriesOptionsBubbleOptions { + + /** Used for the calculation of the bubble radius based on the mode selected + * @Default {minmax} + */ + radiusMode?: ej.datavisualization.Chart.RadiusMode|string; + + /** Used for the setting the minimum radius of the bubble + * @Default {1} + */ + minRadius?: number; + + /** Used for setting the maximum radius of the bubble + * @Default {3} + */ + maxRadius?: number; + } + + export interface CommonSeriesOptionsMarkerBorder { + + /** Border color of the marker shape. + * @Default {white} + */ + color?: string; + + /** Border width of the marker shape. + * @Default {3} + */ + width?: number; + } + + export interface CommonSeriesOptionsMarkerDataLabelBorder { + + /** Border color of the data label. + * @Default {null} + */ + color?: string; + + /** Border width of the data label. + * @Default {0.1} + */ + width?: number; + } + + export interface CommonSeriesOptionsMarkerDataLabelConnectorLine { + + /** Specifies when the connector has to be drawn as Bezier curve or straight line. This is applicable only for Pie and Doughnut chart types. + * @Default {line. See ConnectorLineType} + */ + type?: ej.datavisualization.Chart.ConnectorLineType|string; + + /** Width of the connector. + * @Default {0.5} + */ + width?: number; + + /** Color of the connector line. + * @Default {#565656} + */ + color?: string; + + /** Height of the connector line. + * @Default {null} + */ + height?: string; + } + + export interface CommonSeriesOptionsMarkerDataLabelFont { + + /** Font family of the data label. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the data label. + * @Default {normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the data label. + * @Default {regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the text. + * @Default {1} + */ + opacity?: number; + + /** Font color of the data label text. + * @Default {null} + */ + color?: string; + + /** Font size of the data label. + * @Default {12px} + */ + size?: string; + } + + export interface CommonSeriesOptionsMarkerDataLabelMargin { + + /** Bottom margin of the text. + * @Default {5} + */ + bottom?: number; + + /** Left margin of the text. + * @Default {5} + */ + left?: number; + + /** Right margin of the text. + * @Default {5} + */ + right?: number; + + /** Top margin of the text. + * @Default {5} + */ + top?: number; + } + + export interface CommonSeriesOptionsMarkerDataLabelOffset { + + /** X value or horizontal offset to position the labels in chart. + * @Default {0} + */ + x?: number; + + /** Y value or vertical offset to position the labels. + * @Default {0} + */ + y?: number; + } + + export interface CommonSeriesOptionsMarkerDataLabel { + + /** Angle of the data label in degrees. Only the text gets rotated, whereas the background and border does not rotate. + * @Default {null} + */ + angle?: number; + + /** Maximum label width of the data label. + * @Default {null} + */ + maximumLabelWidth?: number; + + /** Enable the wrap option to the data label. + * @Default {false} + */ + enableWrap?: boolean; + + /** Options for customizing the border of the data label. + */ + border?: CommonSeriesOptionsMarkerDataLabelBorder; + + /** Options for displaying and customizing the line that connects point and data label. + */ + connectorLine?: CommonSeriesOptionsMarkerDataLabelConnectorLine; + + /** Background color of the data label. + * @Default {null} + */ + fill?: string; + + /** Options for customizing the data label font. + */ + font?: CommonSeriesOptionsMarkerDataLabelFont; + + /** Horizontal alignment of the data label. + * @Default {center} + */ + horizontalTextAlignment?: ej.datavisualization.Chart.HorizontalTextAlignment|string; + + /** Margin of the text to its background shape. The size of the background shape increases based on the margin applied to its text. + */ + margin?: CommonSeriesOptionsMarkerDataLabelMargin; + + /** Opacity of the data label. + * @Default {1} + */ + opacity?: number; + + /** Options for customizing the datalabel positions + */ + offset?: CommonSeriesOptionsMarkerDataLabelOffset; + + /** Background shape of the data label. + * @Default {none. See Shape} + */ + shape?: ej.datavisualization.Chart.Shape|string; + + /** Custom template to format the data label content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. + */ + template?: string; + + /** Name of a field in data source, where datalabel text is displayed. + */ + textMappingName?: string; + + /** Specifies the position of the data label. This property can be used only for the series such as column, bar, stacked column, stacked bar, 100% stacked column, 100% stacked bar, + * candle and OHLC. + * @Default {top. See TextPosition} + */ + textPosition?: ej.datavisualization.Chart.TextPosition|string; + + /** Vertical alignment of the data label. + * @Default {center} + */ + verticalTextAlignment?: ej.datavisualization.Chart.VerticalTextAlignment|string; + + /** Controls the visibility of the data labels. + * @Default {false} + */ + visible?: boolean; + } + + export interface CommonSeriesOptionsMarkerSize { + + /** Height of the marker. + * @Default {6} + */ + height?: number; + + /** Width of the marker. + * @Default {6} + */ + width?: number; + } + + export interface CommonSeriesOptionsMarker { + + /** Options for customizing the border of the marker shape. + */ + border?: CommonSeriesOptionsMarkerBorder; + + /** Options for displaying and customizing data labels. + */ + dataLabel?: CommonSeriesOptionsMarkerDataLabel; + + /** Color of the marker shape. + * @Default {null} + */ + fill?: string; + + /** The URL for the Image to be displayed as marker. In order to display image as marker, set series.marker.shape as ‘image’. + */ + imageUrl?: string; + + /** Opacity of the marker. + * @Default {1} + */ + opacity?: number; + + /** Specifies the shape of the marker. + * @Default {circle. See Shape} + */ + shape?: ej.datavisualization.Chart.Shape|string; + + /** Options for customizing the size of the marker shape. + */ + size?: CommonSeriesOptionsMarkerSize; + + /** Controls the visibility of the marker shape. + * @Default {false} + */ + visible?: boolean; + } + + export interface CommonSeriesOptionsOutlierSettingsSize { + + /** Height of the outlier shape. + * @Default {6} + */ + height?: number; + + /** Width of the outlier shape. + * @Default {6} + */ + width?: number; + } + + export interface CommonSeriesOptionsOutlierSettings { + + /** Specifies the shape of the outlier. + * @Default {circle. See Shape} + */ + shape?: ej.datavisualization.Chart.Shape|string; + + /** Options for customizing the size of the outlier shape. + */ + size?: CommonSeriesOptionsOutlierSettingsSize; + } + + export interface CommonSeriesOptionsCornerRadius { + + /** Specifies the radius for the top left corner. + * @Default {0} + */ + topLeft?: number; + + /** Specifies the radius for the top right corner. + * @Default {0} + */ + topRight?: number; + + /** Specifies the radius for the bottom left corner. + * @Default {0} + */ + bottomLeft?: number; + + /** Specifies the radius for the bottom right corner. + * @Default {0} + */ + bottomRight?: number; + } + + export interface CommonSeriesOptionsTooltipBorder { + + /** Border color of the tooltip. + * @Default {null} + */ + color?: string; + + /** Border width of the tooltip. + * @Default {1} + */ + width?: number; + } + + export interface CommonSeriesOptionsTooltip { + + /** Options for customizing the border of the tooltip. + */ + border?: CommonSeriesOptionsTooltipBorder; + + /** Customize the corner radius of the tooltip rectangle. + * @Default {0} + */ + rx?: number; + + /** Customize the corner radius of the tooltip rectangle. + * @Default {0} + */ + ry?: number; + + /** Specifies the duration, the tooltip has to be displayed. + * @Default {500ms} + */ + duration?: string; + + /** Enables/disables the animation of the tooltip when moving from one point to other. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Background color of the tooltip. + * @Default {null} + */ + fill?: string; + + /** Format of the tooltip content. + * @Default {#point.x# : #point.y#} + */ + format?: string; + + /** Opacity of the tooltip. + * @Default {0.5} + */ + opacity?: number; + + /** Custom template to format the tooltip content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. + * @Default {null} + */ + template?: string; + + /** Controls the visibility of the tooltip. + * @Default {false} + */ + visible?: boolean; + } + + export interface CommonSeriesOptionsEmptyPointSettingsStyleBorder { + + /** Border color of the empty point. + */ + color?: string; + + /** Border width of the empty point. + * @Default {1} + */ + width?: number; + } + + export interface CommonSeriesOptionsEmptyPointSettingsStyle { + + /** Color of the empty point. + */ + color?: string; + + /** Options for customizing border of the empty point in the series. + */ + border?: CommonSeriesOptionsEmptyPointSettingsStyleBorder; + } + + export interface CommonSeriesOptionsEmptyPointSettings { + + /** Controls the visibility of the empty point. + * @Default {true} + */ + visible?: boolean; + + /** Specifies the mode of empty point. + * @Default {gap} + */ + displayMode?: ej.datavisualization.Chart.EmptyPointMode|string; + + /** Options for customizing the color and border of the empty point in the series. + */ + style?: CommonSeriesOptionsEmptyPointSettingsStyle; + } + + export interface CommonSeriesOptionsConnectorLine { + + /** Width of the connector line. + * @Default {1} + */ + width?: number; + + /** Color of the connector line. + * @Default {#565656} + */ + color?: string; + + /** DashArray of the connector line. + * @Default {null} + */ + dashArray?: string; + + /** DashArray of the connector line. + * @Default {1} + */ + opacity?: number; + } + + export interface CommonSeriesOptionsDragSettings { + + /** drag/drop the series + * @Default {false} + */ + enable?: boolean; + + /** Specifies the type of drag settings. + * @Default {xy} + */ + type?: string; + } + + export interface CommonSeriesOptionsErrorBarCap { + + /** Show/Hides the error bar cap. + * @Default {true} + */ + visible?: boolean; + + /** Width of the error bar cap. + * @Default {1} + */ + width?: number; + + /** Length of the error bar cap. + * @Default {1} + */ + length?: number; + + /** Color of the error bar cap. + * @Default {“#000000”} + */ + fill?: string; + } + + export interface CommonSeriesOptionsErrorBar { + + /** Show/hides the error bar + * @Default {visible} + */ + visibility?: boolean; + + /** Specifies the type of error bar. + * @Default {FixedValue} + */ + type?: ej.datavisualization.Chart.ErrorBarType|string; + + /** Specifies the mode of error bar. + * @Default {vertical} + */ + mode?: ej.datavisualization.Chart.ErrorBarMode|string; + + /** Specifies the direction of error bar. + * @Default {both} + */ + direction?: ej.datavisualization.Chart.ErrorBarDirection|string; + + /** Value of vertical error bar. + * @Default {3} + */ + verticalErrorValue?: number; + + /** Value of horizontal error bar. + * @Default {1} + */ + horizontalErrorValue?: number; + + /** Value of positive horizontal error bar. + * @Default {1} + */ + horizontalPositiveErrorValue?: number; + + /** Value of negative horizontal error bar. + * @Default {1} + */ + horizontalNegativeErrorValue?: number; + + /** Value of positive vertical error bar. + * @Default {5} + */ + verticalPositiveErrorValue?: number; + + /** Value of negative vertical error bar. + * @Default {5} + */ + verticalNegativeErrorValue?: number; + + /** Fill color of the error bar. + * @Default {#000000} + */ + fill?: string; + + /** Width of the error bar. + * @Default {1} + */ + width?: number; + + /** Options for customizing the error bar cap. + */ + cap?: CommonSeriesOptionsErrorBarCap; + } + + export interface CommonSeriesOptionsTrendlinesTooltipBorder { + + /** Border color of the trendline tooltip. + * @Default {null} + */ + color?: string; + + /** Border width of the trendline tooltip. + * @Default {1} + */ + width?: number; + } + + export interface CommonSeriesOptionsTrendlinesTooltip { + + /** Options for customizing the border of the trendline tooltip. + */ + border?: CommonSeriesOptionsTrendlinesTooltipBorder; + + /** Customize the corner radius of the trendline tooltip rectangle. + * @Default {0} + */ + rx?: number; + + /** Customize the corner radius of the trendline tooltip rectangle. + * @Default {0} + */ + ry?: number; + + /** Specifies the duration, the tooltip has to be displayed. + * @Default {500ms} + */ + duration?: string; + + /** Enables/disables the animation of the trendline tooltip when moving from one point to other. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Background color of the trendline tooltip. + * @Default {null} + */ + fill?: string; + + /** Format of the tooltip content displayed in the trendlines. + * @Default {#point.x# : #point.y#} + */ + format?: string; + + /** Opacity of the trendline tooltip. + * @Default {0.5} + */ + opacity?: number; + } + + export interface CommonSeriesOptionsTrendline { + + /** Show/hides the trendline. + */ + visibility?: boolean; + + /** Show/hides the trendline legend. + * @Default {visible} + */ + visibleOnLegend?: string; + + /** Specifies the type of the trendline for the series. + * @Default {linear. See TrendlinesType} + */ + type?: string; + + /** Name for the trendlines that is to be displayed in the legend text. + * @Default {trendline} + */ + name?: string; + + /** Fill color of the trendlines. + * @Default {#0000FF} + */ + fill?: string; + + /** Width of the trendlines. + * @Default {1} + */ + width?: number; + + /** Opacity of the trendline. + * @Default {1} + */ + opacity?: number; + + /** Pattern of dashes and gaps used to stroke the trendline. + */ + dashArray?: string; + + /** Future trends of the current series. + * @Default {0} + */ + forwardForecast?: number; + + /** Past trends of the current series. + * @Default {0} + */ + backwardForecast?: number; + + /** Specifies the order of the polynomial trendlines. + * @Default {0} + */ + polynomialOrder?: number; + + /** Specifies the moving average starting period value. + * @Default {2} + */ + period?: number; + + /** Options for customizing the tooltip of the trendlines in the chart. + */ + tooltip?: CommonSeriesOptionsTrendlinesTooltip; + + /** Specifies the intercept value of the trendlines. + * @Default {null} + */ + intercept?: number; + } + + export interface CommonSeriesOptionsHighlightSettingsBorder { + + /** Border color of the series/point on highlight. + */ + color?: string; + + /** Border width of the series/point on highlight. + * @Default {2} + */ + width?: string; + } + + export interface CommonSeriesOptionsHighlightSettings { + + /** Enables/disables the ability to highlight the series or data point interactively. + * @Default {false} + */ + enable?: boolean; + + /** Specifies whether the series or data point has to be highlighted. + * @Default {series. See Mode} + */ + mode?: ej.datavisualization.Chart.Mode|string; + + /** Color of the series/point on highlight. + */ + color?: string; + + /** Opacity of the series/point on highlight. + * @Default {0.6} + */ + opacity?: number; + + /** Options for customizing the border of series on highlight. + */ + border?: CommonSeriesOptionsHighlightSettingsBorder; + + /** Specifies the pattern for the series/point on highlight. + * @Default {none. See Pattern} + */ + pattern?: string; + + /** Custom pattern for the series on highlight. + */ + customPattern?: string; + } + + export interface CommonSeriesOptionsSelectionSettingsBorder { + + /** Border color of the series/point on selection. + */ + color?: string; + + /** Border width of the series/point on selection. + * @Default {2} + */ + width?: string; + } + + export interface CommonSeriesOptionsSelectionSettings { + + /** Enables/disables the ability to select a series/data point interactively. + * @Default {false} + */ + enable?: boolean; + + /** Specifies the type of selection. + * @Default {single} + */ + type?: ej.datavisualization.Chart.SelectionType|string; + + /** Specifies whether the series or data point has to be selected. + * @Default {series. See Mode} + */ + mode?: ej.datavisualization.Chart.Mode|string; + + /** Specifies the drawn rectangle type. + * @Default {xy} + */ + rangeType?: ej.datavisualization.Chart.RangeType|string; + + /** Color of the series/point on selection. + */ + color?: string; + + /** Opacity of the series/point on selection. + * @Default {0.6} + */ + opacity?: number; + + /** Options for customizing the border of the series on selection. + */ + border?: CommonSeriesOptionsSelectionSettingsBorder; + + /** Specifies the pattern for the series/point on selection. + * @Default {none. See Pattern} + */ + pattern?: string; + + /** Custom pattern for the series on selection. + */ + customPattern?: string; + } + + export interface CommonSeriesOptions { + + /** Options to customize the border of all the series. + */ + border?: CommonSeriesOptionsBorder; + + /** To render the column and bar type series in rectangle/cylinder shape. See + * @Default {rectangle} + */ + columnFacet?: ej.datavisualization.Chart.ColumnFacet|string; + + /** Relative width of the columns in column type series. Value ranges from 0 to 1. Width also depends upon columnSpacing property. + * @Default {0.7} + */ + columnWidth?: number; + + /** Spacing between columns of different series. Value ranges from 0 to 1 + * @Default {0} + */ + columnSpacing?: number; + + /** Enables or disables the visibility of legend item. + * @Default {visible} + */ + visibleOnLegend?: string; + + /** Group of the stacking collection series. + */ + stackingGroup?: string; + + /** Pattern of dashes and gaps used to stroke all the line type series. + */ + dashArray?: string; + + /** Set the dataSource for all series. It can be an array of JSON objects or an instance of ej.DataManager. + * @Default {null} + */ + dataSource?: any; + + /** Controls the size of the hole in doughnut series. Value ranges from 0 to 1 + * @Default {0.4} + */ + doughnutCoefficient?: number; + + /** Controls the size of the doughnut series. Value ranges from 0 to 1. + * @Default {0.8} + */ + doughnutSize?: number; + + /** Specifies the type of series to be drawn in radar or polar series. + * @Default {line. See DrawType} + */ + drawType?: ej.datavisualization.Chart.DrawType|string; + + /** Enable/disable the animation for all the series. + * @Default {true} + */ + enableAnimation?: boolean; + + /** To avoid overlapping of data labels smartly. + * @Default {true} + */ + enableSmartLabels?: boolean; + + /** Start angle of pie/doughnut series. + * @Default {null} + */ + endAngle?: number; + + /** Explodes the pie/doughnut slices on mouse move. + * @Default {false} + */ + explode?: boolean; + + /** Explodes all the slice of pie/doughnut on render. + * @Default {false} + */ + explodeAll?: boolean; + + /** Index of the point to be exploded from pie/doughnut/pyramid/funnel. + * @Default {null} + */ + explodeIndex?: number; + + /** Specifies the distance of the slice from the center, when it is exploded. + * @Default {0.4} + */ + explodeOffset?: number; + + /** Fill color for all the series. + * @Default {null} + */ + fill?: string; + + /** Options for customizing the font of all the series. + */ + font?: CommonSeriesOptionsFont; + + /** Sets the height of the funnel in funnel series. Values can be either pixel or percentage. + * @Default {32.7%} + */ + funnelHeight?: string; + + /** Sets the width of the funnel in funnel series. Values can be either pixel or percentage. + * @Default {11.6%} + */ + funnelWidth?: string; + + /** Gap between the slices in pyramid and funnel series. + * @Default {0} + */ + gapRatio?: number; + + /** Specifies whether to join start and end point of a line/area series used in polar/radar chart to form a closed path. + * @Default {true} + */ + isClosed?: boolean; + + /** Specifies whether to stack the column series in polar/radar charts. + * @Default {false} + */ + isStacking?: boolean; + + /** Renders the chart vertically. This is applicable only for Cartesian type series. + * @Default {false} + */ + isTransposed?: boolean; + + /** Render the x mark in the center of the box and whisker series type.x represents the average value of the box and whisker series. + * @Default {true} + */ + showMedian?: boolean; + + /** Position of the data label in pie/doughnut/pyramid/funnel series. OutsideExtended position is not applicable for pyramid/funnel. + * @Default {inside. See LabelPosition} + */ + labelPosition?: ej.datavisualization.Chart.LabelPosition|string; + + /** Specifies the mode for splitting the data points in pieOfPie series. + * @Default {value. See SplitMode} + */ + splitMode?: ej.datavisualization.Chart.SplitMode|string; + + /** Quartile calculation has been performed in three different formulas to render the box and whisker series. + * @Default {exclusive} + */ + boxPlotMode?: ej.datavisualization.Chart.boxPlotMode|string; + + /** Options for customizing the bubble options of the Bubble series + */ + bubbleOptions?: CommonSeriesOptionsBubbleOptions; + + /** Specifies the line cap of the series. + * @Default {butt. See LineCap} + */ + lineCap?: ej.datavisualization.Chart.LineCap|string; + + /** Specifies the type of shape to be used where two lines meet. + * @Default {round. See LineJoin} + */ + lineJoin?: ej.datavisualization.Chart.LineJoin|string; + + /** Options for displaying and customizing marker for individual point in a series. Marker contains shapes and/or data labels. + */ + marker?: CommonSeriesOptionsMarker; + + /** Opacity of the series. + * @Default {1} + */ + opacity?: number; + + /** Options for customizing the outlier of the series. + */ + outlierSettings?: CommonSeriesOptionsOutlierSettings; + + /** Name of a field in data source, where the fill color for all the data points is generated. + */ + palette?: string; + + /** Controls the size of pie series. Value ranges from 0 to 1. + * @Default {0.8} + */ + pieCoefficient?: number; + + /** Controls the size of the second pie in pieOfPie series. Value ranges from 0 to 1. + * @Default {0.6} + */ + pieOfPieCoefficient?: number; + + /** Split Value of pieofpie series. + * @Default {null} + */ + splitValue?: string; + + /** Distance between the two pie's in pieOfPie series. + * @Default {50} + */ + gapWidth?: number; + + /** Name of the property in the datasource that contains fill color for the series. + * @Default {null} + */ + pointColorMappingName?: string; + + /** Specifies the mode of the pyramid series. + * @Default {linear. See PyramidMode} + */ + pyramidMode?: ej.datavisualization.Chart.PyramidMode|string; + + /** Start angle from where the pie/doughnut series renders. By default it starts from 0. + * @Default {null} + */ + startAngle?: number; + + /** Options for customizing the corner radius. cornerRadius property also takes the numeric input and applies it for all the four corners of the column. + */ + cornerRadius?: CommonSeriesOptionsCornerRadius; + + /** Options for customizing the tooltip of chart. + */ + tooltip?: CommonSeriesOptionsTooltip; + + /** Specifies the type of the series to render in chart. + * @Default {column. See Type} + */ + type?: ej.datavisualization.Chart.Type|string; + + /** Specifies the name of the x-axis that has to be associated with this series. Add an axis instance with this name to axes collection. + * @Default {null} + */ + xAxisName?: string; + + /** Name of the property in the datasource that contains x value for the series. + * @Default {null} + */ + xName?: string; + + /** Specifies the name of the y-axis that has to be associated with this series. Add an axis instance with this name to axes collection. + * @Default {null} + */ + yAxisName?: string; + + /** Name of the property in the datasource that contains y value for the series. + * @Default {null} + */ + yName?: string; + + /** Name of the property in the datasource that contains high value for the series. + * @Default {null} + */ + high?: string; + + /** Name of the property in the datasource that contains low value for the series. + * @Default {null} + */ + low?: string; + + /** Name of the property in the datasource that contains open value for the series. + * @Default {null} + */ + open?: string; + + /** Name of the property in the datasource that contains close value for the series. + * @Default {null} + */ + close?: string; + + /** Z-order of the series. + * @Default {0} + */ + zOrder?: number; + + /** Name of the property in the datasource that contains the size value for the bubble series. + * @Default {null} + */ + size?: string; + + /** Options for customizing the empty point in the series. + */ + emptyPointSettings?: CommonSeriesOptionsEmptyPointSettings; + + /** Fill color for the positive column of the waterfall. + * @Default {null} + */ + positiveFill?: string; + + /** Options for customizing the waterfall connector line. + */ + connectorLine?: CommonSeriesOptionsConnectorLine; + + /** Options to customize the drag and drop in series. + */ + dragSettings?: CommonSeriesOptionsDragSettings; + + /** Options to customize the error bar in series. + */ + errorBar?: CommonSeriesOptionsErrorBar; + + /** Option to add the trendlines to chart. + */ + trendlines?: CommonSeriesOptionsTrendline[]; + + /** Options for customizing the appearance of the series or data point while highlighting. + */ + highlightSettings?: CommonSeriesOptionsHighlightSettings; + + /** Options for customizing the appearance of the series/data point on selection. + */ + selectionSettings?: CommonSeriesOptionsSelectionSettings; + } + + export interface CrosshairTrackballTooltipSettingsBorder { + + /** Border width of the trackball tooltip. + * @Default {null} + */ + width?: number; + + /** Border color of the trackball tooltip. + * @Default {null} + */ + color?: string; + } + + export interface CrosshairTrackballTooltipSettings { + + /** Options for customizing the trackball tooltip border. + */ + border?: CrosshairTrackballTooltipSettingsBorder; + + /** Background color of the trackball tooltip. + * @Default {null} + */ + fill?: string; + + /** Rounded corner x value of the trackball tooltip. + * @Default {3} + */ + rx?: number; + + /** Rounded corner y value of the trackball tooltip. + * @Default {3} + */ + ry?: number; + + /** Opacity value of the trackball tooltip. + * @Default {1} + */ + opacity?: number; + + /** Specifies the mode of the trackball tooltip. + * @Default {float. See CrosshairMode} + */ + mode?: ej.datavisualization.Chart.CrosshairMode|string; + } + + export interface CrosshairMarkerBorder { + + /** Border width of the marker. + * @Default {3} + */ + width?: number; + } + + export interface CrosshairMarkerSize { + + /** Height of the marker. + * @Default {10} + */ + height?: number; + + /** Width of the marker. + * @Default {10} + */ + width?: number; + } + + export interface CrosshairMarker { + + /** Options for customizing the border. + */ + border?: CrosshairMarkerBorder; + + /** Opacity of the marker. + * @Default {true} + */ + opacity?: boolean; + + /** Options for customizing the size of the marker. + */ + size?: CrosshairMarkerSize; + + /** Show/hides the marker. + * @Default {true} + */ + visible?: boolean; + } + + export interface CrosshairLine { + + /** Color of the crosshair line. + * @Default {transparent} + */ + color?: string; + + /** Width of the crosshair line. + * @Default {1} + */ + width?: number; + } + + export interface Crosshair { + + /** Options for customizing the trackball tooltip. + */ + trackballTooltipSettings?: CrosshairTrackballTooltipSettings; + + /** Options for customizing the marker in crosshair. + */ + marker?: CrosshairMarker; + + /** Options for customizing the crosshair line. + */ + line?: CrosshairLine; + + /** Specifies the type of the crosshair. It can be trackball or crosshair + * @Default {crosshair. See CrosshairType} + */ + type?: ej.datavisualization.Chart.CrosshairType|string; + + /** Show/hides the crosshair/trackball visibility. + * @Default {false} + */ + visible?: boolean; + } + + export interface IndicatorsHistogramBorder { + + /** Color of the histogram border in MACD indicator. + * @Default {#9999ff} + */ + color?: string; + + /** Controls the width of histogram border line in MACD indicator. + * @Default {1} + */ + width?: number; + } + + export interface IndicatorsHistogram { + + /** Options to customize the histogram border in MACD indicator. + */ + border?: IndicatorsHistogramBorder; + + /** Color of histogram columns in MACD indicator. + * @Default {#ccccff} + */ + fill?: string; + + /** Opacity of histogram columns in MACD indicator. + * @Default {1} + */ + opacity?: number; + } + + export interface IndicatorsLowerLine { + + /** Color of lower line. + * @Default {#008000} + */ + fill?: string; + + /** Width of the lower line. + * @Default {2} + */ + width?: number; + } + + export interface IndicatorsMacdLine { + + /** Color of MACD line. + * @Default {#ff9933} + */ + fill?: string; + + /** Width of the MACD line. + * @Default {2} + */ + width?: number; + } + + export interface IndicatorsPeriodLine { + + /** Color of period line in indicator. + * @Default {blue} + */ + fill?: string; + + /** Width of the period line in indicators. + * @Default {2} + */ + width?: number; + } + + export interface IndicatorsTooltipBorder { + + /** Border color of indicator tooltip. + * @Default {null} + */ + color?: string; + + /** Border width of indicator tooltip. + * @Default {1} + */ + width?: number; + } + + export interface IndicatorsTooltip { + + /** Option to customize the border of indicator tooltip. + */ + border?: IndicatorsTooltipBorder; + + /** Specifies the animation duration of indicator tooltip. + * @Default {500ms} + */ + duration?: string; + + /** Enables/disables the tooltip animation. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Format of indicator tooltip. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. + * @Default {#point.x# : #point.y#} + */ + format?: string; + + /** Background color of indicator tooltip. + * @Default {null} + */ + fill?: string; + + /** Opacity of indicator tooltip. + * @Default {0.95} + */ + opacity?: number; + + /** Controls the visibility of indicator tooltip. + * @Default {false} + */ + visible?: boolean; + } + + export interface IndicatorsUpperLine { + + /** Fill color of the upper line in indicators + * @Default {#ff9933} + */ + fill?: string; + + /** Width of the upper line in indicators. + * @Default {2} + */ + width?: number; + } + + export interface Indicator { + + /** The dPeriod value for stochastic indicator. + * @Default {3} + */ + dPeriod?: number; + + /** Enables/disables the animation. + * @Default {false} + */ + enableAnimation?: boolean; + + /** Color of the technical indicator. + * @Default {#00008B} + */ + fill?: string; + + /** Options to customize the histogram in MACD indicator. + */ + histogram?: IndicatorsHistogram; + + /** Specifies the k period in stochastic indicator. + * @Default {3} + */ + kPeriod?: number; + + /** Specifies the long period in MACD indicator. + * @Default {26} + */ + longPeriod?: number; + + /** Options to customize the lower line in indicators. + */ + lowerLine?: IndicatorsLowerLine; + + /** Options to customize the MACD line. + */ + macdLine?: IndicatorsMacdLine; + + /** Specifies the type of the MACD indicator. + * @Default {line. See MACDType} + */ + macdType?: string; + + /** Specifies period value in indicator. + * @Default {14} + */ + period?: number; + + /** Options to customize the period line in indicators. + */ + periodLine?: IndicatorsPeriodLine; + + /** Name of the series for which indicator has to be drawn. + */ + seriesName?: string; + + /** Specifies the short period in MACD indicator. + * @Default {13} + */ + shortPeriod?: number; + + /** Specifies the standard deviation value for Bollinger band indicator. + * @Default {2} + */ + standardDeviations?: number; + + /** Options to customize the tooltip. + */ + tooltip?: IndicatorsTooltip; + + /** Trigger value of MACD indicator. + * @Default {9} + */ + trigger?: number; + + /** Specifies the visibility of indicator. + * @Default {visible} + */ + visibility?: string; + + /** Specifies the type of indicator that has to be rendered. + * @Default {sma. See IndicatorsType} + */ + type?: string; + + /** Options to customize the upper line in indicators + */ + upperLine?: IndicatorsUpperLine; + + /** Width of the indicator line. + * @Default {2} + */ + width?: number; + + /** Name of the horizontal axis used for indicator. Primary X axis is used when x axis name is not specified. + */ + xAxisName?: string; + + /** Name of the vertical axis used for indicator. Primary Y axis is used when y axis name is not specified + */ + yAxisName?: string; + } + + export interface LegendBorder { + + /** Border color of the legend. + * @Default {transparent} + */ + color?: string; + + /** Border width of the legend. + * @Default {1} + */ + width?: number; + } + + export interface LegendFont { + + /** Font family for legend item text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for legend item text. + * @Default {Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight for legend item text. + * @Default {Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Font size for legend item text. + * @Default {12px} + */ + size?: string; + } + + export interface LegendItemStyleBorder { + + /** Border color of the legend items. + * @Default {transparent} + */ + color?: string; + + /** Border width of the legend items. + * @Default {1} + */ + width?: number; + } + + export interface LegendItemStyle { + + /** Options for customizing the border of legend items. + */ + border?: LegendItemStyleBorder; + + /** Height of the shape in legend items. + * @Default {10} + */ + height?: number; + + /** Width of the shape in legend items. + * @Default {10} + */ + width?: number; + } + + export interface LegendLocation { + + /** X value or horizontal offset to position the legend in chart. + * @Default {0} + */ + x?: number; + + /** Y value or vertical offset to position the legend. + * @Default {0} + */ + y?: number; + } + + export interface LegendSize { + + /** Height of the legend. Height can be specified in either pixel or percentage. + * @Default {null} + */ + height?: string; + + /** Width of the legend. Width can be specified in either pixel or percentage. + * @Default {null} + */ + width?: string; + } + + export interface LegendTitleFont { + + /** Font family for the text in legend title. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for legend title. + * @Default {normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight for legend title. + * @Default {normal. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Font size for legend title. + * @Default {12px} + */ + size?: string; + } + + export interface LegendTitle { + + /** Options to customize the font used for legend title + */ + font?: LegendTitleFont; + + /** Text to be displayed in legend title. + */ + text?: string; + + /** Alignment of the legend title. + * @Default {center. See Alignment} + */ + textAlignment?: ej.datavisualization.Chart.Alignment|string; + } + + export interface Legend { + + /** Horizontal alignment of the legend. + * @Default {Center. See Alignment} + */ + alignment?: ej.datavisualization.Chart.Alignment|string; + + /** Background for the legend. Use this property to add a background image or background color for the legend. + */ + background?: string; + + /** Options for customizing the legend border. + */ + border?: LegendBorder; + + /** Number of columns to arrange the legend items. + * @Default {null} + */ + columnCount?: number; + + /** Controls whether legend has to use scrollbar or not. When enabled, scroll bar appears depending upon size and position properties of legend. + * @Default {true} + */ + enableScrollbar?: boolean; + + /** Fill color for the legend items. By using this property, it displays all legend item shapes in same color.Legend items representing invisible series is displayed in gray color. + * @Default {null} + */ + fill?: string; + + /** Options to customize the font used for legend item text. + */ + font?: LegendFont; + + /** Gap or padding between the legend items. + * @Default {10} + */ + itemPadding?: number; + + /** Options to customize the style of legend items. + */ + itemStyle?: LegendItemStyle; + + /** Options to customize the location of chart legend. Legend is placed in provided location only when value of position property is custom + */ + location?: LegendLocation; + + /** Opacity of the legend. + * @Default {1} + */ + opacity?: number; + + /** Places the legend at specified position. Legend can be placed at **left**, **right**, **top** or **bottom** of the chart area. To manually specify the location of legend, set + * **custom** as value to this property. + * @Default {Bottom. See Position} + */ + position?: ej.datavisualization.Chart.Position|string; + + /** Number of rows to arrange the legend items. + * @Default {null} + */ + rowCount?: number; + + /** Shape of the legend items. Default shape for pie and doughnut series is circle and all other series uses rectangle. + * @Default {None. See Shape} + */ + shape?: ej.datavisualization.Chart.Shape|string; + + /** Options to customize the size of the legend. + */ + size?: LegendSize; + + /** Options to customize the legend title. + */ + title?: LegendTitle; + + /** Specifies the action taken when the legend width is more than the textWidth. + * @Default {none. See textOverflow} + */ + textOverflow?: ej.datavisualization.Chart.TextOverflow|string; + + /** Text width for legend item. + * @Default {34} + */ + textWidth?: number; + + /** Controls the visibility of the legend. + * @Default {true} + */ + visible?: boolean; + + /** Controls the selection through the legend. + * @Default {true} + */ + toggleSeriesVisibility?: boolean; + } + + export interface PrimaryXAxisAlternateGridBandEven { + + /** Fill color for the even grid bands. + * @Default {transparent} + */ + fill?: string; + + /** Opacity of the even grid band. + * @Default {1} + */ + opacity?: number; + } + + export interface PrimaryXAxisAlternateGridBandOdd { + + /** Fill color of the odd grid bands + * @Default {transparent} + */ + fill?: string; + + /** Opacity of odd grid band + * @Default {1} + */ + opacity?: number; + } + + export interface PrimaryXAxisAlternateGridBand { + + /** Options for customizing even grid band. + */ + even?: PrimaryXAxisAlternateGridBandEven; + + /** Options for customizing odd grid band. + */ + odd?: PrimaryXAxisAlternateGridBandOdd; + } + + export interface PrimaryXAxisAxisLine { + + /** Pattern of dashes and gaps to be applied to the axis line. + * @Default {null} + */ + dashArray?: string; + + /** Padding for axis line. Normally, it is used along with plotOffset to pad the plot area. + * @Default {null} + */ + offset?: number; + + /** Show/hides the axis line. + * @Default {true} + */ + visible?: boolean; + + /** Default Value + */ + color?: string; + + /** Width of axis line. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryXAxisCrosshairLabel { + + /** Show/hides the crosshair label associated with this axis. + * @Default {false} + */ + visible?: boolean; + } + + export interface PrimaryXAxisFont { + + /** Font family of labels. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of labels. + * @Default {ej.datavisualization.Chart.FontStyle.Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the label. + * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the axis labels. + * @Default {1} + */ + opacity?: number; + + /** Font size of the axis labels. + * @Default {13px} + */ + size?: string; + } + + export interface PrimaryXAxisMajorGridLines { + + /** Pattern of dashes and gaps used to stroke the major grid lines. + * @Default {null} + */ + dashArray?: string; + + /** Color of the major grid line. + * @Default {null} + */ + color?: string; + + /** Opacity of major grid lines. + * @Default {1} + */ + opacity?: number; + + /** Show/hides the major grid lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the major grid lines. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryXAxisMajorTickLines { + + /** Length of the major tick lines. + * @Default {5} + */ + size?: number; + + /** Show/hides the major tick lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the major tick lines. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryXAxisMinorGridLines { + + /** Patterns of dashes and gaps used to stroke the minor grid lines. + * @Default {null} + */ + dashArray?: string; + + /** Show/hides the minor grid lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the minorGridLines. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryXAxisMinorTickLines { + + /** Length of the minor tick lines. + * @Default {5} + */ + size?: number; + + /** Show/hides the minor tick lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the minor tick line. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryXAxisRange { + + /** Minimum value of the axis range. + * @Default {null} + */ + min?: number; + + /** Maximum value of the axis range. + * @Default {null} + */ + max?: number; + + /** Interval of the axis range. + * @Default {null} + */ + interval?: number; + } + + export interface PrimaryXAxisMultiLevelLabelsFont { + + /** Font color of the multi level labels text. + * @Default {null} + */ + color?: string; + + /** Font family of the multi level labels text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the multi level labels text. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the multi level label text. + * @Default {regular} + */ + fontWeight?: string; + + /** Opacity of the multi level label text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the multi level label text. + * @Default {12px} + */ + size?: string; + } + + export interface PrimaryXAxisMultiLevelLabelsBorder { + + /** Border color of the multi level labels. + * @Default {null} + */ + color?: string; + + /** Border width of the multi level labels. + * @Default {1} + */ + width?: number; + + /** Border type of the multi level labels. + * @Default {rectangle. See Type} + */ + type?: ej.datavisualization.Chart.MultiLevelLabelsBorderType|string; + } + + export interface PrimaryXAxisMultiLevelLabel { + + /** Visibility of the multi level labels. + * @Default {false} + */ + visible?: boolean; + + /** Text of the multi level labels. + */ + text?: string; + + /** Starting value of the multi level labels. + * @Default {null} + */ + start?: number; + + /** Ending value of the multi level labels. + * @Default {null} + */ + end?: number; + + /** Specifies the level of multi level labels. + * @Default {0} + */ + level?: number; + + /** Specifies the maximum width of the text in multi level labels. + * @Default {null} + */ + maximumTextWidth?: number; + + /** Specifies the alignment of the text in multi level labels. + * @Default {center. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Chart.TextAlignment|string; + + /** Specifies the handling of text over flow in multi level labels. + * @Default {center. See TextOverflow} + */ + textOverflow?: ej.datavisualization.Chart.TextOverflow|string; + + /** Options for customizing the font of the text. + */ + font?: PrimaryXAxisMultiLevelLabelsFont; + + /** Options for customizing the border of the series. + */ + border?: PrimaryXAxisMultiLevelLabelsBorder; + } + + export interface PrimaryXAxisStripLineFont { + + /** Font color of the strip line text. + * @Default {black} + */ + color?: string; + + /** Font family of the strip line text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the strip line text. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the strip line text. + * @Default {regular} + */ + fontWeight?: string; + + /** Opacity of the strip line text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the strip line text. + * @Default {12px} + */ + size?: string; + } + + export interface PrimaryXAxisStripLine { + + /** Border color of the strip line. + * @Default {gray} + */ + borderColor?: string; + + /** Background color of the strip line. + * @Default {gray} + */ + color?: string; + + /** End value of the strip line. + * @Default {null} + */ + end?: number; + + /** Options for customizing the font of the text. + */ + font?: PrimaryXAxisStripLineFont; + + /** Start value of the strip line. + * @Default {null} + */ + start?: number; + + /** Indicates whether to render the strip line from the minimum/start value of the axis. This property does not work when start property is set. + * @Default {false} + */ + startFromAxis?: boolean; + + /** Specifies text to be displayed inside the strip line. + * @Default {stripLine} + */ + text?: string; + + /** Specifies the alignment of the text inside the strip line. + * @Default {middlecenter. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Chart.TextAlignment|string; + + /** Show/hides the strip line. + * @Default {false} + */ + visible?: boolean; + + /** Width of the strip line. + * @Default {0} + */ + width?: number; + + /** Specifies the order where the strip line and the series have to be rendered. When Z-order is “behind”, strip line is rendered under the series and when it is “over”, it is + * rendered above the series. + * @Default {over. See ZIndex} + */ + zIndex?: ej.datavisualization.Chart.ZIndex|string; + } + + export interface PrimaryXAxisLabelBorder { + + /** Specifies the color of the label border. + * @Default {null} + */ + color?: string; + + /** Specifies the width of the label border. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryXAxisTitleFont { + + /** Font family of the title text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the title text. + * @Default {ej.datavisualization.Chart.FontStyle.Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the title text. + * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the axis title text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the axis title. + * @Default {16px} + */ + size?: string; + } + + export interface PrimaryXAxisTitle { + + /** Specifies whether to trim the axis title when it exceeds the chart area or the maximum width of the title. + * @Default {false} + */ + enableTrim?: boolean; + + /** Options for customizing the title font. + */ + font?: PrimaryXAxisTitleFont; + + /** Maximum width of the title, when the title exceeds this width, the title gets trimmed, when enableTrim is true. + * @Default {34} + */ + maximumTitleWidth?: number; + + /** Title for the axis. + */ + text?: string; + + /** Controls the visibility of axis title. + * @Default {true} + */ + visible?: boolean; + + /** offset value for axis title. + * @Default {0} + */ + offset?: number; + + /** Specifies the position of the axis title. + * @Default {outside. See Position} + */ + position?: ej.datavisualization.Chart.LabelPosition|string; + + /** Specifies the position of the axis title. + * @Default {center. See Alignment} + */ + alignment?: ej.datavisualization.Chart.TextAlignment|string; + } + + export interface PrimaryXAxisScrollbarSettingsRange { + + /** Minimum value of the scrollbar range. + * @Default {null} + */ + min?: number; + + /** Maximum value for the scrollbar range . + * @Default {null} + */ + max?: number; + } + + export interface PrimaryXAxisScrollbarSettings { + + /** Specifies to enables or disables the scroll bar. + * @Default {false} + */ + visible?: boolean; + + /** Controls whether scrollbar has to be responsive in the chart. + * @Default {false} + */ + canResize?: boolean; + + /** Options to customize the range for the scrollbar in the axis. + */ + range?: PrimaryXAxisScrollbarSettingsRange; + + /** The maximum number of points to be displayed in the scrollbar. + * @Default {null} + */ + pointsLength?: number; + } + + export interface PrimaryXAxis { + + /** Options for customizing horizontal axis alternate grid band. + */ + alternateGridBand?: PrimaryXAxisAlternateGridBand; + + /** Specifies where horizontal axis should intersect the vertical axis or vice versa. Value should be provided in axis co-ordinates. If provided value is greater than the maximum + * value of crossing axis, then axis will be placed at the opposite side. + * @Default {null} + */ + crossesAt?: number; + + /** Name of the axis used for crossing. Vertical axis name should be provided for horizontal axis and vice versa. If the provided name does not belongs to a valid axis, then primary X + * axis or primary Y axis will be used for crossing + * @Default {null} + */ + crossesInAxis?: string; + + /** Category axis can also plot points based on index value of data points. Index based plotting can be enabled by setting ‘isIndexed’ property to true. + * @Default {false} + */ + isIndexed?: boolean; + + /** Specifies the interval of the axis according to the zoomed data of the chart. + * @Default {true} + */ + enableAutoIntervalOnZooming?: boolean; + + /** Options for customizing the axis line. + */ + axisLine?: PrimaryXAxisAxisLine; + + /** Specifies the index of the column where the axis is associated, when the chart area is divided into multiple plot areas by using columnDefinitions. + * @Default {null} + */ + columnIndex?: number; + + /** Specifies the number of columns or plot areas an axis has to span horizontally. + * @Default {null} + */ + columnSpan?: number; + + /** Options to customize the crosshair label. + */ + crosshairLabel?: PrimaryXAxisCrosshairLabel; + + /** With this setting, you can request axis to calculate intervals approximately equal to your desired interval. + * @Default {null} + */ + desiredIntervals?: number; + + /** Specifies the placement of labels. + * @Default {ej.datavisualization.Chart.LabelPlacement.BetweenTicks. See LabelPlacement} + */ + labelPlacement?: ej.datavisualization.Chart.LabelPlacement|string; + + /** Specifies the position of labels at the edge of the axis. + * @Default {ej.datavisualization.Chart.EdgeLabelPlacement.None. See EdgeLabelPlacement} + */ + edgeLabelPlacement?: ej.datavisualization.Chart.EdgeLabelPlacement|string; + + /** Specifies whether to trim the axis label when the width of the label exceeds the maximumLabelWidth. + * @Default {false} + */ + enableTrim?: boolean; + + /** Options for customizing the font of the axis Labels. + */ + font?: PrimaryXAxisFont; + + /** Specifies the type of interval in date time axis. + * @Default {null. See IntervalType} + */ + intervalType?: ej.datavisualization.Chart.IntervalType|string; + + /** Specifies whether to inverse the axis. + * @Default {false} + */ + isInversed?: boolean; + + /** Custom formatting for axis label and supports all standard formatting type of numerical and date time values. + * @Default {null} + */ + labelFormat?: string; + + /** Specifies the action to take when the axis labels are overlapping with each other. + * @Default {ej.datavisualization.Chart.LabelIntersectAction.None. See LabelIntersectAction} + */ + labelIntersectAction?: ej.datavisualization.Chart.LabelIntersectAction|string; + + /** Specifies the position of the axis labels. + * @Default {outside. See LabelPosition} + */ + labelPosition?: ej.datavisualization.Chart.LabelPosition|string; + + /** Specifies the position of the axis labels. + * @Default {center. See Alignment} + */ + alignment?: ej.datavisualization.Chart.LabelAlignment|string; + + /** Angle in degrees to rotate the axis labels. + * @Default {null} + */ + labelRotation?: number; + + /** Logarithmic base value. This is applicable only for logarithmic axis. + * @Default {10} + */ + logBase?: number; + + /** Options for customizing major gird lines. + */ + majorGridLines?: PrimaryXAxisMajorGridLines; + + /** Options for customizing the major tick lines. + */ + majorTickLines?: PrimaryXAxisMajorTickLines; + + /** Maximum number of labels to be displayed in every 100 pixels. + * @Default {3} + */ + maximumLabels?: number; + + /** Maximum width of the axis label. When the label exceeds the width, the label gets trimmed when the enableTrim is set to true. + * @Default {34} + */ + maximumLabelWidth?: number; + + /** Options for customizing the minor grid lines. + */ + minorGridLines?: PrimaryXAxisMinorGridLines; + + /** Options for customizing the minor tick lines. + */ + minorTickLines?: PrimaryXAxisMinorTickLines; + + /** Specifies the number of minor ticks per interval. + * @Default {null} + */ + minorTicksPerInterval?: number; + + /** Unique name of the axis. To associate an axis with the series, you have to set this name to the xAxisName/yAxisName property of the series. + * @Default {null} + */ + name?: string; + + /** Specifies whether to render the axis at the opposite side of its default position. + * @Default {false} + */ + opposedPosition?: boolean; + + /** Specifies the orientation of the axis line + * @Default {Horizontal} + */ + orientation?: ej.datavisualization.Chart.AxisOrientation|string; + + /** Specifies the padding for the plot area. + * @Default {10} + */ + plotOffset?: number; + + /** Options to customize the range of the axis. + */ + range?: PrimaryXAxisRange; + + /** Specifies the padding for the axis range. + * @Default {None. See RangePadding} + */ + rangePadding?: ej.datavisualization.Chart.RangePadding|string; + + /** Rounds the number to the given number of decimals. + * @Default {null} + */ + roundingPlaces?: number; + + /** Options for customizing the multi level labels. + * @Default {[ ]} + */ + multiLevelLabels?: PrimaryXAxisMultiLevelLabel[]; + + /** Specifies whether the axis elements need to be placed nearby the axis line, while crossing. + * @Default {true} + */ + showNextToAxisLine?: boolean; + + /** Options for customizing the strip lines. + * @Default {[ ]} + */ + stripLine?: PrimaryXAxisStripLine[]; + + /** Specifies the position of the axis tick lines. + * @Default {outside. See TickLinesPosition} + */ + tickLinesPosition?: ej.datavisualization.Chart.TickLinesPosition|string; + + /** Options for customizing the border of the labels. + */ + labelBorder?: PrimaryXAxisLabelBorder; + + /** Options for customizing the axis title. + */ + title?: PrimaryXAxisTitle; + + /** Specifies the type of data the axis is handling. + * @Default {null. See ValueType} + */ + valueType?: ej.datavisualization.Chart.ValueType|string; + + /** Show/hides the axis. + * @Default {true} + */ + visible?: boolean; + + /** The axis is scaled by this factor. When zoomFactor is 0.5, the chart is scaled by 200% along this axis. Value ranges from 0 to 1. + * @Default {1} + */ + zoomFactor?: number; + + /** Position of the zoomed axis. Value ranges from 0 to 1. + * @Default {0} + */ + zoomPosition?: number; + + /** Options for customizing the axis scrollbar + */ + scrollbarSettings?: PrimaryXAxisScrollbarSettings; + } + + export interface AxesAlternateGridBandEven { + + /** Fill color for the even grid bands. + * @Default {transparent} + */ + fill?: string; + + /** Opacity of the even grid band. + * @Default {1} + */ + opacity?: number; + } + + export interface AxesAlternateGridBandOdd { + + /** Fill color of the odd grid bands + * @Default {transparent} + */ + fill?: string; + + /** Opacity of odd grid band + * @Default {1} + */ + opacity?: number; + } + + export interface AxesAlternateGridBand { + + /** Options for customizing even grid band. + */ + even?: AxesAlternateGridBandEven; + + /** Options for customizing odd grid band. + */ + odd?: AxesAlternateGridBandOdd; + } + + export interface AxesAxisLine { + + /** Pattern of dashes and gaps to be applied to the axis line. + * @Default {null} + */ + dashArray?: string; + + /** Padding for axis line. Normally, it is used along with plotOffset to pad the plot area. + * @Default {null} + */ + offset?: number; + + /** Show/hides the axis line. + * @Default {true} + */ + visible?: boolean; + + /** Color of axis line. + */ + color?: string; + + /** Width of axis line. + * @Default {1} + */ + width?: number; + } + + export interface AxesCrosshairLabel { + + /** Show/hides the crosshair label associated with this axis. + * @Default {false} + */ + visible?: boolean; + } + + export interface AxesFont { + + /** Font family of labels. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of labels. + * @Default {ej.datavisualization.Chart.FontStyle.Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the label. + * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the axis labels. + * @Default {1} + */ + opacity?: number; + + /** Font size of the axis labels. + * @Default {13px} + */ + size?: string; + } + + export interface AxesMajorGridLines { + + /** Pattern of dashes and gaps used to stroke the major grid lines. + * @Default {null} + */ + dashArray?: string; + + /** Color of the major grid line. + * @Default {null} + */ + color?: string; + + /** Opacity of major grid lines. + * @Default {1} + */ + opacity?: number; + + /** Show/hides the major grid lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the major grid lines. + * @Default {1} + */ + width?: number; + } + + export interface AxesMajorTickLines { + + /** Length of the major tick lines. + * @Default {5} + */ + size?: number; + + /** Show/hides the major tick lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the major tick lines. + * @Default {1} + */ + width?: number; + } + + export interface AxesMinorGridLines { + + /** Patterns of dashes and gaps used to stroke the minor grid lines. + * @Default {null} + */ + dashArray?: string; + + /** Show/hides the minor grid lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the minorGridLines. + * @Default {1} + */ + width?: number; + } + + export interface AxesMinorTickLines { + + /** Length of the minor tick lines. + * @Default {5} + */ + size?: number; + + /** Show/hides the minor tick lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the minor tick line. + * @Default {1} + */ + width?: number; + } + + export interface AxesRange { + + /** Minimum value of the axis range. + * @Default {null} + */ + min?: number; + + /** Maximum value of the axis range. + * @Default {null} + */ + max?: number; + + /** Interval of the axis range. + * @Default {null} + */ + interval?: number; + } + + export interface AxesMultiLevelLabelsFont { + + /** Font color of the multi level labels text. + * @Default {null} + */ + color?: string; + + /** Font family of the multi level labels text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the multi level labels text. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the multi level label text. + * @Default {regular} + */ + fontWeight?: string; + + /** Opacity of the multi level label text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the multi level label text. + * @Default {12px} + */ + size?: string; + } + + export interface AxesMultiLevelLabelsBorder { + + /** Border color of the multi level labels. + * @Default {null} + */ + color?: string; + + /** Border width of the multi level labels. + * @Default {1} + */ + width?: number; + + /** Border type of the multi level labels. + * @Default {rectangle. See Type} + */ + type?: ej.datavisualization.Chart.MultiLevelLabelsBorderType|string; + } + + export interface AxesMultiLevelLabel { + + /** Visibility of the multi level labels. + * @Default {false} + */ + visible?: boolean; + + /** Text of the multi level labels. + */ + text?: string; + + /** Starting value of the multi level labels. + * @Default {null} + */ + start?: number; + + /** Ending value of the multi level labels. + * @Default {null} + */ + end?: number; + + /** Specifies the level of multi level labels. + * @Default {0} + */ + level?: number; + + /** Specifies the maximum width of the text in multi level labels. + * @Default {null} + */ + maximumTextWidth?: number; + + /** Specifies the alignment of the text in multi level labels. + * @Default {center. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Chart.TextAlignment|string; + + /** Specifies the handling of text over flow in multi level labels. + * @Default {center. See TextOverflow} + */ + textOverflow?: ej.datavisualization.Chart.TextOverflow|string; + + /** Options for customizing the font of the text. + */ + font?: AxesMultiLevelLabelsFont; + + /** Options for customizing the border of the series. + */ + border?: AxesMultiLevelLabelsBorder; + } + + export interface AxesStripLineFont { + + /** Font color of the strip line text. + * @Default {black} + */ + color?: string; + + /** Font family of the strip line text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the strip line text. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the strip line text. + * @Default {regular} + */ + fontWeight?: string; + + /** Opacity of the strip line text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the strip line text. + * @Default {12px} + */ + size?: string; + } + + export interface AxesStripLine { + + /** Border color of the strip line. + * @Default {gray} + */ + borderColor?: string; + + /** Background color of the strip line. + * @Default {gray} + */ + color?: string; + + /** End value of the strip line. + * @Default {null} + */ + end?: number; + + /** Options for customizing the font of the text. + */ + font?: AxesStripLineFont; + + /** Start value of the strip line. + * @Default {null} + */ + start?: number; + + /** Indicates whether to render the strip line from the minimum/start value of the axis. This property does not work when start property is set. + * @Default {false} + */ + startFromAxis?: boolean; + + /** Specifies text to be displayed inside the strip line. + * @Default {stripLine} + */ + text?: string; + + /** Specifies the alignment of the text inside the strip line. + * @Default {middlecenter. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Chart.TextAlignment|string; + + /** Show/hides the strip line. + * @Default {false} + */ + visible?: boolean; + + /** Width of the strip line. + * @Default {0} + */ + width?: number; + + /** Specifies the order where the strip line and the series have to be rendered. When Z-order is “behind”, strip line is rendered under the series and when it is “over”, it is + * rendered above the series. + * @Default {over. See ZIndex} + */ + zIndex?: ej.datavisualization.Chart.ZIndex|string; + } + + export interface AxesLabelBorder { + + /** Specifies the color of the label border. + * @Default {null} + */ + color?: string; + + /** Specifies the width of the label border. + * @Default {1} + */ + width?: number; + } + + export interface AxesTitleFont { + + /** Font family of the title text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the title text. + * @Default {ej.datavisualization.Chart.FontStyle.Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the title text. + * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the axis title text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the axis title. + * @Default {16px} + */ + size?: string; + } + + export interface AxesTitle { + + /** Specifies whether to trim the axis title when it exceeds the chart area or the maximum width of the title. + * @Default {false} + */ + enableTrim?: boolean; + + /** Options for customizing the title font. + */ + font?: AxesTitleFont; + + /** Maximum width of the title, when the title exceeds this width, the title gets trimmed, when enableTrim is true. + * @Default {34} + */ + maximumTitleWidth?: number; + + /** Title for the axis. + */ + text?: string; + + /** Controls the visibility of axis title. + * @Default {true} + */ + visible?: boolean; + + /** offset value for axis title. + * @Default {0} + */ + offset?: number; + + /** Specifies the position of the axis title. + * @Default {outside. See Position} + */ + position?: ej.datavisualization.Chart.LabelPosition|string; + + /** Specifies the position of the axis title. + * @Default {center. See Alignment} + */ + alignment?: ej.datavisualization.Chart.TextAlignment|string; + } + + export interface AxesScrollbarSettingsRange { + + /** Minimum value of the scrollbar range. + * @Default {null} + */ + min?: number; + + /** Maximum value for the scrollbar range . + * @Default {null} + */ + max?: number; + } + + export interface AxesScrollbarSettings { + + /** Specifies to enable or disable the scrollbar. + * @Default {false} + */ + visible?: boolean; + + /** Controls whether scrollbar has to be responsive in the chart. + * @Default {false} + */ + canResize?: boolean; + + /** Options to customize the range for the scrollbar in the axis. + */ + range?: AxesScrollbarSettingsRange; + + /** The maximum number of points to be displayed in the scrollbar. + * @Default {null} + */ + pointsLength?: number; + } + + export interface Axis { + + /** Options for customizing axis alternate grid band. + */ + alternateGridBand?: AxesAlternateGridBand; + + /** Specifies where axis should intersect the vertical axis or vice versa. Value should be provided in axis co-ordinates. If provided value is greater than the maximum value of + * crossing axis, then axis will be placed at the opposite side. + * @Default {null} + */ + crossesAt?: number; + + /** Category axis can also plot points based on index value of data points. Index based plotting can be enabled by setting ‘isIndexed’ property to true. + * @Default {false} + */ + isIndexed?: boolean; + + /** Options for customizing the axis line. + */ + axisLine?: AxesAxisLine; + + /** Specifies the index of the column where the axis is associated, when the chart area is divided into multiple plot areas by using columnDefinitions. + * @Default {null} + */ + columnIndex?: number; + + /** Specifies the number of columns or plot areas an axis has to span horizontally. + * @Default {null} + */ + columnSpan?: number; + + /** Options to customize the crosshair label. + */ + crosshairLabel?: AxesCrosshairLabel; + + /** With this setting, you can request axis to calculate intervals approximately equal to your desired interval. + * @Default {null} + */ + desiredIntervals?: number; + + /** Specifies the placement of labels. + * @Default {ej.datavisualization.Chart.LabelPlacement.BetweenTicks. See LabelPlacement} + */ + labelPlacement?: ej.datavisualization.Chart.LabelPlacement|string; + + /** Specifies the position of labels at the edge of the axis. + * @Default {ej.datavisualization.Chart.EdgeLabelPlacement.None. See EdgeLabelPlacement} + */ + edgeLabelPlacement?: ej.datavisualization.Chart.EdgeLabelPlacement|string; + + /** Specifies whether to trim the axis label when the width of the label exceeds the maximumLabelWidth. + * @Default {false} + */ + enableTrim?: boolean; + + /** Specifies the interval of the axis according to the zoomed data of the chart. + * @Default {true} + */ + enableAutoIntervalOnZooming?: boolean; + + /** Options for customizing the font of the axis Labels. + */ + font?: AxesFont; + + /** Specifies the type of interval in date time axis. + * @Default {null. See IntervalType} + */ + intervalType?: ej.datavisualization.Chart.IntervalType|string; + + /** Specifies whether to inverse the axis. + * @Default {false} + */ + isInversed?: boolean; + + /** Custom formatting for axis label and supports all standard formatting type of numerical and date time values. + * @Default {null} + */ + labelFormat?: string; + + /** Specifies the action to take when the axis labels are overlapping with each other. + * @Default {ej.datavisualization.Chart.LabelIntersectAction.None. See LabelIntersectAction} + */ + labelIntersectAction?: ej.datavisualization.Chart.LabelIntersectAction|string; + + /** Specifies the position of the axis labels. + * @Default {outside. See LabelPosition} + */ + labelPosition?: ej.datavisualization.Chart.LabelPosition|string; + + /** Specifies the position of the axis labels. + * @Default {center. See Alignment} + */ + alignment?: ej.datavisualization.Chart.LabelAlignment|string; + + /** Angle in degrees to rotate the axis labels. + * @Default {null} + */ + labelRotation?: number; + + /** Logarithmic base value. This is applicable only for logarithmic axis. + * @Default {10} + */ + logBase?: number; + + /** Options for customizing major gird lines. + */ + majorGridLines?: AxesMajorGridLines; + + /** Options for customizing the major tick lines. + */ + majorTickLines?: AxesMajorTickLines; + + /** Maximum number of labels to be displayed in every 100 pixels. + * @Default {3} + */ + maximumLabels?: number; + + /** Maximum width of the axis label. When the label exceeds the width, the label gets trimmed when the enableTrim is set to true. + * @Default {34} + */ + maximumLabelWidth?: number; + + /** Options for customizing the minor grid lines. + */ + minorGridLines?: AxesMinorGridLines; + + /** Options for customizing the minor tick lines. + */ + minorTickLines?: AxesMinorTickLines; + + /** Specifies the number of minor ticks per interval. + * @Default {null} + */ + minorTicksPerInterval?: number; + + /** Unique name of the axis. To associate an axis with the series, you have to set this name to the xAxisName/yAxisName property of the series. + * @Default {null} + */ + name?: string; + + /** Specifies whether to render the axis at the opposite side of its default position. + * @Default {false} + */ + opposedPosition?: boolean; + + /** Specifies the orientation of the axis line in the chart. + * @Default {'horizontal'} + */ + orientation?: ej.datavisualization.Chart.AxisOrientation|string; + + /** Specifies the padding for the plot area. + * @Default {10} + */ + plotOffset?: number; + + /** Options to customize the range of the axis. + */ + range?: AxesRange; + + /** Specifies the padding for the axis range. + * @Default {None. See RangePadding} + */ + rangePadding?: ej.datavisualization.Chart.RangePadding|string; + + /** Rounds the number to the given number of decimals. + * @Default {null} + */ + roundingPlaces?: number; + + /** Options for customizing the multi level labels. + * @Default {[ ]} + */ + multiLevelLabels?: AxesMultiLevelLabel[]; + + /** Specifies whether the axis elements need to be placed nearby the axis line, while crossing. + * @Default {true} + */ + showNextToAxisLine?: boolean; + + /** Options for customizing the strip lines. + * @Default {[ ]} + */ + stripLine?: AxesStripLine[]; + + /** Specifies the position of the axis tick lines. + * @Default {outside. See TickLinesPosition} + */ + tickLinesPosition?: ej.datavisualization.Chart.TickLinesPosition|string; + + /** Options for customizing the border of the labels. + */ + labelBorder?: AxesLabelBorder; + + /** Options for customizing the axis title. + */ + title?: AxesTitle; + + /** Specifies the type of data the axis is handling. + * @Default {null. See ValueType} + */ + valueType?: ej.datavisualization.Chart.ValueType|string; + + /** Show/hides the axis. + * @Default {true} + */ + visible?: boolean; + + /** The axis is scaled by this factor. When zoomFactor is 0.5, the chart is scaled by 200% along this axis. Value ranges from 0 to 1. + * @Default {1} + */ + zoomFactor?: number; + + /** Position of the zoomed axis. Value ranges from 0 to 1. + * @Default {0} + */ + zoomPosition?: number; + + /** Options for customizing the axis scrollbar. + */ + scrollbarSettings?: AxesScrollbarSettings; + } + + export interface PrimaryYAxisAlternateGridBandEven { + + /** Fill color for the even grid bands. + * @Default {transparent} + */ + fill?: string; + + /** Opacity of the even grid band. + * @Default {1} + */ + opacity?: number; + } + + export interface PrimaryYAxisAlternateGridBandOdd { + + /** Fill color of the odd grid bands. + * @Default {transparent} + */ + fill?: string; + + /** Opacity of odd grid band. + * @Default {1} + */ + opacity?: number; + } + + export interface PrimaryYAxisAlternateGridBand { + + /** Options for customizing even grid band. + */ + even?: PrimaryYAxisAlternateGridBandEven; + + /** Options for customizing odd grid band. + */ + odd?: PrimaryYAxisAlternateGridBandOdd; + } + + export interface PrimaryYAxisAxisLine { + + /** Pattern of dashes and gaps to be applied to the axis line. + * @Default {null} + */ + dashArray?: string; + + /** Padding for axis line. Normally, it is used along with plotOffset to pad the plot area. + * @Default {null} + */ + offset?: number; + + /** Show/hides the axis line. + * @Default {true} + */ + visible?: boolean; + + /** Color of axis line. + */ + color?: string; + + /** Width of axis line. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryYAxisCrosshairLabel { + + /** Show/hides the crosshair label associated with this axis. + * @Default {false} + */ + visible?: boolean; + } + + export interface PrimaryYAxisFont { + + /** Font family of labels. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of labels. + * @Default {ej.datavisualization.Chart.FontStyle.Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the label. + * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the axis labels. + * @Default {1} + */ + opacity?: number; + + /** Font size of the axis labels. + * @Default {13px} + */ + size?: string; + } + + export interface PrimaryYAxisMajorGridLines { + + /** Pattern of dashes and gaps used to stroke the major grid lines. + * @Default {null} + */ + dashArray?: string; + + /** Color of the major grid lines. + * @Default {null} + */ + color?: string; + + /** Opacity of major grid lines. + * @Default {1} + */ + opacity?: number; + + /** Show/hides the major grid lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the major grid lines. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryYAxisMajorTickLines { + + /** Length of the major tick lines. + * @Default {5} + */ + size?: number; + + /** Show/hides the major tick lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the major tick lines. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryYAxisMinorGridLines { + + /** Patterns of dashes and gaps used to stroke the minor grid lines. + * @Default {null} + */ + dashArray?: string; + + /** Show/hides the minor grid lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the minorGridLines. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryYAxisMinorTickLines { + + /** Length of the minor tick lines. + * @Default {5} + */ + size?: number; + + /** Show/hides the minor tick lines. + * @Default {true} + */ + visible?: boolean; + + /** Width of the minor tick line + * @Default {1} + */ + width?: number; + } + + export interface PrimaryYAxisRange { + + /** Minimum value of the axis range. + * @Default {null} + */ + min?: number; + + /** Maximum value of the axis range. + * @Default {null} + */ + max?: number; + + /** Interval for the range. + * @Default {null} + */ + interval?: number; + } + + export interface PrimaryYAxisMultiLevelLabelsFont { + + /** Font color of the multi level labels text. + * @Default {null} + */ + color?: string; + + /** Font family of the multi level labels text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the multi level labels text. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the multi level label text. + * @Default {regular} + */ + fontWeight?: string; + + /** Opacity of the multi level label text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the multi level label text. + * @Default {12px} + */ + size?: string; + } + + export interface PrimaryYAxisMultiLevelLabelsBorder { + + /** Border color of the multi level labels. + * @Default {null} + */ + color?: string; + + /** Border width of the multi level labels. + * @Default {1} + */ + width?: number; + + /** Border type of the multi level labels. + * @Default {rectangle. See Type} + */ + type?: ej.datavisualization.Chart.MultiLevelLabelsBorderType|string; + } + + export interface PrimaryYAxisMultiLevelLabel { + + /** Visibility of the multi level labels. + * @Default {false} + */ + visible?: boolean; + + /** Text of the multi level labels. + */ + text?: string; + + /** Starting value of the multi level labels. + * @Default {null} + */ + start?: number; + + /** Ending value of the multi level labels. + * @Default {null} + */ + end?: number; + + /** Specifies the level of multi level labels. + * @Default {0} + */ + level?: number; + + /** Specifies the maximum width of the text in multi level labels. + * @Default {null} + */ + maximumTextWidth?: number; + + /** Specifies the alignment of the text in multi level labels. + * @Default {center. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Chart.TextAlignment|string; + + /** Specifies the handling of text over flow in multi level labels. + * @Default {center. See TextOverflow} + */ + textOverflow?: ej.datavisualization.Chart.TextOverflow|string; + + /** Options for customizing the font of the text. + */ + font?: PrimaryYAxisMultiLevelLabelsFont; + + /** Options for customizing the border of the series. + */ + border?: PrimaryYAxisMultiLevelLabelsBorder; + } + + export interface PrimaryYAxisScrollbarSettingsRange { + + /** Minimum value of the scrollbar range. + * @Default {null} + */ + min?: number; + + /** Maximum value for the scrollbar range . + * @Default {null} + */ + max?: number; + } + + export interface PrimaryYAxisScrollbarSettings { + + /** Specifies to enable or disable the scrollbar. + * @Default {false} + */ + visible?: boolean; + + /** Controls whether scrollbar has to be responsive in the chart. + * @Default {false} + */ + canResize?: boolean; + + /** Options to customize the range for the scrollbar in the axis. + */ + range?: PrimaryYAxisScrollbarSettingsRange; + + /** The maximum number of points to be displayed in the scrollbar. + * @Default {null} + */ + pointsLength?: number; + } + + export interface PrimaryYAxisStripLineFont { + + /** Font color of the strip line text. + * @Default {black} + */ + color?: string; + + /** Font family of the strip line text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the strip line text. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the strip line text. + * @Default {regular} + */ + fontWeight?: string; + + /** Opacity of the strip line text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the strip line text. + * @Default {12px} + */ + size?: string; + } + + export interface PrimaryYAxisStripLine { + + /** Border color of the strip line. + * @Default {gray} + */ + borderColor?: string; + + /** Background color of the strip line. + * @Default {gray} + */ + color?: string; + + /** End value of the strip line. + * @Default {null} + */ + end?: number; + + /** Options for customizing the font of the text. + */ + font?: PrimaryYAxisStripLineFont; + + /** Start value of the strip line. + * @Default {null} + */ + start?: number; + + /** Indicates whether to render the strip line from the minimum/start value of the axis. This property won’t work when start property is set. + * @Default {false} + */ + startFromAxis?: boolean; + + /** Specifies text to be displayed inside the strip line. + * @Default {stripLine} + */ + text?: string; + + /** Specifies the alignment of the text inside the strip line. + * @Default {middlecenter. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Chart.TextAlignment|string; + + /** Show/hides the strip line. + * @Default {false} + */ + visible?: boolean; + + /** Width of the strip line. + * @Default {0} + */ + width?: number; + + /** Specifies the order in which strip line and the series have to be rendered. When Z-order is “behind”, strip line is rendered below the series and when it is “over”, it is + * rendered above the series. + * @Default {over. See ZIndex} + */ + zIndex?: ej.datavisualization.Chart.ZIndex|string; + } + + export interface PrimaryYAxisLabelBorder { + + /** Specifies the color of the label border. + * @Default {null} + */ + color?: string; + + /** Specifies the width of the label border. + * @Default {1} + */ + width?: number; + } + + export interface PrimaryYAxisTitleFont { + + /** Font family of the title text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the title text. + * @Default {ej.datavisualization.Chart.FontStyle.Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the title text. + * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the axis title text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the axis title. + * @Default {16px} + */ + size?: string; + } + + export interface PrimaryYAxisTitle { + + /** Specifies whether to trim the axis title when it exceeds the chart area or the maximum width of the title. + * @Default {ej.datavisualization.Chart.enableTrim} + */ + enableTrim?: boolean; + + /** Options for customizing the title font. + */ + font?: PrimaryYAxisTitleFont; + + /** Maximum width of the title, when the title exceeds this width, the title gets trimmed, when enableTrim is true. + * @Default {ej.datavisualization.Chart.maximumTitleWidth.null} + */ + maximumTitleWidth?: number; + + /** Title for the axis. + */ + text?: string; + + /** Controls the visibility of axis title. + * @Default {true} + */ + visible?: boolean; + + /** offset value for axis title. + * @Default {0} + */ + offset?: number; + + /** Specifies the position of the axis title. + * @Default {outside. See Position} + */ + position?: ej.datavisualization.Chart.LabelPosition|string; + + /** Specifies the position of the axis title. + * @Default {center. See Alignment} + */ + alignment?: ej.datavisualization.Chart.TextAlignment|string; + } + + export interface PrimaryYAxis { + + /** Options for customizing vertical axis alternate grid band. + */ + alternateGridBand?: PrimaryYAxisAlternateGridBand; + + /** Specifies the interval of the axis according to the zoomed data of the chart. + * @Default {true} + */ + enableAutoIntervalOnZooming?: boolean; + + /** Options for customizing the axis line. + */ + axisLine?: PrimaryYAxisAxisLine; + + /** Specifies where horizontal axis should intersect the vertical axis or vice versa. Value should be provided in axis co-ordinates. If provided value is greater than the maximum + * value of crossing axis, then axis will be placed at the opposite side. + * @Default {null} + */ + crossesAt?: number; + + /** Name of the axis used for crossing. Vertical axis name should be provided for horizontal axis and vice versa. If the provided name does not belongs to a valid axis, then primary X + * axis or primary Y axis will be used for crossing + * @Default {null} + */ + crossesInAxis?: string; + + /** Options to customize the crosshair label. + */ + crosshairLabel?: PrimaryYAxisCrosshairLabel; + + /** With this setting, you can request axis to calculate intervals approximately equal to your desired interval. + * @Default {null} + */ + desiredIntervals?: number; + + /** Specifies the placement of labels. + * @Default {ej.datavisualization.Chart.LabelPlacement.BetweenTicks. See LabelPlacement} + */ + labelPlacement?: ej.datavisualization.Chart.LabelPlacement|string; + + /** Specifies the position of labels at the edge of the axis. + * @Default {ej.datavisualization.Chart.EdgeLabelPlacement.None. See EdgeLabelPlacement} + */ + edgeLabelPlacement?: ej.datavisualization.Chart.EdgeLabelPlacement|string; + + /** Specifies whether to trim the axis label when the width of the label exceeds the maximumLabelWidth. + * @Default {false} + */ + enableTrim?: boolean; + + /** Options for customizing the font of the axis Labels. + */ + font?: PrimaryYAxisFont; + + /** Specifies the type of interval in date time axis. + * @Default {null. See IntervalType} + */ + intervalType?: ej.datavisualization.Chart.IntervalType|string; + + /** Specifies whether to inverse the axis. + * @Default {false} + */ + isInversed?: boolean; + + /** Custom formatting for axis label and supports all standard formatting type of numerical and date time values. + * @Default {null} + */ + labelFormat?: string; + + /** Specifies the action to take when the axis labels are overlapping with each other. + * @Default {ej.datavisualization.Chart.LabelIntersectAction.None} + */ + labelIntersectAction?: ej.datavisualization.Chart.LabelIntersectAction|string; + + /** Specifies the position of the axis labels. + * @Default {outside. See LabelPosition} + */ + labelPosition?: ej.datavisualization.Chart.LabelPosition|string; + + /** Specifies the position of the axis labels. + * @Default {center. See Alignment} + */ + alignment?: ej.datavisualization.Chart.LabelAlignment|string; + + /** Logarithmic base value. This is applicable only for logarithmic axis. + * @Default {10} + */ + logBase?: number; + + /** Options for customizing major gird lines. + */ + majorGridLines?: PrimaryYAxisMajorGridLines; + + /** Options for customizing the major tick lines. + */ + majorTickLines?: PrimaryYAxisMajorTickLines; + + /** Maximum number of labels to be displayed in every 100 pixels. + * @Default {3} + */ + maximumLabels?: number; + + /** Maximum width of the axis label. When the label exceeds the width, the label gets trimmed when the enableTrim is set to true. + * @Default {ej.datavisualization.Chart.maximumLabelWidth type {int}} + */ + maximumLabelWidth?: number; + + /** Options for customizing the minor grid lines. + */ + minorGridLines?: PrimaryYAxisMinorGridLines; + + /** Options for customizing the minor tick lines. + */ + minorTickLines?: PrimaryYAxisMinorTickLines; + + /** Specifies the number of minor ticks per interval. + * @Default {null} + */ + minorTicksPerInterval?: number; + + /** Unique name of the axis. To associate an axis with the series, you have to set this name to the xAxisName/yAxisName property of the series. + * @Default {null} + */ + name?: string; + + /** Specifies whether to render the axis at the opposite side of its default position. + * @Default {false} + */ + opposedPosition?: boolean; + + /** Specifies the orientation of the axis line in the chart. + * @Default {Vertical} + */ + orientation?: ej.datavisualization.Chart.AxisOrientation|string; + + /** Specifies the padding for the plot area. + * @Default {10} + */ + plotOffset?: number; + + /** Options to customize the range of the axis. + */ + range?: PrimaryYAxisRange; + + /** Specifies the padding for the axis range. + * @Default {ej.datavisualization.Chart.RangePadding.None. See RangePadding} + */ + rangePadding?: ej.datavisualization.Chart.RangePadding|string; + + /** Rounds the number to the given number of decimals. + * @Default {null} + */ + roundingPlaces?: number; + + /** Specifies the index of the row to which the axis is associated, when the chart area is divided into multiple plot areas by using rowDefinitions. + * @Default {null} + */ + rowIndex?: number; + + /** Specifies the number of row or plot areas an axis has to span vertically. + * @Default {null} + */ + rowSpan?: number; + + /** Options for customizing the multi level labels. + * @Default {[ ]} + */ + multiLevelLabels?: PrimaryYAxisMultiLevelLabel[]; + + /** Specifies whether the axis elements need to be placed nearby the axis line, while crossing. + * @Default {true} + */ + showNextToAxisLine?: boolean; + + /** Options for customizing the axis scrollbar. + */ + scrollbarSettings?: PrimaryYAxisScrollbarSettings; + + /** Options for customizing the strip lines. + * @Default {[ ]} + */ + stripLine?: PrimaryYAxisStripLine[]; + + /** Specifies the position of the axis tick lines. + * @Default {outside. See TickLinesPosition} + */ + tickLinesPosition?: ej.datavisualization.Chart.TickLinesPosition|string; + + /** Options for customizing the border of the labels. + */ + labelBorder?: PrimaryYAxisLabelBorder; + + /** Options for customizing the axis title. + */ + title?: PrimaryYAxisTitle; + + /** Specifies the type of data the axis is handling. + * @Default {null. See ValueType} + */ + valueType?: ej.datavisualization.Chart.ValueType|string; + + /** Show/hides the axis. + * @Default {true} + */ + visible?: boolean; + + /** The axis is scaled by this factor. When zoomFactor is 0.5, the chart is scaled by 200% along this axis. Values ranges from 0 to 1. + * @Default {1} + */ + zoomFactor?: number; + + /** Position of the zoomed axis. Value ranges from 0 to 1 + * @Default {0} + */ + zoomPosition?: number; + } + + export interface RowDefinition { + + /** Specifies the unit to measure the height of the row in plotting area. + * @Default {'pixel'. See Unit} + */ + unit?: ej.datavisualization.Chart.Unit|string; + + /** Height of the row in plotting area. Height is measured in either pixel or percentage based on the value of unit property. + * @Default {50} + */ + rowHeight?: number; + + /** Color of the line that indicates the starting point of the row in plotting area. + * @Default {transparent} + */ + lineColor?: string; + + /** Width of the line that indicates the starting point of the row in plot area. + * @Default {1} + */ + lineWidth?: number; + } + + export interface SeriesBorder { + + /** Border color of the series. + * @Default {transparent} + */ + color?: string; + + /** Border width of the series. + * @Default {1} + */ + width?: number; + + /** DashArray for border of the series. + * @Default {null} + */ + dashArray?: string; + } + + export interface SeriesFont { + + /** Font color of the series text. + * @Default {#707070} + */ + color?: string; + + /** Font Family of the series. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font Style of the series. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the series. + * @Default {Regular} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of series text. + * @Default {1} + */ + opacity?: number; + + /** Size of the series text. + * @Default {12px} + */ + size?: string; + } + + export interface SeriesBubbleOptions { + + /** Used for the calculation of the bubble radius based on the mode selected + * @Default {minmax .See RadiusMode} + */ + radiusMode?: ej.datavisualization.Chart.RadiusMode|string; + + /** Used for the setting the minimum radius of the bubble + * @Default {1} + */ + minRadius?: number; + + /** Used for setting the maximum radius of the bubble + * @Default {3} + */ + maxRadius?: number; + } + + export interface SeriesMarkerBorder { + + /** Border color of the marker shape. + * @Default {white} + */ + color?: string; + + /** Border width of the marker shape. + * @Default {3} + */ + width?: number; + } + + export interface SeriesMarkerDataLabelBorder { + + /** Border color of the data label. + * @Default {null} + */ + color?: string; + + /** Border width of the data label. + * @Default {0.1} + */ + width?: number; + } + + export interface SeriesMarkerDataLabelConnectorLine { + + /** Specifies when the connector has to be drawn as Bezier curve or straight line. This is applicable only for Pie and Doughnut chart types. + * @Default {line. See ConnectorLineType} + */ + type?: ej.datavisualization.Chart.Type|string; + + /** Width of the connector. + * @Default {0.5} + */ + width?: number; + + /** Color of the connector. + * @Default {null} + */ + color?: string; + + /** Height of the connector. + * @Default {null} + */ + height?: number; + } + + export interface SeriesMarkerDataLabelFont { + + /** Font family of the data label. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font color of the data label text. + * @Default {null} + */ + color?: string; + + /** Font style of the data label. + * @Default {normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the data label. + * @Default {regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the data label. + * @Default {12px} + */ + size?: string; + } + + export interface SeriesMarkerDataLabelMargin { + + /** Bottom margin of the text. + * @Default {5} + */ + bottom?: number; + + /** Left margin of the text. + * @Default {5} + */ + left?: number; + + /** Right margin of the text. + * @Default {5} + */ + right?: number; + + /** Top margin of the text. + * @Default {5} + */ + top?: number; + } + + export interface SeriesMarkerDataLabelOffset { + + /** X value or horizontal offset to position the labels in chart. + * @Default {0} + */ + x?: number; + + /** Y value or vertical offset to position the labels. + * @Default {0} + */ + y?: number; + } + + export interface SeriesMarkerDataLabel { + + /** Angle of the data label in degrees. Only the text gets rotated, whereas the background and border does not rotate. + * @Default {null} + */ + angle?: number; + + /** Maximum label width of the data label. + * @Default {null} + */ + maximumLabelWidth?: number; + + /** Enable the wrap option to the data label. + * @Default {false} + */ + enableWrap?: boolean; + + /** Options for customizing the border of the data label. + */ + border?: SeriesMarkerDataLabelBorder; + + /** Options for displaying and customizing the line that connects point and data label. + */ + connectorLine?: SeriesMarkerDataLabelConnectorLine; + + /** Background color of the data label. + * @Default {null} + */ + fill?: string; + + /** Options for customizing the data label font. + */ + font?: SeriesMarkerDataLabelFont; + + /** Horizontal alignment of the data label. + * @Default {center} + */ + horizontalTextAlignment?: ej.datavisualization.Chart.HorizontalTextAlignment|string; + + /** Margin of the text to its background shape. The size of the background shape increases based on the margin applied to its text. + */ + margin?: SeriesMarkerDataLabelMargin; + + /** Opacity of the data label. + * @Default {1} + */ + opacity?: number; + + /** Background shape of the data label. + * @Default {No shape is rendered by default, so its value is ‘none’. See Shape} + */ + shape?: ej.datavisualization.Chart.Shape|string; + + /** Name of a field in data source where datalabel text is displayed. + */ + textMappingName?: string; + + /** Specifies the position of the data label. This property can be used only for the series such as column, bar, stacked column, stacked bar, 100% stacked column, 100% stacked bar, + * candle and OHLC. + * @Default {top. See TextPosition} + */ + textPosition?: ej.datavisualization.Chart.TextPosition|string; + + /** Vertical alignment of the data label. + * @Default {'center'} + */ + verticalTextAlignment?: ej.datavisualization.Chart.VerticalTextAlignment|string; + + /** Controls the visibility of the data labels. + * @Default {false} + */ + visible?: boolean; + + /** Custom template to format the data label content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. + */ + template?: string; + + /** Options for customizing the datalabel positions + */ + offset?: SeriesMarkerDataLabelOffset; + } + + export interface SeriesMarkerSize { + + /** Height of the marker. + * @Default {6} + */ + height?: number; + + /** Width of the marker. + * @Default {6} + */ + width?: number; + } + + export interface SeriesMarker { + + /** Options for customizing the border of the marker shape. + */ + border?: SeriesMarkerBorder; + + /** Options for displaying and customizing data labels. + */ + dataLabel?: SeriesMarkerDataLabel; + + /** Color of the marker shape. + * @Default {null} + */ + fill?: string; + + /** The URL for the Image that is to be displayed as marker. In order to display image as marker, set series.marker.shape as ‘image’. + */ + imageUrl?: string; + + /** Opacity of the marker. + * @Default {1} + */ + opacity?: number; + + /** Specifies the shape of the marker. + * @Default {circle. See Shape} + */ + shape?: ej.datavisualization.Chart.Shape|string; + + /** Options for customizing the size of the marker shape. + */ + size?: SeriesMarkerSize; + + /** Controls the visibility of the marker shape. + * @Default {false} + */ + visible?: boolean; + } + + export interface SeriesOutlierSettingsSize { + + /** Height of the outlier shape. + * @Default {6} + */ + height?: number; + + /** Width of the outlier shape. + * @Default {6} + */ + width?: number; + } + + export interface SeriesOutlierSettings { + + /** Specifies the shape of the outlier. + * @Default {circle. See Shape} + */ + shape?: ej.datavisualization.Chart.Shape|string; + + /** Options for customizing the size of the outlier shape. + */ + size?: SeriesOutlierSettingsSize; + } + + export interface SeriesEmptyPointSettingsStyleBorder { + + /** Border color of the empty point. + */ + color?: string; + + /** Border width of the empty point. + * @Default {1} + */ + width?: number; + } + + export interface SeriesEmptyPointSettingsStyle { + + /** Color of the empty point. + */ + color?: string; + + /** Options for customizing border of the empty point in the series. + */ + border?: SeriesEmptyPointSettingsStyleBorder; + } + + export interface SeriesEmptyPointSettings { + + /** Controls the visibility of the empty point. + * @Default {true} + */ + visible?: boolean; + + /** Specifies the mode of empty point. + * @Default {gap} + */ + displayMode?: ej.datavisualization.Chart.EmptyPointMode|string; + + /** Options for customizing the color and border of the empty point in the series. + */ + style?: SeriesEmptyPointSettingsStyle; + } + + export interface SeriesConnectorLine { + + /** Width of the connector line. + * @Default {1} + */ + width?: number; + + /** Color of the connector line. + * @Default {#565656} + */ + color?: string; + + /** DashArray of the connector line. + * @Default {null} + */ + dashArray?: string; + + /** Opacity of the connector line. + * @Default {1} + */ + opacity?: number; + } + + export interface SeriesDragSettings { + + /** drag/drop the series + * @Default {false} + */ + enable?: boolean; + + /** Specifies the type of drag settings. + * @Default {xy} + */ + type?: string; + } + + export interface SeriesErrorBarCap { + + /** Show/Hides the error bar cap. + * @Default {true} + */ + visible?: boolean; + + /** Width of the error bar cap. + * @Default {1} + */ + width?: number; + + /** Length of the error bar cap. + * @Default {1} + */ + length?: number; + + /** Color of the error bar cap. + * @Default {#000000} + */ + fill?: string; + } + + export interface SeriesErrorBar { + + /** Show/hides the error bar + * @Default {visible} + */ + visibility?: boolean; + + /** Specifies the type of error bar. + * @Default {FixedValue} + */ + type?: ej.datavisualization.Chart.ErrorBarType|string; + + /** Specifies the mode of error bar. + * @Default {vertical} + */ + mode?: ej.datavisualization.Chart.ErrorBarMode|string; + + /** Specifies the direction of error bar. + * @Default {both} + */ + direction?: ej.datavisualization.Chart.ErrorBarDirection|string; + + /** Value of vertical error bar. + * @Default {3} + */ + verticalErrorValue?: number; + + /** Value of horizontal error bar. + * @Default {1} + */ + horizontalErrorValue?: number; + + /** Value of positive horizontal error bar. + * @Default {1} + */ + horizontalPositiveErrorValue?: number; + + /** Value of negative horizontal error bar. + * @Default {1} + */ + horizontalNegativeErrorValue?: number; + + /** Value of positive vertical error bar. + * @Default {5} + */ + verticalPositiveErrorValue?: number; + + /** Value of negative vertical error bar. + * @Default {5} + */ + verticalNegativeErrorValue?: number; + + /** Fill color of the error bar. + * @Default {#000000} + */ + fill?: string; + + /** Width of the error bar. + * @Default {1} + */ + width?: number; + + /** Options for customizing the error bar cap. + */ + cap?: SeriesErrorBarCap; + } + + export interface SeriesPointsBorder { + + /** Border color of the point. + * @Default {null} + */ + color?: string; + + /** Border width of the point. + * @Default {null} + */ + width?: number; + } + + export interface SeriesPointsMarkerBorder { + + /** Border color of the marker shape. + * @Default {white} + */ + color?: string; + + /** Border width of the marker shape. + * @Default {3} + */ + width?: number; + } + + export interface SeriesPointsMarkerDataLabelBorder { + + /** Border color of the data label. + * @Default {null} + */ + color?: string; + + /** Border width of the data label. + * @Default {0.1} + */ + width?: number; + } + + export interface SeriesPointsMarkerDataLabelConnectorLine { + + /** Specifies when the connector has to be drawn as Bezier curve or straight line. This is applicable only for Pie and Doughnut chart types. + * @Default {line. See ConnectorLineType} + */ + type?: ej.datavisualization.Chart.ConnectorLineType|string; + + /** Width of the connector. + * @Default {0.5} + */ + width?: number; + } + + export interface SeriesPointsMarkerDataLabelFont { + + /** Font family of the data label. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the data label. + * @Default {normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight of the data label. + * @Default {regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the text. + * @Default {1} + */ + opacity?: number; + + /** Font size of the data label. + * @Default {12px} + */ + size?: string; + } + + export interface SeriesPointsMarkerDataLabelMargin { + + /** Bottom margin of the text. + * @Default {5} + */ + bottom?: number; + + /** Left margin of the text. + * @Default {5} + */ + left?: number; + + /** Right margin of the text. + * @Default {5} + */ + right?: number; + + /** Top margin of the text. + * @Default {5} + */ + top?: number; + } + + export interface SeriesPointsMarkerDataLabel { + + /** Angle of the data label in degrees. Only the text gets rotated, whereas the background and border does not rotate. + * @Default {null} + */ + angle?: number; + + /** Options for customizing the border of the data label. + */ + border?: SeriesPointsMarkerDataLabelBorder; + + /** Options for displaying and customizing the line that connects point and data label. + */ + connectorLine?: SeriesPointsMarkerDataLabelConnectorLine; + + /** Background color of the data label. + * @Default {null} + */ + fill?: string; + + /** Options for customizing the data label font. + */ + font?: SeriesPointsMarkerDataLabelFont; + + /** Horizontal alignment of the data label. + * @Default {center} + */ + horizontalTextAlignment?: ej.datavisualization.Chart.HorizontalTextAlignment|string; + + /** Margin of the text to its background shape. The size of the background shape increases based on the margin applied to its text. + */ + margin?: SeriesPointsMarkerDataLabelMargin; + + /** Opacity of the data label. + * @Default {1} + */ + opacity?: number; + + /** Background shape of the data label. + * @Default {No shape is rendered by default, so its value is ‘none’. See Shape} + */ + shape?: ej.datavisualization.Chart.Shape|string; + + /** Specifies the position of the data label. This property can be used only for the series such as column, bar, stacked column, stacked bar, 100% stacked column, 100% stacked bar, + * candle and OHLC. + * @Default {top. See TextPosition} + */ + textPosition?: ej.datavisualization.Chart.TextPosition|string; + + /** Vertical alignment of the data label. + * @Default {'center'} + */ + verticalTextAlignment?: ej.datavisualization.Chart.VerticalTextAlignment|string; + + /** Controls the visibility of the data labels. + * @Default {false} + */ + visible?: boolean; + + /** Custom template to format the data label content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. + */ + template?: string; + + /** Moves the label vertically by specified offset. + * @Default {0} + */ + offset?: number; + } + + export interface SeriesPointsMarkerSize { + + /** Height of the marker. + * @Default {6} + */ + height?: number; + + /** Width of the marker. + * @Default {6} + */ + width?: number; + } + + export interface SeriesPointsMarker { + + /** Options for customizing the border of the marker shape. + */ + border?: SeriesPointsMarkerBorder; + + /** Options for displaying and customizing data label. + */ + dataLabel?: SeriesPointsMarkerDataLabel; + + /** Color of the marker shape. + * @Default {null} + */ + fill?: string; + + /** The URL for the Image that is to be displayed as marker. In order to display image as marker, set series.marker.shape as ‘image’. + */ + imageUrl?: string; + + /** Opacity of the marker. + * @Default {1} + */ + opacity?: number; + + /** Specifies the shape of the marker. + * @Default {circle. See Shape} + */ + shape?: ej.datavisualization.Chart.Shape|string; + + /** Options for customizing the size of the marker shape. + */ + size?: SeriesPointsMarkerSize; + + /** Controls the visibility of the marker shape. + * @Default {false} + */ + visible?: boolean; + } + + export interface SeriesPoint { + + /** Options for customizing the border of a point. This is applicable only for column type series and accumulation type series. + */ + border?: SeriesPointsBorder; + + /** Enables or disables the visibility of legend item. + * @Default {visible} + */ + visibleOnLegend?: string; + + /** To show/hide the intermediate summary from the last intermediate point. + * @Default {false} + */ + showIntermediateSum?: boolean; + + /** To show/hide the total summary of the waterfall series. + * @Default {false} + */ + showTotalSum?: boolean; + + /** Close value of the point. Close value is applicable only for financial type series. + * @Default {null} + */ + close?: number; + + /** Size of a bubble in the bubble series. This is applicable only for the bubble series. + * @Default {null} + */ + size?: number; + + /** Background color of the point. This is applicable only for column type series and accumulation type series. + * @Default {null} + */ + fill?: string; + + /** High value of the point. High value is applicable only for financial type series, range area series and range column series. + * @Default {null} + */ + high?: number; + + /** Low value of the point. Low value is applicable only for financial type series, range area series and range column series. + * @Default {null} + */ + low?: number; + + /** Options for displaying and customizing marker for a data point. Marker contains shapes and/or data labels. + */ + marker?: SeriesPointsMarker; + + /** Open value of the point. This is applicable only for financial type series. + * @Default {null} + */ + open?: number; + + /** Datalabel text for the point. + * @Default {null} + */ + text?: string; + + /** X value of the point. + * @Default {null} + */ + x?: number; + + /** Y value of the point. + * @Default {null} + */ + y?: number; + } + + export interface SeriesCornerRadius { + + /** Specifies the radius for the top left corner. + * @Default {0} + */ + topLeft?: number; + + /** Specifies the radius for the top right corner. + * @Default {0} + */ + topRight?: number; + + /** Specifies the radius for the bottom left corner. + * @Default {0} + */ + bottomLeft?: number; + + /** Specifies the radius for the bottom right corner. + * @Default {0} + */ + bottomRight?: number; + } + + export interface SeriesTooltipBorder { + + /** Border Color of the tooltip. + * @Default {null} + */ + color?: string; + + /** Border Width of the tooltip. + * @Default {1} + */ + width?: number; + } + + export interface SeriesTooltip { + + /** Options for customizing the border of the tooltip. + */ + border?: SeriesTooltipBorder; + + /** Customize the corner radius of the tooltip rectangle. + * @Default {0} + */ + rx?: number; + + /** Customize the corner radius of the tooltip rectangle. + * @Default {0} + */ + ry?: number; + + /** Specifies the duration, the tooltip has to be displayed. + * @Default {500ms} + */ + duration?: string; + + /** Enables/disables the animation of the tooltip when moving from one point to another. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Background color of the tooltip. + * @Default {null} + */ + fill?: string; + + /** Format of the tooltip content. + * @Default {#point.x# : #point.y#} + */ + format?: string; + + /** Opacity of the tooltip. + * @Default {0.95} + */ + opacity?: number; + + /** Custom template to format the tooltip content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. + * @Default {null} + */ + template?: string; + + /** Controls the visibility of the tooltip. + * @Default {false} + */ + visible?: boolean; + } + + export interface SeriesTrendlinesTooltipBorder { + + /** Specify the Border color of the trendline tooltip. + * @Default {null} + */ + color?: string; + + /** Border width of the trendline tooltip. + * @Default {1} + */ + width?: number; + } + + export interface SeriesTrendlinesTooltip { + + /** Options for customizing the border of the trendline tooltip. + */ + border?: SeriesTrendlinesTooltipBorder; + + /** Customize the corner radius of the trendline tooltip rectangle. + * @Default {0} + */ + rx?: number; + + /** Customize the corner radius of the trendline tooltip rectangle. + * @Default {0} + */ + ry?: number; + + /** Specifies the duration of the trendline tooltip to be displayed. + * @Default {500ms} + */ + duration?: string; + + /** Enables/disables the animation of the trendline tooltip when moving from one point to other. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Background color of the trendline tooltip. + * @Default {null} + */ + fill?: string; + + /** Format of the trendline tooltip content. + * @Default {#point.x# : #point.y#} + */ + format?: string; + + /** Opacity of the trendline tooltip. + * @Default {0.5} + */ + opacity?: number; + } + + export interface SeriesTrendline { + + /** Show/hides the trendline. + */ + visibility?: boolean; + + /** Specifies the type of trendline for the series. + * @Default {linear. See TrendlinesType} + */ + type?: string; + + /** Name for the trendlines that is to be displayed in legend text. + * @Default {Trendline} + */ + name?: string; + + /** Fill color of the trendlines. + * @Default {#0000FF} + */ + fill?: string; + + /** Width of the trendlines. + * @Default {1} + */ + width?: number; + + /** Opacity of the trendline. + * @Default {1} + */ + opacity?: number; + + /** Pattern of dashes and gaps used to stroke the trendline. + */ + dashArray?: string; + + /** Future trends of the current series. + * @Default {0} + */ + forwardForecast?: number; + + /** Past trends of the current series. + * @Default {0} + */ + backwardForecast?: number; + + /** Specifies the order of polynomial trendlines. + * @Default {0} + */ + polynomialOrder?: number; + + /** Specifies the moving average starting period value. + * @Default {2} + */ + period?: number; + + /** Options for customizing the trendline tooltip + */ + tooltip?: SeriesTrendlinesTooltip; + + /** Show/hides the trendline legend. + * @Default {visible} + */ + visibleOnLegend?: string; + + /** Specifies the trendline intercept value + * @Default {null} + */ + intercept?: number; + } + + export interface SeriesHighlightSettingsBorder { + + /** Border color of the series/point on highlight. + */ + color?: string; + + /** Border width of the series/point on highlight. + * @Default {2} + */ + width?: string; + } + + export interface SeriesHighlightSettings { + + /** Enables/disables the ability to highlight series or data point interactively. + * @Default {false} + */ + enable?: boolean; + + /** Specifies whether series or data point has to be highlighted. + * @Default {series. See Mode} + */ + mode?: ej.datavisualization.Chart.Mode|string; + + /** Color of the series/point on highlight. + */ + color?: string; + + /** Opacity of the series/point on highlight. + * @Default {0.6} + */ + opacity?: number; + + /** Options for customizing the border of series on highlight. + */ + border?: SeriesHighlightSettingsBorder; + + /** Specifies the pattern for the series/point on highlight. + * @Default {none. See Pattern} + */ + pattern?: string; + + /** Custom pattern for the series on highlight. + */ + customPattern?: string; + } + + export interface SeriesSelectionSettingsBorder { + + /** Border color of the series/point on selection. + */ + color?: string; + + /** Border width of the series/point on selection. + * @Default {2} + */ + width?: string; + } + + export interface SeriesSelectionSettings { + + /** Enables/disables the ability to select a series/data point interactively. + * @Default {false} + */ + enable?: boolean; + + /** Specifies whether series or data point has to be selected. + * @Default {series. See Mode} + */ + mode?: ej.datavisualization.Chart.Mode|string; + + /** Specifies the type of selection. + * @Default {single} + */ + type?: ej.datavisualization.Chart.SelectionType|string; + + /** Specifies the drawn rectangle type. + * @Default {xy} + */ + rangeType?: ej.datavisualization.Chart.RangeType|string; + + /** Color of the series/point on selection. + */ + color?: string; + + /** Opacity of the series/point on selection. + * @Default {0.6} + */ + opacity?: number; + + /** Options for customizing the border of series on selection. + */ + border?: SeriesSelectionSettingsBorder; + + /** Specifies the pattern for the series/point on selection. + * @Default {none. See Pattern} + */ + pattern?: string; + + /** Custom pattern for the series on selection. + */ + customPattern?: string; + } + + export interface Series { + + /** Color of the point, where the close is up in financial chart. + * @Default {null} + */ + bearFillColor?: string; + + /** Options for customizing the border of the series. + */ + border?: SeriesBorder; + + /** Color of the point, where the close is down in financial chart. + * @Default {null} + */ + bullFillColor?: string; + + /** To render the column and bar type series in rectangle/cylinder shape. See ColumnFacet + * @Default {rectangle} + */ + columnFacet?: ej.datavisualization.Chart.ColumnFacet|string; + + /** Relative width of the columns in column type series. Value ranges from 0 to 1. Width also depends upon columnSpacing property. + * @Default {0.7} + */ + columnWidth?: number; + + /** Spacing between columns of different series. Value ranges from 0 to 1 + * @Default {0} + */ + columnSpacing?: number; + + /** To group the series of stacking collection. + */ + stackingGroup?: string; + + /** Pattern of dashes and gaps used to stroke the line type series. + */ + dashArray?: string; + + /** Specifies the dataSource for the series. It can be an array of JSON objects or an instance of ej.DataManager. + * @Default {null} + */ + dataSource?: any; + + /** Controls the size of the hole in doughnut series. Value ranges from 0 to 1. + * @Default {0.4} + */ + doughnutCoefficient?: number; + + /** Controls the size of the doughnut series. Value ranges from 0 to 1. + * @Default {0.8} + */ + doughnutSize?: number; + + /** Type of series to be drawn in radar or polar series. + * @Default {line. See DrawType} + */ + drawType?: ej.datavisualization.Chart.DrawType|string; + + /** Enable/disable the animation of series. + * @Default {false} + */ + enableAnimation?: boolean; + + /** To avoid overlapping of data labels smartly. + * @Default {null} + */ + enableSmartLabels?: number; + + /** End angle of pie/doughnut series. For a complete circle, it has to be 360, by default. + * @Default {null} + */ + endAngle?: number; + + /** Explodes the pie/doughnut slices on mouse move. + * @Default {false} + */ + explode?: boolean; + + /** Explodes all the slice of pie/doughnut on render. + * @Default {null} + */ + explodeAll?: boolean; + + /** Index of the point to be exploded from pie/doughnut/pyramid/funnel. + * @Default {null} + */ + explodeIndex?: number; + + /** Specifies the distance of the slice from the center, when it is exploded. + * @Default {25} + */ + explodeOffset?: number; + + /** Fill color of the series. + * @Default {null} + */ + fill?: string; + + /** Options for customizing the series font. + */ + font?: SeriesFont; + + /** Specifies the height of the funnel in funnel series. Values can be in both pixel and percentage. + * @Default {32.7%} + */ + funnelHeight?: string; + + /** Specifies the width of the funnel in funnel series. Values can be in both pixel and percentage. + * @Default {11.6%} + */ + funnelWidth?: string; + + /** Gap between the slices of pyramid/funnel series. + * @Default {0} + */ + gapRatio?: number; + + /** Specifies whether to join start and end point of a line/area series used in polar/radar chart to form a closed path. + * @Default {true} + */ + isClosed?: boolean; + + /** Specifies whether to stack the column series in polar/radar charts. + * @Default {true} + */ + isStacking?: boolean; + + /** Renders the chart vertically. This is applicable only for Cartesian type series. + * @Default {false} + */ + isTransposed?: boolean; + + /** Render the x mark in the center of the box and whisker series type.x represents the average value of the box and whisker series. + * @Default {true} + */ + showMedian?: boolean; + + /** Position of the data label in pie/doughnut/pyramid/funnel series. OutsideExtended position is not applicable for pyramid/funnel. + * @Default {inside. See LabelPosition} + */ + labelPosition?: ej.datavisualization.Chart.LabelPosition|string; + + /** Specifies the mode for splitting the data points in pieOfPie series. + * @Default {value. See SplitMode} + */ + splitMode?: ej.datavisualization.Chart.SplitMode|string; + + /** Quartile calculation has been performed in three different formulas to render the boxplot series . + * @Default {exclusive} + */ + boxPlotMode?: ej.datavisualization.Chart.LabelPosition|string; + + /** Options for customizing the bubble options of the Bubble series + */ + bubbleOptions?: SeriesBubbleOptions; + + /** Specifies the line cap of the series. + * @Default {Butt. See LineCap} + */ + lineCap?: ej.datavisualization.Chart.LineCap|string; + + /** Specifies the type of shape to be used where two lines meet. + * @Default {Round. See LineJoin} + */ + lineJoin?: ej.datavisualization.Chart.LineJoin|string; + + /** Options for displaying and customizing marker for individual point in a series. Marker contains shapes and/or data labels. + */ + marker?: SeriesMarker; + + /** Name of the series, that is to be displayed in the legend. + * @Default {Add a comment to this line} + */ + name?: string; + + /** Opacity of the series. + * @Default {1} + */ + opacity?: number; + + /** Options for customizing the outlier of individual series. + */ + outlierSettings?: SeriesOutlierSettings; + + /** Name of a field in data source where fill color for all the data points is generated. + */ + palette?: string; + + /** Controls the size of pie series. Value ranges from 0 to 1. + * @Default {0.8} + */ + pieCoefficient?: number; + + /** Controls the size of the second pie in pieOfPie series. Value ranges from 0 to 1. + * @Default {0.6} + */ + pieOfPieCoefficient?: number; + + /** Split Value of pieofpie series. + * @Default {null} + */ + splitValue?: string; + + /** Distance between the two pie's in pieOfPie series. + * @Default {50} + */ + gapWidth?: number; + + /** Options for customizing the empty point in the series. + */ + emptyPointSettings?: SeriesEmptyPointSettings; + + /** Fill color for the positive column of the waterfall. + * @Default {null} + */ + positiveFill?: string; + + /** Options for customizing the waterfall connector line. + */ + connectorLine?: SeriesConnectorLine; + + /** Options to customize the drag and drop in series. + */ + dragSettings?: SeriesDragSettings; + + /** Options to customize the error bar in series. + */ + errorBar?: SeriesErrorBar; + + /** Option to add data points; each point should have x and y property. Also, optionally, you can customize the points color, border, marker by using fill, border and marker options. + */ + points?: SeriesPoint[]; + + /** Specifies the mode of the pyramid series. + * @Default {linear} + */ + pyramidMode?: ej.datavisualization.Chart.PyramidMode|string; + + /** Specifies ej.Query to select data from dataSource. This property is applicable only when the dataSource is ej.DataManager. + * @Default {null} + */ + query?: any; + + /** Start angle from where the pie/doughnut series renders. It starts from 0, by default. + * @Default {null} + */ + startAngle?: number; + + /** Options for customizing the corner radius. cornerRadius property also takes the numeric input and applies it for all the four corners of the column. + */ + cornerRadius?: SeriesCornerRadius; + + /** Options for customizing the tooltip of chart. + */ + tooltip?: SeriesTooltip; + + /** Specifies the type of the series to render in chart. + * @Default {column. see Type} + */ + type?: ej.datavisualization.Chart.Type|string; + + /** Controls the visibility of the series. + * @Default {visible} + */ + visibility?: string; + + /** Enables or disables the visibility of legend item. + * @Default {visible} + */ + visibleOnLegend?: string; + + /** Specifies the name of the x-axis that has to be associated with this series. Add an axis instance with this name to axes collection. + * @Default {null} + */ + xAxisName?: string; + + /** Name of the property in the datasource that contains x value for the series. + * @Default {null} + */ + xName?: string; + + /** Specifies the name of the y-axis that has to be associated with this series. Add an axis instance with this name to axes collection. + * @Default {null} + */ + yAxisName?: string; + + /** Name of the property in the datasource that contains y value for the series. + * @Default {null} + */ + yName?: string; + + /** Name of the property in the datasource that contains high value for the series. + * @Default {null} + */ + high?: string; + + /** Name of the property in the datasource that contains low value for the series. + * @Default {null} + */ + low?: string; + + /** Name of the property in the datasource that contains open value for the series. + * @Default {null} + */ + open?: string; + + /** Name of the property in the datasource that contains close value for the series. + * @Default {null} + */ + close?: string; + + /** Name of the property in the datasource that contains fill color for the series. + * @Default {null} + */ + pointColorMappingName?: string; + + /** Z-order of the series. + * @Default {0} + */ + zOrder?: number; + + /** Name of the property in the datasource that contains the size value for the bubble series. + * @Default {null} + */ + size?: string; + + /** Option to add trendlines to chart. + */ + trendlines?: SeriesTrendline[]; + + /** Options for customizing the appearance of the series or data point while highlighting. + */ + highlightSettings?: SeriesHighlightSettings; + + /** Options for customizing the appearance of the series/data point on selection. + */ + selectionSettings?: SeriesSelectionSettings; + } + + export interface Size { + + /** Height of the Chart. Height can be specified in either pixel or percentage. + * @Default {'450'} + */ + height?: string; + + /** Width of the Chart. Width can be specified in either pixel or percentage. + * @Default {'450'} + */ + width?: string; + } + + export interface TitleBorder { + + /** Width of the title border. + * @Default {1} + */ + width?: number; + + /** color of the title border. + * @Default {transparent} + */ + color?: string; + + /** opacity of the title border. + * @Default {0.8} + */ + opacity?: number; + + /** opacity of the title border. + * @Default {0.8} + */ + cornerRadius?: number; + } + + export interface TitleFont { + + /** Font family for Chart title. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for Chart title. + * @Default {Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight for Chart title. + * @Default {Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the Chart title. + * @Default {0.5} + */ + opacity?: number; + + /** Font size for Chart title. + * @Default {20px} + */ + size?: string; + } + + export interface TitleSubTitleFont { + + /** Font family of sub title. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for sub title. + * @Default {Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Chart.FontStyle|string; + + /** Font weight for sub title. + * @Default {Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Chart.FontWeight|string; + + /** Opacity of the sub title. + * @Default {1} + */ + opacity?: number; + + /** Font size for sub title. + * @Default {12px} + */ + size?: string; + } + + export interface TitleSubTitleBorder { + + /** Width of the subtitle border. + * @Default {1} + */ + width?: number; + + /** color of the subtitle border. + * @Default {transparent} + */ + color?: string; + + /** opacity of the subtitle border. + * @Default {0.8} + */ + opacity?: number; + + /** opacity of the subtitle border. + * @Default {0.8} + */ + cornerRadius?: number; + } + + export interface TitleSubTitle { + + /** Options for customizing the font of sub title. + */ + font?: TitleSubTitleFont; + + /** Background color for the chart subtitle. + * @Default {transparent} + */ + background?: string; + + /** Options to customize the border of the title. + */ + border?: TitleSubTitleBorder; + + /** Text to be displayed in sub title. + */ + text?: string; + + /** Alignment of sub title text. + * @Default {far. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Chart.Alignment|string; + + /** Controls the visibility of the Chart SubTitle + * @Default {true} + */ + visible?: boolean; + + /** Specifies whether to trim the Chart SubTitle when the width of the Subtitle exceeds the maximumWidth. + * @Default {false} + */ + enableTrim?: boolean; + + /** Maximum width of the Subtitle, when the Subtitle exceeds this width, the Subtitle gets trimmed, when enableTrim is true. + * @Default {auto} + */ + maximumWidth?: string; + + /** Specifies the action taken when the Chart width is more than the SubTitleWidth. + * @Default {trim.} + */ + textOverflow?: ej.datavisualization.Chart.TextOverflow|string; + } + + export interface Title { + + /** Background color for the chart title. + * @Default {transparent} + */ + background?: string; + + /** Options to customize the border of the title. + */ + border?: TitleBorder; + + /** Options for customizing the font of Chart title. + */ + font?: TitleFont; + + /** Controls the visibility of the Chart title + * @Default {true} + */ + visible?: boolean; + + /** Specifies whether to trim the Chart Title when the width of the title exceeds the maximumWidth. + * @Default {false} + */ + enableTrim?: boolean; + + /** Maximum width of the title, when the title exceeds this width, the title gets trimmed, when enableTrim is true. + * @Default {auto} + */ + maximumWidth?: string; + + /** Specifies the action taken when the Chart width is more than the titleWidth. + * @Default {trim.} + */ + textOverflow?: ej.datavisualization.Chart.TextOverflow|string; + + /** Options to customize the sub title of Chart. + */ + subTitle?: TitleSubTitle; + + /** Text to be displayed in Chart title. + */ + text?: string; + + /** Alignment of the title text. + * @Default {Center. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Chart.Alignment|string; + } + + export interface Zooming { + + /** Enables or disables zooming. + * @Default {false} + */ + enable?: boolean; + + /** Enables or disables pinch zooming. + * @Default {true} + */ + enablePinching?: boolean; + + /** Enable or disables the differed zooming. When it is enabled, chart is updated only on mouse up action while zooming and panning. + * @Default {false} + */ + enableDeferredZoom?: boolean; + + /** Enables/disables the ability to zoom the chart on moving the mouse wheel. + * @Default {false} + */ + enableMouseWheel?: boolean; + + /** Specifies whether to allow zooming the chart vertically or horizontally or in both ways. + * @Default {'x,y'} + */ + type?: string; + + /** Toggles the visibility of the scrollbar, which will be displayed while zooming. + * @Default {false} + */ + enableScrollbar?: boolean; + + /** To display user specified buttons in zooming toolbar. + * @Default {[zoomIn, zoomOut, zoom, pan, reset]} + */ + toolbarItems?: any[]; + } + } + namespace Chart { + enum CoordinateUnit { + //string + None, + //string + Pixels, + //string + Points, + } + } + namespace Chart { + enum HorizontalAlignment { + //string + Left, + //string + Right, + //string + Middle, + } + } + namespace Chart { + enum Region { + //string + Chart, + //string + Series, + } + } + namespace Chart { + enum VerticalAlignment { + //string + Top, + //string + Bottom, + //string + Middle, + } + } + namespace Chart { + enum ExportingType { + //string + PNG, + //string + JPG, + //string + PDF, + //string + DOCX, + //string + XLSX, + //string + SVG, + } + } + namespace Chart { + enum ExportingOrientation { + //string + Portrait, + //string + Landscape, + } + } + namespace Chart { + enum ExportingMode { + //string + ServerSide, + //string + ClientSide, + } + } + namespace Chart { + enum Unit { + //string + Percentage, + //string + Pixel, + } + } + namespace Chart { + enum ColumnFacet { + //string + Rectangle, + //string + Cylinder, + } + } + namespace Chart { + enum DrawType { + //string + Line, + //string + Area, + //string + Column, + } + } + namespace Chart { + enum FontStyle { + //string + Normal, + //string + Italic, + } + } + namespace Chart { + enum FontWeight { + //string + Regular, + //string + Bold, + //string + Lighter, + } + } + namespace Chart { + enum LabelPosition { + //string + Inside, + //string + Outside, + //string + OutsideExtended, + } + } + namespace Chart { + enum SplitMode { + //string + Position, + //string + Value, + //string + Percentage, + //string + Indexes, + } + } + namespace Chart { + enum boxPlotMode { + //string + Exclusive, + //string + Inclusive, + //string + Normal, + } + } + namespace Chart { + enum RadiusMode { + //string + MinMax, + //string + Auto, + } + } + namespace Chart { + enum LineCap { + //string + Butt, + //string + Round, + //string + Square, + } + } + namespace Chart { + enum LineJoin { + //string + Round, + //string + Bevel, + //string + Miter, + } + } + namespace Chart { + enum ConnectorLineType { + //string + Line, + //string + Bezier, + } + } + namespace Chart { + enum HorizontalTextAlignment { + //string + Center, + //string + Near, + //string + Far, + } + } + namespace Chart { + enum Shape { + //string + None, + //string + LeftArrow, + //string + RightArrow, + //string + Circle, + //string + Cross, + //string + HorizLine, + //string + VertLine, + //string + Diamond, + //string + Rectangle, + //string + Triangle, + //string + Hexagon, + //string + Pentagon, + //string + Star, + //string + Ellipse, + //string + Trapezoid, + //string + UpArrow, + //string + DownArrow, + //string + Image, + //string + SeriesType, + } + } + namespace Chart { + enum TextPosition { + //string + Top, + //string + Bottom, + //string + Middle, + } + } + namespace Chart { + enum VerticalTextAlignment { + //string + Center, + //string + Near, + //string + Far, + } + } + namespace Chart { + enum PyramidMode { + //string + Linear, + //string + Surface, + } + } + namespace Chart { + enum Type { + //string + Area, + //string + Line, + //string + Spline, + //string + Column, + //string + Scatter, + //string + Bubble, + //string + SplineArea, + //string + StepArea, + //string + StepLine, + //string + Pie, + //string + HiLo, + //string + HiLoOpenClose, + //string + Candle, + //string + Bar, + //string + StackingArea, + //string + StackingArea100, + //string + RangeColumn, + //string + StackingColumn, + //string + StackingColumn100, + //string + StackingBar, + //string + StackingBar100, + //string + Pyramid, + //string + Funnel, + //string + Doughnut, + //string + Polar, + //string + Radar, + //string + RangeArea, + } + } + namespace Chart { + enum EmptyPointMode { + //string + Gap, + //string + Zero, + //string + Average, + } + } + namespace Chart { + enum ErrorBarType { + //string + FixedValue, + //string + Percentage, + //string + StandardDeviation, + //string + StandardError, + } + } + namespace Chart { + enum ErrorBarMode { + //string + Both, + //string + Vertical, + //string + Horizontal, + } + } + namespace Chart { + enum ErrorBarDirection { + //string + Both, + //string + Plus, + //string + Minus, + } + } + namespace Chart { + enum Mode { + //string + Series, + //string + Point, + //string + Cluster, + //string + Range, + } + } + namespace Chart { + enum SelectionType { + //string + Single, + //string + Multiple, + } + } + namespace Chart { + enum RangeType { + //string + XY, + //string + X, + //string + Y, + } + } + namespace Chart { + enum CrosshairMode { + //string + Float, + //string + Grouping, + } + } + namespace Chart { + enum CrosshairType { + //string + Crosshair, + //string + Trackball, + } + } + namespace Chart { + enum Alignment { + //string + Center, + //string + Near, + //string + Far, + } + } + namespace Chart { + enum Position { + //string + Left, + //string + Right, + //string + Top, + //string + Bottom, + } + } + namespace Chart { + enum TextOverflow { + //string + None, + //string + Trim, + //string + Wrap, + //string + WrapAndTrim, + } + } + namespace Chart { + enum LabelPlacement { + //string + OnTicks, + //string + BetweenTicks, + } + } + namespace Chart { + enum EdgeLabelPlacement { + //string + None, + //string + Shift, + //string + Hide, + } + } + namespace Chart { + enum IntervalType { + //string + Days, + //string + Hours, + //string + Seconds, + //string + Milliseconds, + //string + Minutes, + //string + Months, + //string + Years, + } + } + namespace Chart { + enum LabelIntersectAction { + //string + None, + //string + Rotate90, + //string + Rotate45, + //string + Wrap, + //string + WrapByword, + //string + Trim, + //string + Hide, + //string + MultipleRows, + } + } + namespace Chart { + enum LabelAlignment { + //string + Near, + //string + Far, + //string + Center, + } + } + namespace Chart { + enum AxisOrientation { + //string + Horizontal, + //string + Vertical, + } + } + namespace Chart { + enum RangePadding { + //string + Additional, + //string + Normal, + //string + None, + //string + Round, + } + } + namespace Chart { + enum MultiLevelLabelsBorderType { + //string + Rectangle, + //string + None, + //string + WithoutTopAndBottom, + //string + Brace, + //string + CurlyBrace, + } + } + namespace Chart { + enum TextAlignment { + //string + MiddleTop, + //string + MiddleCenter, + //string + MiddleBottom, + } + } + namespace Chart { + enum ZIndex { + //string + Inside, + //string + Over, + } + } + namespace Chart { + enum TickLinesPosition { + //string + Inside, + //string + Outside, + } + } + namespace Chart { + enum ValueType { + //string + Double, + //string + Category, + //string + DateTime, + //string + Logarithmic, + } + } + namespace Chart { + enum Theme { + //string + Azure, + //string + FlatLight, + //string + FlatDark, + //string + Azuredark, + //string + Lime, + //string + LimeDark, + //string + Saffron, + //string + SaffronDark, + //string + GradientLight, + //string + GradientDark, + } + } + + class RangeNavigator extends ej.Widget { + static fn: RangeNavigator; + constructor(element: JQuery | Element, options?: RangeNavigator.Model); + static Locale: any; + model: RangeNavigator.Model; + defaults: RangeNavigator.Model; + + /** destroy the range navigator widget + * @returns {void} + */ + _destroy(): void; + } + export namespace RangeNavigator { + + export interface Model { + + /** Toggles the placement of slider exactly on the place it left or on the nearest interval. + * @Default {false} + */ + allowSnapping?: boolean; + + /** Options for customizing the color, opacity and width of the chart border. + */ + border?: Border; + + /** Specifies the data source for range navigator. + */ + dataSource?: any; + + /** Specifies the properties used for customizing the range series. + */ + series?: Series[]; + + /** Specifies the properties used for customizing all the range series. + */ + seriesSettings?: SeriesSetting[]; + + /** Toggles the redrawing of chart on moving the sliders. + * @Default {true} + */ + enableDeferredUpdate?: boolean; + + /** Enable the scrollbar option in the rangenavigator. + * @Default {false} + */ + enableScrollbar?: boolean; + + /** Enable the resize option in the rangenavigator. + * @Default {false} + */ + enableAutoResizing?: boolean; + + /** Toggles the direction of rendering the range navigator control. + * @Default {false} + */ + enableRTL?: boolean; + + /** Sets a value whether to make the range navigator responsive on resize. + * @Default {false} + */ + isResponsive?: boolean; + + /** Options for customizing the labels colors, font, style, size, horizontalAlignment and opacity. + */ + labelSettings?: LabelSettings; + + /** This property is to specify the localization of range navigator. + * @Default {en-US} + */ + locale?: string; + + /** Options for customizing the range navigator. + */ + navigatorStyleSettings?: NavigatorStyleSettings; + + /** Padding specifies the gap between the container and the range navigator. + * @Default {0} + */ + padding?: string; + + /** If the range is not given explicitly, range will be calculated automatically. + * @Default {none} + */ + rangePadding?: ej.datavisualization.RangeNavigator.RangePadding|string; + + /** Options for customizing the starting and ending ranges. + */ + rangeSettings?: RangeSettings; + + /** selectedData is for getting the data when the "rangeChanged" event trigger from client side. + */ + selectedData?: any; + + /** Options for customizing the start and end range values. + */ + selectedRangeSettings?: SelectedRangeSettings; + + /** Options for rendering scrollbar based on the start and end range values. + */ + scrollRangeSettings?: ScrollRangeSettings; + + /** Contains property to customize the hight and width of range navigator. + */ + sizeSettings?: SizeSettings; + + /** By specifying this property the user can change the theme of the range navigator. + * @Default {null} + */ + theme?: string; + + /** Options for customizing the tooltip in range navigator. + */ + tooltipSettings?: TooltipSettings; + + /** Options for configuring minor grid lines, major grid lines, axis line of axis. + */ + valueAxisSettings?: ValueAxisSettings; + + /** You can plot data of type date time or numeric. This property determines the type of data that this axis will handle. + * @Default {datetime} + */ + valueType?: ej.datavisualization.RangeNavigator.ValueType|string; + + /** Specifies the xName for dataSource. This is used to take the x values from dataSource + */ + xName?: any; + + /** Specifies the yName for dataSource. This is used to take the y values from dataSource + */ + yName?: any; + + /** Fires on load of range navigator. + */ + load?(e: LoadEventArgs): void; + + /** Fires after range navigator is loaded. + */ + loaded?(e: LoadedEventArgs): void; + + /** Fires on changing the range of range navigator. + */ + rangeChanged?(e: RangeChangedEventArgs): void; + + /** Fires on changing the scrollbar position of range navigator. + */ + scrollChanged?(e: ScrollChangedEventArgs): void; + + /** Fires on when starting to change the scrollbar position of range navigator. + */ + scrollStart?(e: ScrollStartEventArgs): void; - /** Name of the event - */ - type?: string; + /** Fires on when starting to change the slider position of range navigator. + */ + selectedRangeStart?(e: SelectedRangeStartEventArgs): void; - /** Instance that holds the location of marker symbol - */ - location?: any; + /** Fires when the selection ends in the range navigator + */ + selectedRangeEnd?(e: SelectedRangeEndEventArgs): void; - /** Options to customize the marker style such as color, border and size - */ - style?: any; - } + /** Fires on changes ending the scrollbar position of range navigator. + */ + scrollEnd?(e: ScrollEndEventArgs): void; + } - export interface TitleRenderingEventArgs { + export interface LoadEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** parameters from range navigator + */ + Data?: any; - /** Instance of the chart model object - */ - model?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; + /** returns the range navigator model + */ + model?: any; - /** Option to customize the title location in pixels - */ - location?: any; + /** returns the name of the event + */ + type?: string; + } - /** Read-only option to find the size of the title - */ - size?: any; + export interface LoadedEventArgs { - /** Use this option to add custom text in title - */ - title?: string; - } + /** parameters from range navigator + */ + Data?: any; - export interface ToolTipInitializeEventArgs { + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** returns the range navigator model + */ + model?: any; - /** Instance of the chart model object - */ - model?: any; + /** returns the name of the event + */ + type?: string; + } - /** Name of the event - */ - type?: string; + export interface RangeChangedEventArgs { - /** Text to be displayed in tooltip. Set this option to customize the text displayed in tooltip - */ - currentText?: string; + /** parameters from range navigator + */ + Data?: any; - /** Index of the point on which mouse is hovered - */ - pointIndex?: number; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Index of the series in series collection whose point is hovered by mouse - */ - seriesIndex?: number; - } + /** returns the range navigator model + */ + model?: any; - export interface TrackAxisToolTipEventArgs { + /** returns the name of the event + */ + type?: string; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface ScrollChangedEventArgs { - /** Instance of the chart model object - */ - model?: any; + /** parameters from RangeNavigator + */ + data?: any; - /** Name of the event - */ - type?: string; + /** returns the scrollbar position old start and end range value on changing scrollbar + */ + dataoldRange?: any; - /** Location of the crosshair label in pixels - */ - location?: any; + /** returns the scrollbar position new start and end range value on changing scrollbar + */ + datanewRange?: any; - /** Index of the axis for which crosshair label is displayed - */ - axisIndex?: number; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Instance of the chart axis object for which cross hair label is displayed - */ - crossAxis?: number; + /** returns the RangeNavigator model + */ + model?: any; - /** Text to be displayed in crosshair label. Use this option to add custom text in crosshair label - */ - currentTrackText?: string; - } + /** returns the name of the event + */ + type?: string; + } - export interface TrackToolTipEventArgs { + export interface ScrollStartEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** parameters from RangeNavigator + */ + data?: any; - /** Instance of the chart model object - */ - model?: any; + /** returns the scrollbar position starting range value on changing scrollbar + */ + datastartRange?: string; - /** Name of the event - */ - type?: string; + /** returns the scrollbar position end range value on changing scrollbar + */ + dataendRange?: string; - /** Location of the trackball tooltip in pixels - */ - location?: any; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Index of the point for which trackball tooltip is displayed - */ - pointIndex?: number; + /** returns the RangeNavigator model + */ + model?: any; - /** Index of the series in series collection - */ - seriesIndex?: number; + /** returns the name of the event + */ + type?: string; + } - /** Text to be displayed in trackball tooltip. Use this option to add custom text in trackball tooltip - */ - currentText?: string; + export interface SelectedRangeStartEventArgs { - /** Instance of the series object for which trackball tooltip is displayed. - */ - series?: any; - } + /** parameters from RangeNavigator + */ + data?: any; - export interface AxisLabelClickEventArgs { + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** returns the RangeNavigator model + */ + model?: any; - /** Instance of the chart model object - */ - model?: any; + /** returns the name of the event + */ + type?: string; + } - /** Name of the event - */ - type?: string; + export interface SelectedRangeEndEventArgs { - /** X and Y co-ordinate of the labels in chart area. - */ - location?: any; + /** parameters from RangeNavigator + */ + data?: any; - /** Index of the label. - */ - index?: number; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Instance of the corresponding axis. - */ - axis?: any; + /** returns the RangeNavigator model + */ + model?: any; - /** Label that is clicked. - */ - text?: string; - } + /** returns the name of the event + */ + type?: string; + } + + export interface ScrollEndEventArgs { + + /** parameters from RangeNavigator + */ + data?: any; + + /** returns the scrollbar position old start and end range value on change end of scrollbar + */ + dataoldRange?: any; + + /** returns the scrollbar position new start and end range value on change end of scrollbar + */ + datanewRange?: any; + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the RangeNavigator model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + } + + export interface Border { + + /** Border color of rangenavigator. When enable the scrollbar, the default color will be set as "#B4B4B4". + * @Default {transparent} + */ + color?: string; + + /** Opacity of the rangeNavigator border. + * @Default {1} + */ + opacity?: number; + + /** Width of the RangeNavigator border. + * @Default {1} + */ + width?: number; + } + + export interface Series { + + /** Name of the property in the datasource that contains x value for the series. + * @Default {null} + */ + xName?: string; + + /** Name of the property in the datasource that contains y value for the series. + * @Default {null} + */ + yName?: string; + + /** Specifies the dataSource for the series. It can be an array of JSON objects or an instance of ej.DataManager. + * @Default {null} + */ + dataSource?: any; + + /** Specifies the type of the series to render in chart. + * @Default {column. see Type} + */ + type?: ej.datavisualization.RangeNavigator.Type|string; + + /** Enable/disable the animation of series. + * @Default {false} + */ + enableAnimation?: boolean; + + /** Fill color of the series. + * @Default {null} + */ + fill?: string; + } + + export interface SeriesSetting { + + /** Name of the property in the datasource that contains x value for the series. + * @Default {null} + */ + xName?: string; + + /** Name of the property in the datasource that contains y value for the series. + * @Default {null} + */ + yName?: string; + + /** Specifies the dataSource for the series. It can be an array of JSON objects or an instance of ej.DataManager. + * @Default {null} + */ + dataSource?: any; + + /** Specifies the type of the series to render in chart. + * @Default {column. see Type} + */ + type?: ej.datavisualization.RangeNavigator.Type|string; + + /** Enable/disable the animation of series. + * @Default {false} + */ + enableAnimation?: boolean; + + /** Fill color of the series. + * @Default {null} + */ + fill?: string; + } + + export interface LabelSettingsHigherLevelBorder { + + /** Specifies the border color of grid lines. + * @Default {transparent} + */ + color?: string; + + /** Specifies the border width of grid lines. + * @Default {0.5} + */ + width?: string; + } + + export interface LabelSettingsHigherLevelGridLineStyle { + + /** Specifies the color of grid lines in higher level. + * @Default {#B5B5B5} + */ + color?: string; + + /** Specifies the dashArray of grid lines in higher level. + * @Default {20 5 0} + */ + dashArray?: string; + + /** Specifies the width of grid lines in higher level. + * @Default {#B5B5B5} + */ + width?: string; + } + + export interface LabelSettingsHigherLevelStyleFont { + + /** Specifies the label font color. Labels render with the specified font color. + * @Default {black} + */ + color?: string; + + /** Specifies the label font family. Labels render with the specified font family. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the label font style. Labels render with the specified font style. + * @Default {Normal} + */ + fontStyle?: string; + + /** Specifies the label font weight. Labels render with the specified font weight. + * @Default {regular} + */ + fontWeight?: string; + + /** Specifies the label opacity. Labels render with the specified opacity. + * @Default {1} + */ + opacity?: number; + + /** Specifies the label font size. Labels render with the specified font size. + * @Default {12px} + */ + size?: string; + } + + export interface LabelSettingsHigherLevelStyle { + + /** Options for customizing the font properties. + */ + font?: LabelSettingsHigherLevelStyleFont; + + /** Specifies the horizontal text alignment of the text in label. + * @Default {middle} + */ + horizontalAlignment?: string; + } + + export interface LabelSettingsHigherLevel { + + /** Options for customizing the border of grid lines in higher level. + */ + border?: LabelSettingsHigherLevelBorder; + + /** Specifies the fill color of higher level labels. + * @Default {transparent} + */ + fill?: string; + + /** Options for customizing the grid line colors, width, dashArray, border. + */ + gridLineStyle?: LabelSettingsHigherLevelGridLineStyle; + + /** Specifies the intervalType for higher level labels. See + * @Default {auto} + */ + intervalType?: ej.datavisualization.RangeNavigator.IntervalType|string; + + /** Specifies the position of the labels to render either inside or outside of plot area + * @Default {outside} + */ + labelPlacement?: ej.datavisualization.RangeNavigator.LabelPlacement|string; + + /** Specifies the position of the labels in higher level + * @Default {top} + */ + position?: ej.datavisualization.RangeNavigator.Position|string; + + /** Options for customizing the style of higher level labels. + */ + style?: LabelSettingsHigherLevelStyle; + + /** Toggles the visibility of higher level labels. + * @Default {true} + */ + visible?: boolean; + } + + export interface LabelSettingsLowerLevelBorder { + + /** Specifies the border color of grid lines. + * @Default {transparent} + */ + color?: string; + + /** Specifies the border width of grid lines. + * @Default {0.5} + */ + width?: string; + } + + export interface LabelSettingsLowerLevelGridLineStyle { + + /** Specifies the color of grid lines in lower level. + * @Default {#B5B5B5} + */ + color?: string; + + /** Specifies the dashArray of gridLines in lowerLevel. + * @Default {20 5 0} + */ + dashArray?: string; + + /** Specifies the width of grid lines in lower level. + * @Default {#B5B5B5} + */ + width?: string; + } + + export interface LabelSettingsLowerLevelStyleFont { + + /** Specifies the color of labels. Label text render in this specified color. + * @Default {black} + */ + color?: string; + + /** Specifies the font family of labels. Label text render in this specified font family. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the font style of labels. Label text render in this specified font style. + * @Default {Normal} + */ + fontStyle?: string; + + /** Specifies the font weight of labels. Label text render in this specified font weight. + * @Default {regular} + */ + fontWeight?: string; + + /** Specifies the opacity of labels. Label text render in this specified opacity. + * @Default {12px} + */ + opacity?: string; + + /** Specifies the size of labels. Label text render in this specified size. + * @Default {12px} + */ + size?: string; + } + + export interface LabelSettingsLowerLevelStyle { + + /** Options for customizing the font of labels. + */ + font?: LabelSettingsLowerLevelStyleFont; + + /** Specifies the horizontal text alignment of the text in label. + * @Default {middle} + */ + horizontalAlignment?: string; + } + + export interface LabelSettingsLowerLevel { + + /** Options for customizing the border of grid lines in lower level. + */ + border?: LabelSettingsLowerLevelBorder; + + /** Specifies the fill color of labels in lower level. + * @Default {transparent} + */ + fill?: string; + + /** Options for customizing the grid lines in lower level. + */ + gridLineStyle?: LabelSettingsLowerLevelGridLineStyle; + + /** Specifies the intervalType of the labels in lower level.See IntervalType + * @Default {auto} + */ + intervalType?: ej.datavisualization.RangeNavigator.IntervalType|string; + + /** Specifies the position of the labels to render either inside or outside of plot area. See LabelPlacement + * @Default {outside} + */ + labelPlacement?: ej.datavisualization.RangeNavigator.LabelPlacement|string; + + /** Specifies the position of the labels in lower level.See Position + * @Default {bottom} + */ + position?: ej.datavisualization.RangeNavigator.Position|string; + + /** Options for customizing the style of labels. + */ + style?: LabelSettingsLowerLevelStyle; + + /** Toggles the visibility of labels in lower level. + * @Default {true} + */ + visible?: boolean; + } + + export interface LabelSettingsStyleFont { + + /** Specifies the label color. This color is applied to the labels in range navigator. + * @Default {#333333} + */ + color?: string; + + /** Specifies the label font family. Labels render with the specified font family. + * @Default {Segoe UI} + */ + family?: string; + + /** Specifies the label font opacity. Labels render with the specified font opacity. + * @Default {1} + */ + opacity?: number; + + /** Specifies the label font size. Labels render with the specified font size. + * @Default {1px} + */ + size?: string; + + /** Specifies the label font style. Labels render with the specified font style.. + * @Default {Normal} + */ + style?: ej.datavisualization.RangeNavigator.FontStyle|string; + + /** Specifies the label font weight + * @Default {regular} + */ + weight?: ej.datavisualization.RangeNavigator.FontWeight|string; + } + + export interface LabelSettingsStyle { + + /** Options for customizing the font of labels in range navigator. + */ + font?: LabelSettingsStyleFont; + + /** Specifies the horizontalAlignment of the label in RangeNavigator + * @Default {middle} + */ + horizontalAlignment?: ej.datavisualization.RangeNavigator.HorizontalAlignment|string; + } + + export interface LabelSettings { + + /** Options for customizing the higher level labels in range navigator. + */ + higherLevel?: LabelSettingsHigherLevel; + + /** Options for customizing the labels in lower level. + */ + lowerLevel?: LabelSettingsLowerLevel; + + /** Options for customizing the style of labels in range navigator. + */ + style?: LabelSettingsStyle; + } + + export interface NavigatorStyleSettingsBorder { + + /** Specifies the border color of range navigator. + * @Default {transparent} + */ + color?: string; + + /** Specifies the dash array of range navigator. + * @Default {null} + */ + dashArray?: string; + + /** Specifies the border width of range navigator. + * @Default {0.5} + */ + width?: number; + } + + export interface NavigatorStyleSettingsMajorGridLineStyle { + + /** Specifies the color of major grid lines in range navigator. + * @Default {#B5B5B5} + */ + color?: string; + + /** Toggles the visibility of major grid lines. + * @Default {true} + */ + visible?: boolean; + } + + export interface NavigatorStyleSettingsMinorGridLineStyle { + + /** Specifies the color of minor grid lines in range navigator. + * @Default {#B5B5B5} + */ + color?: string; + + /** Toggles the visibility of minor grid lines. + * @Default {true} + */ + visible?: boolean; + } + + export interface NavigatorStyleSettingsHighlightSettingsBorder { + + /** To set the border color to the highlight. + * @Default {null} + */ + color?: string; + + /** To set the border width to the highlight. + * @Default {1} + */ + width?: number; + } + + export interface NavigatorStyleSettingsHighlightSettings { + + /** Enable the highlight settings in range navigator. + * @Default {false} + */ + enable?: boolean; + + /** To set the color to the highlight. + * @Default {null} + */ + color?: string; + + /** To set the opacity to the highlight. + * @Default {0.5} + */ + opacity?: number; + + /** Contains the border properties for highlighting rectangle. + */ + border?: NavigatorStyleSettingsHighlightSettingsBorder; + } + + export interface NavigatorStyleSettingsSelectionSettingsBorder { + + /** To set the border color to the selection. + * @Default {null} + */ + color?: string; + + /** To set the border width to the selection. + * @Default {1} + */ + width?: number; + } + + export interface NavigatorStyleSettingsSelectionSettings { + + /** Enable the selection settings in range navigator. + * @Default {false} + */ + enable?: boolean; + + /** To set the color to the selection. + * @Default {null} + */ + color?: string; + + /** To set the opacity to the selection. + * @Default {0.5} + */ + opacity?: number; + + /** Contains the border properties for selecting the rectangle. + */ + border?: NavigatorStyleSettingsSelectionSettingsBorder; + } + + export interface NavigatorStyleSettings { + + /** Specifies the background color of range navigator. + * @Default {#dddddd} + */ + background?: string; + + /** Options for customizing the border color and width of range navigator. + */ + border?: NavigatorStyleSettingsBorder; + + /** Specifies the left side thumb template in range navigator we can give either div id or HTML string + * @Default {null} + */ + leftThumbTemplate?: string; + + /** Options for customizing the major grid lines. + */ + majorGridLineStyle?: NavigatorStyleSettingsMajorGridLineStyle; + + /** Options for customizing the minor grid lines. + */ + minorGridLineStyle?: NavigatorStyleSettingsMinorGridLineStyle; + + /** Specifies the opacity of RangeNavigator. + * @Default {1} + */ + opacity?: number; + + /** Specifies the right side thumb template in range navigator we can give either div id or HTML string + * @Default {null} + */ + rightThumbTemplate?: string; + + /** Specifies the color of the selected region in range navigator. + * @Default {#EFEFEF} + */ + selectedRegionColor?: string; + + /** Specifies the opacity of Selected Region. + * @Default {0} + */ + selectedRegionOpacity?: number; + + /** Specifies the color of the thumb in range navigator. + * @Default {#2382C3} + */ + thumbColor?: string; + + /** Specifies the radius of the thumb in range navigator. + * @Default {10} + */ + thumbRadius?: number; + + /** Specifies the stroke color of the thumb in range navigator. + * @Default {#303030} + */ + thumbStroke?: string; + + /** Specifies the color of the unselected region in range navigator. + * @Default {#5EABDE} + */ + unselectedRegionColor?: string; + + /** Specifies the opacity of Unselected Region. + * @Default {0.3} + */ + unselectedRegionOpacity?: number; + + /** Contains the options for highlighting the range navigator on mouse over. + */ + highlightSettings?: NavigatorStyleSettingsHighlightSettings; + + /** Contains the options for selection the range navigator on mouse over. + */ + selectionSettings?: NavigatorStyleSettingsSelectionSettings; + } + + export interface RangeSettings { + + /** Specifies the ending range of range navigator. + * @Default {null} + */ + end?: string; + + /** Specifies the starting range of range navigator. + * @Default {null} + */ + start?: string; + } + + export interface SelectedRangeSettings { + + /** Specifies the ending range of range navigator. + * @Default {null} + */ + end?: string; + + /** Specifies the starting range of range navigator. + * @Default {null} + */ + start?: string; + } + + export interface ScrollRangeSettings { + + /** Specifies the ending range of range navigator scrollbar and that should be greater than the rangenavigator datasource end value. + * @Default {null} + */ + end?: string; + + /** Specifies the starting range of range navigator scrollbar and that should be less than the rangenavigator datasource start value. + * @Default {null} + */ + start?: string; + } + + export interface SizeSettings { + + /** Specifies height of the range navigator. + * @Default {null} + */ + height?: string; + + /** Specifies width of the range navigator. + * @Default {null} + */ + width?: string; + } + + export interface TooltipSettingsFont { + + /** Specifies the color of text in tooltip. Tooltip text render in the specified color. + * @Default {#FFFFFF} + */ + color?: string; + + /** Specifies the font family of text in tooltip. Tooltip text render in the specified font family. + * @Default {Segoe UI} + */ + family?: string; + + /** Specifies the font style of text in tooltip. Tooltip text render in the specified font style. + * @Default {ej.datavisualization.RangeNavigator.fontStyle.Normal} + */ + fontStyle?: string; + + /** Specifies the opacity of text in tooltip. Tooltip text render in the specified opacity. + * @Default {1} + */ + opacity?: number; + + /** Specifies the size of text in tooltip. Tooltip text render in the specified size. + * @Default {10px} + */ + size?: string; + + /** Specifies the weight of text in tooltip. Tooltip text render in the specified weight. + * @Default {ej.datavisualization.RangeNavigator.weight.Regular} + */ + weight?: string; + } + + export interface TooltipSettings { + + /** Specifies the background color of tooltip. + * @Default {#303030} + */ + backgroundColor?: string; + + /** Options for customizing the font in tooltip. + */ + font?: TooltipSettingsFont; + + /** Specifies the format of text to be displayed in tooltip. + * @Default {MM/dd/yyyy} + */ + labelFormat?: string; + + /** Specifies the mode of displaying the tooltip. Neither to display the tooltip always nor on demand. + * @Default {null} + */ + tooltipDisplayMode?: string; + + /** Toggles the visibility of tooltip. + * @Default {true} + */ + visible?: boolean; + } + + export interface ValueAxisSettingsAxisLine { + + /** Toggles the visibility of axis line. + * @Default {none} + */ + visible?: string; + } + + export interface ValueAxisSettingsFont { + + /** Text in axis render with the specified size. + * @Default {0px} + */ + size?: string; + } + + export interface ValueAxisSettingsMajorGridLines { + + /** Toggles the visibility of major grid lines. + * @Default {false} + */ + visible?: boolean; + } + + export interface ValueAxisSettingsMajorTickLines { + + /** Specifies the size of the majorTickLines in range navigator + * @Default {0} + */ + size?: number; + + /** Toggles the visibility of major tick lines. + * @Default {true} + */ + visible?: boolean; + + /** Specifies width of the major tick lines. + * @Default {0} + */ + width?: number; + } + + export interface ValueAxisSettingsRange { + + /** Default Value + * @Default {null} + */ + min?: number; + + /** Default Value + * @Default {null} + */ + max?: number; + + /** Default Value + * @Default {null} + */ + interval?: number; + } + + export interface ValueAxisSettings { + + /** Options for customizing the axis line. + */ + axisLine?: ValueAxisSettingsAxisLine; + + /** Options for customizing the font of the axis. + */ + font?: ValueAxisSettingsFont; + + /** Options for customizing the major grid lines. + */ + majorGridLines?: ValueAxisSettingsMajorGridLines; + + /** Options for customizing the major tick lines in axis. + */ + majorTickLines?: ValueAxisSettingsMajorTickLines; + + /** You can customize the range of the axis by setting minimum , maximum and interval. + */ + range?: ValueAxisSettingsRange; + + /** If the range is not given explicitly, range will be calculated automatically. You can customize the automatic range calculation using rangePadding. + * @Default {none} + */ + rangePadding?: string; + + /** Toggles the visibility of axis in range navigator. + * @Default {false} + */ + visible?: boolean; + } + } + namespace RangeNavigator { + enum Type { + //string + Area, + //string + Line, + //string + Spline, + //string + StepArea, + //string + SplineArea, + //string + StepLine, + } + } + namespace RangeNavigator { + enum IntervalType { + //string + Years, + //string + Quarters, + //string + Months, + //string + Weeks, + //string + Days, + //string + Hours, + //string + Minutes, + } + } + namespace RangeNavigator { + enum LabelPlacement { + //string + Inside, + //string + Outside, + } + } + namespace RangeNavigator { + enum Position { + //string + Top, + //string + Bottom, + } + } + namespace RangeNavigator { + enum FontStyle { + //string + Normal, + //string + Bold, + //string + Italic, + } + } + namespace RangeNavigator { + enum FontWeight { + //string + Regular, + //string + Lighter, + } + } + namespace RangeNavigator { + enum HorizontalAlignment { + //string + Middle, + //string + Left, + //string + Right, + } + } + namespace RangeNavigator { + enum RangePadding { + //string + Additional, + //string + Normal, + //string + None, + //string + Round, + } + } + namespace RangeNavigator { + enum ValueType { + //string + Numeric, + //string + DateTime, + } + } + + class BulletGraph extends ej.Widget { + static fn: BulletGraph; + constructor(element: JQuery | Element, options?: BulletGraph.Model); + static Locale: any; + model: BulletGraph.Model; + defaults: BulletGraph.Model; + + /** To destroy the bullet graph + * @returns {void} + */ + destroy(): void; + + /** To redraw the bullet graph + * @returns {void} + */ + redraw(): void; + + /** To set the value for comparative measure in bullet graph. + * @returns {void} + */ + setComparativeMeasureSymbol(): void; + + /** To set the value for feature measure bar. + * @returns {void} + */ + setFeatureMeasureBarValue(): void; + } + export namespace BulletGraph { + + export interface Model { + + /** Toggles the visibility of the range stroke color of the labels. + * @Default {false} + */ + applyRangeStrokeToLabels?: boolean; + + /** Toggles the visibility of the range stroke color of the ticks. + * @Default {false} + */ + applyRangeStrokeToTicks?: boolean; + + /** Contains property to customize the caption in bullet graph. + */ + captionSettings?: CaptionSettings; + + /** Comparative measure bar in bullet graph render till the specified value. + * @Default {0} + */ + comparativeMeasureValue?: number; + + /** Toggles the animation of bullet graph. + * @Default {true} + */ + enableAnimation?: boolean; + + /** Controls whether bullet graph has to be responsive while resizing. + * @Default {true} + */ + enableResizing?: boolean; + + /** Specifies the direction of flow in bullet graph. Neither it may be backward nor forward. + * @Default {forward} + */ + flowDirection?: ej.datavisualization.BulletGraph.FlowDirection|string; + + /** Specifies the height of the bullet graph. + * @Default {90} + */ + height?: number; + + /** Sets a value whether to make the bullet graph responsive on resize. + * @Default {true} + */ + isResponsive?: boolean; + + /** Specifies to convert the date object to string, using locale settings. + * @Default {false} + */ + enableGroupSeparator?: boolean; + + /** Name of the culture based on which bulletgraph should be localized. + * @Default {en-US} + */ + locale?: string; + + /** Bullet graph will render in the specified orientation. + * @Default {horizontal} + */ + orientation?: ej.datavisualization.BulletGraph.Orientation|string; + + /** Contains property to customize the qualitative ranges. + */ + qualitativeRanges?: QualitativeRange[]; + + /** Size of the qualitative range depends up on the specified value. + * @Default {32} + */ + qualitativeRangeSize?: number; + + /** Length of the quantitative range depends up on the specified value. + * @Default {475} + */ + quantitativeScaleLength?: number; + + /** Contains all the properties to customize quantitative scale. + */ + quantitativeScaleSettings?: QuantitativeScaleSettings; + + /** By specifying this property the user can change the theme of the bullet graph. + * @Default {flatlight} + */ + theme?: string; + + /** Contains all the properties to customize tooltip. + */ + tooltipSettings?: TooltipSettings; + + /** Feature measure bar in bullet graph render till the specified value. + * @Default {0} + */ + value?: number; + + /** Specifies the width of the bullet graph. + * @Default {595} + */ + width?: number; + + /** Fires on rendering the caption of bullet graph. + */ + drawCaption?(e: DrawCaptionEventArgs): void; + + /** Fires on rendering the category. + */ + drawCategory?(e: DrawCategoryEventArgs): void; + + /** Fires on rendering the comparative measure symbol. + */ + drawComparativeMeasureSymbol?(e: DrawComparativeMeasureSymbolEventArgs): void; + + /** Fires on rendering the feature measure bar. + */ + drawFeatureMeasureBar?(e: DrawFeatureMeasureBarEventArgs): void; + + /** Fires on rendering the indicator of bullet graph. + */ + drawIndicator?(e: DrawIndicatorEventArgs): void; + + /** Fires on rendering the labels. + */ + drawLabels?(e: DrawLabelsEventArgs): void; + + /** Fires on rendering the ticks. + */ + drawTicks?(e: DrawTicksEventArgs): void; + + /** Fires on rendering the qualitative ranges. + */ + drawQualitativeRanges?(e: DrawQualitativeRangesEventArgs): void; + + /** Fires on loading bullet graph. + */ + load?(e: LoadEventArgs): void; + } + + export interface DrawCaptionEventArgs { + + /** returns the object of the bullet graph. + */ + Object?: any; - export interface AxisLabelMouseMoveEventArgs { + /** returns the options of the scale element. + */ + scaleElement?: HTMLElement; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** returns the current captionSettings element. + */ + captionElement?: HTMLElement; - /** Instance of the chart model object - */ - model?: any; + /** returns the type of the captionSettings. + */ + captionType?: string; + } - /** Name of the event - */ - type?: string; + export interface DrawCategoryEventArgs { - /** X and Y co-ordinate of the labels in chart area. - */ - location?: any; + /** returns the object of the bullet graph. + */ + Object?: any; - /** Index of the label. - */ - index?: number; + /** returns the options of the scale element. + */ + scaleElement?: HTMLElement; - /** Instance of the corresponding axis. - */ - axis?: any; + /** returns the options of category element. + */ + categoryElement?: HTMLElement; - /** Label that is hovered. - */ - text?: string; - } + /** returns the text value of the category that is drawn. + */ + Value?: string; + } - export interface ChartClickEventArgs { + export interface DrawComparativeMeasureSymbolEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** returns the object of the bullet graph. + */ + Object?: any; - /** Instance of the chart model object - */ - model?: any; + /** returns the options of the scale element. + */ + scaleElement?: HTMLElement; - /** Name of the event - */ - type?: string; + /** returns the options of comparative measure element. + */ + targetElement?: HTMLElement; - /** X and Y co-ordinate of the points with respect to chart area. - */ - location?: any; + /** returns the value of the comparative measure symbol. + */ + Value?: number; + } - /** ID of the target element. - */ - id?: string; + export interface DrawFeatureMeasureBarEventArgs { - /** Width and height of the chart. - */ - size?: any; + /** returns the object of the bullet graph. + */ + Object?: any; - /** x-coordinate of the pointer, relative to the page - */ - pageX?: number; + /** returns the options of the scale element. + */ + scaleElement?: HTMLElement; - /** y-coordinate of the pointer, relative to the page - */ - pageY?: number; - } + /** returns the options of feature measure element. + */ + currentElement?: HTMLElement; - export interface ChartMouseMoveEventArgs { + /** returns the value of the feature measure bar. + */ + Value?: number; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface DrawIndicatorEventArgs { - /** Instance of the chart model object - */ - model?: any; + /** returns an object to customize bullet graph indicator text and symbol before rendering it. + */ + indicatorSettings?: any; - /** Name of the event - */ - type?: string; + /** returns the object of bullet graph. + */ + model?: any; - /** X and Y co-ordinate of the points with respect to chart area. - */ - location?: any; + /** returns the type of event. + */ + type?: string; - /** ID of the target element. - */ - id?: string; + /** for canceling the event. + */ + cancel?: boolean; + } - /** Width and height of the chart. - */ - size?: any; + export interface DrawLabelsEventArgs { - /** x-coordinate of the pointer, relative to the page - */ - pageX?: number; + /** returns the object of the bullet graph. + */ + Object?: any; - /** y-coordinate of the pointer, relative to the page - */ - pageY?: number; - } + /** returns the options of the scale element. + */ + scaleElement?: HTMLElement; - export interface ChartDoubleClickEventArgs { + /** returns the current label element. + */ + tickElement?: HTMLElement; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** returns the label type. + */ + labelType?: string; + } - /** Instance of the chart model object - */ - model?: any; + export interface DrawTicksEventArgs { - /** Name of the event - */ - type?: string; + /** returns the model of the bullet graph. + */ + model?: any; - /** X and Y co-ordinate of the points with respect to chart area. - */ - location?: any; + /** returns the name of the event. + */ + type?: string; - /** ID of the target element. - */ - id?: string; + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; - /** Width and height of the chart. - */ - size?: any; + /** returns the settings for majorTicks. + */ + majorTickSettings?: any; - /** x-coordinate of the pointer, relative to the page - */ - pageX?: number; + /** returns the settings for minorTicks. + */ + minorTickSettings?: any; - /** y-coordinate of the pointer, relative to the page - */ - pageY?: number; - } + /** returns the maximum value. + */ + maximum?: number; - export interface AnnotationClickEventArgs { + /** returns the minimum value. + */ + minimum?: number; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** returns the interval value. + */ + interval?: number; - /** Instance of the chart model object - */ - model?: any; + /** returns the value of minorTicksPerInterval. + */ + minorTickPerInterval?: number; + } + + export interface DrawQualitativeRangesEventArgs { - /** Name of the event - */ - type?: string; - - /** X and Y co-ordinate of the annotation in chart area. - */ - location?: any; - - /** Information about the annotation, like Coordinate unit, Region, content - */ - contentData?: any; - - /** x-coordinate of the pointer, relative to the page - */ - pageX?: number; - - /** y-coordinate of the pointer, relative to the page - */ - pageY?: number; - } - - export interface AfterResizeEventArgs { - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the chart model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - - /** Chart width, after resize - */ - width?: number; - - /** Chart height, after resize - */ - height?: number; - - /** Chart width, before resize - */ - prevWidth?: number; - - /** Chart height, before resize - */ - prevHeight?: number; - - /** Chart width, when the chart was first rendered - */ - originalWidth?: number; - - /** Chart height, when the chart was first rendered - */ - originalHeight?: number; - } - - export interface BeforeResizeEventArgs { - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the chart model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - - /** Chart width, before resize - */ - currentWidth?: number; - - /** Chart height, before resize - */ - currentHeight?: number; - - /** Chart width, after resize - */ - newWidth?: number; - - /** Chart height, after resize - */ - newHeight?: number; - } - - export interface ErrorBarRenderingEventArgs { - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the chart model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - - /** Error bar Object - */ - errorbar?: any; - } - - export interface ScrollChangedEventArgs { - - /** parameters from RangeNavigator - */ - data?: any; - - /** returns the scrollbar position old start and end range value on changing scrollbar - */ - dataoldRange?: any; - - /** returns the scrollbar position new start and end range value on changing scrollbar - */ - datanewRange?: any; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RangeNavigator model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface ScrollStartEventArgs { - - /** parameters from RangeNavigator - */ - data?: any; - - /** returns the scrollbar position starting range value on changing scrollbar - */ - datastartRange?: string; - - /** returns the scrollbar position end range value on changing scrollbar - */ - dataendRange?: string; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RangeNavigator model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface ScrollEndEventArgs { - - /** parameters from RangeNavigator - */ - data?: any; - - /** returns the scrollbar position old start and end range value on change end of scrollbar - */ - dataoldRange?: any; - - /** returns the scrollbar position new start and end range value on change end of scrollbar - */ - datanewRange?: any; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RangeNavigator model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface AnnotationsMargin { - - /** Annotation is placed at the specified value above its original position. - * @Default {0} - */ - bottom?: number; - - /** Annotation is placed at the specified value from left side of its original position. - * @Default {0} - */ - left?: number; - - /** Annotation is placed at the specified value from the right side of its original position. - * @Default {0} - */ - right?: number; - - /** Annotation is placed at the specified value under its original position. - * @Default {0} - */ - top?: number; - } - - export interface Annotation { - - /** Angle to rotate the annotation in degrees. - * @Default {'0'} - */ - angle?: number; - - /** Text content or id of a HTML element to be displayed as annotation. - */ - content?: string; - - /** Specifies how annotations have to be placed in Chart. - * @Default {none. See CoordinateUnit} - */ - coordinateUnit?: ej.datavisualization.Chart.CoordinateUnit | string; - - /** Specifies the horizontal alignment of the annotation. - * @Default {middle. See HorizontalAlignment} - */ - horizontalAlignment?: ej.datavisualization.Chart.HorizontalAlignment | string; - - /** Options to customize the margin of annotation. - */ - margin?: AnnotationsMargin; - - /** Controls the opacity of the annotation. - * @Default {1} - */ - opacity?: number; - - /** Specifies whether annotation has to be placed with respect to chart or series. - * @Default {chart. See Region} - */ - region?: ej.datavisualization.Chart.Region | string; - - /** Specifies the vertical alignment of the annotation. - * @Default {middle. See VerticalAlignment} - */ - verticalAlignment?: ej.datavisualization.Chart.VerticalAlignment | string; - - /** Controls the visibility of the annotation. - * @Default {false} - */ - visible?: boolean; - - /** Represents the horizontal offset when coordinateUnit is pixels.when coordinateUnit is points, it represents the x-coordinate of axis bounded with xAxisName property - * or primary X axis when xAxisName is not provided.This property is not applicable when coordinateUnit is none. - * @Default {0} - */ - x?: number; - - /** Name of the horizontal axis to be used for positioning the annotation. This property is applicable only when coordinateUnit is points. - */ - xAxisName?: string; - - /** Represents the vertical offset when coordinateUnit is pixels.When coordinateUnit is points, it represents the y-coordinate of axis bounded with - * yAxisName property or primary Y axis when yAxisName is not provided.This property is not applicable when coordinateUnit is none. - * @Default {0} - */ - y?: number; - - /** Name of the vertical axis to be used for positioning the annotation.This property is applicable only when coordinateUnit is points. - */ - yAxisName?: string; - } - - export interface Border { - - /** Border color of the chart. - * @Default {null} - */ - color?: string; - - /** Opacity of the chart border. - * @Default {0.3} - */ - opacity?: number; - - /** Width of the Chart border. - * @Default {0} - */ - width?: number; - } - - export interface ExportSettings { - - /** Specifies the downloading filename - * @Default {chart} - */ - filename?: string; - - /** Specifies the name of the action URL - */ - action?: string; - - /** Specifies the angle for rotation - * @Default {0} - */ - angle?: number; - - /** Specifies the format of the file to export - * @Default {png} - */ - type?: ej.datavisualization.Chart.ExportingType | string; - - /** Specifies the orientation of the document - * @Default {portrait} - */ - orientation?: ej.datavisualization.Chart.ExportingOrientation | string; - - /** Specifies the mode of exporting - * @Default {client} - */ - mode?: ej.datavisualization.Chart.ExportingMode | string; - - /** Enable/ disable the multiple excel exporting - * @Default {false} - */ - multipleExport?: boolean; - } - - export interface ChartAreaBorder { - - /** Border color of the plot area. - * @Default {Gray} - */ - color?: string; - - /** Opacity of the plot area border. - * @Default {0.3} - */ - opacity?: number; - - /** Border width of the plot area. - * @Default {0.5} - */ - width?: number; - } - - export interface ChartArea { - - /** Background color of the plot area. - * @Default {transparent} - */ - background?: string; - - /** Options for customizing the border of the plot area. - */ - border?: ChartAreaBorder; - } - - export interface ColumnDefinition { - - /** Specifies the unit to measure the width of the column in plotting area. - * @Default {'pixel'. See Unit} - */ - unit?: ej.datavisualization.Chart.Unit | string; - - /** Width of the column in plotting area. Width is measured in either pixel or percentage based on the value of unit property. - * @Default {50} - */ - columnWidth?: number; - - /** Color of the line that indicates the starting point of the column in plotting area. - * @Default {transparent} - */ - lineColor?: string; - - /** Width of the line that indicates the starting point of the column in plot area. - * @Default {1} - */ - lineWidth?: number; - } - - export interface CommonSeriesOptionsBorder { - - /** Border color of all series. - * @Default {transparent} - */ - color?: string; - - /** DashArray for border of the series. - * @Default {null} - */ - dashArray?: string; - - /** Border width of all series. - * @Default {1} - */ - width?: number; - } - - export interface CommonSeriesOptionsFont { - - /** Font color of the text in all series. - * @Default {#707070} - */ - color?: string; - - /** Font Family for all the series. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the font Style for all the series. - * @Default {normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Specifies the font weight for all the series. - * @Default {regular} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity for text in all the series. - * @Default {1} - */ - opacity?: number; - - /** Font size for text in all the series. - * @Default {12px} - */ - size?: string; - } - - export interface CommonSeriesOptionsMarkerBorder { - - /** Border color of the marker shape. - * @Default {white} - */ - color?: string; - - /** Border width of the marker shape. - * @Default {3} - */ - width?: number; - } - - export interface CommonSeriesOptionsMarkerDataLabelBorder { - - /** Border color of the data label. - * @Default {null} - */ - color?: string; - - /** Border width of the data label. - * @Default {0.1} - */ - width?: number; - } - - export interface CommonSeriesOptionsMarkerDataLabelConnectorLine { - - /** Specifies when the connector has to be drawn as Bezier curve or straight line. This is applicable only for Pie and Doughnut chart types. - * @Default {line. See ConnectorLineType} - */ - type?: ej.datavisualization.Chart.ConnectorLineType | string; - - /** Width of the connector. - * @Default {0.5} - */ - width?: number; - - /** Color of the connector line. - * @Default {#565656} - */ - color?: string; - - /** Height of the connector line. - * @Default {null} - */ - height?: string; - } - - export interface CommonSeriesOptionsMarkerDataLabelFont { - - /** Font family of the data label. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the data label. - * @Default {normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the data label. - * @Default {regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the text. - * @Default {1} - */ - opacity?: number; - - /** Font color of the data label text. - * @Default {null} - */ - color?: string; - - /** Font size of the data label. - * @Default {12px} - */ - size?: string; - } - - export interface CommonSeriesOptionsMarkerDataLabelMargin { - - /** Bottom margin of the text. - * @Default {5} - */ - bottom?: number; - - /** Left margin of the text. - * @Default {5} - */ - left?: number; - - /** Right margin of the text. - * @Default {5} - */ - right?: number; - - /** Top margin of the text. - * @Default {5} - */ - top?: number; - } - - export interface CommonSeriesOptionsMarkerDataLabel { - - /** Angle of the data label in degrees. Only the text gets rotated, whereas the background and border does not rotate. - * @Default {null} - */ - angle?: number; - - /** Maximum label width of the data label. - * @Default {null} - */ - maximumLabelWidth?: number; - - /** Enable the wrap option to the data label. - * @Default {false} - */ - enableWrap?: boolean; - - /** Options for customizing the border of the data label. - */ - border?: CommonSeriesOptionsMarkerDataLabelBorder; - - /** Options for displaying and customizing the line that connects point and data label. - */ - connectorLine?: CommonSeriesOptionsMarkerDataLabelConnectorLine; - - /** Background color of the data label. - * @Default {null} - */ - fill?: string; - - /** Options for customizing the data label font. - */ - font?: CommonSeriesOptionsMarkerDataLabelFont; - - /** Horizontal alignment of the data label. - * @Default {center} - */ - horizontalTextAlignment?: ej.datavisualization.Chart.HorizontalTextAlignment | string; - - /** Margin of the text to its background shape. The size of the background shape increases based on the margin applied to its text. - */ - margin?: CommonSeriesOptionsMarkerDataLabelMargin; - - /** Opacity of the data label. - * @Default {1} - */ - opacity?: number; - - /** Background shape of the data label. - * @Default {none. See Shape} - */ - shape?: ej.datavisualization.Chart.Shape | string; - - /** Custom template to format the data label content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. - */ - template?: string; - - /** Name of a field in data source, where datalabel text is displayed. - */ - textMappingName?: string; - - /** Specifies the position of the data label. This property can be used only for the series such as column, bar, stacked column, stacked bar, 100% stacked column, 100% stacked bar, candle and OHLC. - * @Default {top. See TextPosition} - */ - textPosition?: ej.datavisualization.Chart.TextPosition | string; - - /** Vertical alignment of the data label. - * @Default {center} - */ - verticalTextAlignment?: ej.datavisualization.Chart.VerticalTextAlignment | string; - - /** Controls the visibility of the data labels. - * @Default {false} - */ - visible?: boolean; - } - - export interface CommonSeriesOptionsMarkerSize { - - /** Height of the marker. - * @Default {6} - */ - height?: number; - - /** Width of the marker. - * @Default {6} - */ - width?: number; - } - - export interface CommonSeriesOptionsMarker { - - /** Options for customizing the border of the marker shape. - */ - border?: CommonSeriesOptionsMarkerBorder; - - /** Options for displaying and customizing data labels. - */ - dataLabel?: CommonSeriesOptionsMarkerDataLabel; - - /** Color of the marker shape. - * @Default {null} - */ - fill?: string; - - /** The URL for the Image to be displayed as marker. In order to display image as marker, set series.marker.shape as ‘image’. - */ - imageUrl?: string; - - /** Opacity of the marker. - * @Default {1} - */ - opacity?: number; - - /** Specifies the shape of the marker. - * @Default {circle. See Shape} - */ - shape?: ej.datavisualization.Chart.Shape | string; - - /** Options for customizing the size of the marker shape. - */ - size?: CommonSeriesOptionsMarkerSize; - - /** Controls the visibility of the marker shape. - * @Default {false} - */ - visible?: boolean; - } - - export interface CommonSeriesOptionsOutlierSettingsSize { - - /** Height of the outlier shape. - * @Default {6} - */ - height?: number; - - /** Width of the outlier shape. - * @Default {6} - */ - width?: number; - } - - export interface CommonSeriesOptionsOutlierSettings { - - /** Specifies the shape of the outlier. - * @Default {circle. See Shape} - */ - shape?: ej.datavisualization.Chart.Shape | string; - - /** Options for customizing the size of the outlier shape. - */ - size?: CommonSeriesOptionsOutlierSettingsSize; - } - - export interface CommonSeriesOptionsCornerRadius { - - /** Specifies the radius for the top left corner. - * @Default {0} - */ - topLeft?: number; - - /** Specifies the radius for the top right corner. - * @Default {0} - */ - topRight?: number; - - /** Specifies the radius for the bottom left corner. - * @Default {0} - */ - bottomLeft?: number; - - /** Specifies the radius for the bottom right corner. - * @Default {0} - */ - bottomRight?: number; - } - - export interface CommonSeriesOptionsTooltipBorder { - - /** Border color of the tooltip. - * @Default {null} - */ - color?: string; - - /** Border width of the tooltip. - * @Default {1} - */ - width?: number; - } - - export interface CommonSeriesOptionsTooltip { - - /** Options for customizing the border of the tooltip. - */ - border?: CommonSeriesOptionsTooltipBorder; - - /** Customize the corner radius of the tooltip rectangle. - * @Default {0} - */ - rx?: number; - - /** Customize the corner radius of the tooltip rectangle. - * @Default {0} - */ - ry?: number; - - /** Specifies the duration, the tooltip has to be displayed. - * @Default {500ms} - */ - duration?: string; - - /** Enables/disables the animation of the tooltip when moving from one point to other. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Background color of the tooltip. - * @Default {null} - */ - fill?: string; - - /** Format of the tooltip content. - * @Default {#point.x# : #point.y#} - */ - format?: string; - - /** Opacity of the tooltip. - * @Default {0.5} - */ - opacity?: number; - - /** Custom template to format the tooltip content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. - * @Default {null} - */ - template?: string; - - /** Controls the visibility of the tooltip. - * @Default {false} - */ - visible?: boolean; - } - - export interface CommonSeriesOptionsEmptyPointSettingsStyleBorder { - - /** Border color of the empty point. - */ - color?: string; - - /** Border width of the empty point. - * @Default {1} - */ - width?: number; - } - - export interface CommonSeriesOptionsEmptyPointSettingsStyle { - - /** Color of the empty point. - */ - color?: string; - - /** Options for customizing border of the empty point in the series. - */ - border?: CommonSeriesOptionsEmptyPointSettingsStyleBorder; - } - - export interface CommonSeriesOptionsEmptyPointSettings { - - /** Controls the visibility of the empty point. - * @Default {true} - */ - visible?: boolean; - - /** Specifies the mode of empty point. - * @Default {gap} - */ - displayMode?: ej.datavisualization.Chart.EmptyPointMode | string; - - /** Options for customizing the color and border of the empty point in the series. - */ - style?: CommonSeriesOptionsEmptyPointSettingsStyle; - } - - export interface CommonSeriesOptionsConnectorLine { - - /** Width of the connector line. - * @Default {1} - */ - width?: number; - - /** Color of the connector line. - * @Default {#565656} - */ - color?: string; - - /** DashArray of the connector line. - * @Default {null} - */ - dashArray?: string; - - /** DashArray of the connector line. - * @Default {1} - */ - opacity?: number; - } - - export interface CommonSeriesOptionsDragSettings { - - /** drag/drop the series - * @Default {false} - */ - enable?: boolean; - - /** Specifies the type of drag settings. - * @Default {xy} - */ - type?: string; - } - - export interface CommonSeriesOptionsErrorBarCap { - - /** Show/Hides the error bar cap. - * @Default {true} - */ - visible?: boolean; - - /** Width of the error bar cap. - * @Default {1} - */ - width?: number; - - /** Length of the error bar cap. - * @Default {1} - */ - length?: number; - - /** Color of the error bar cap. - * @Default {“#000000”} - */ - fill?: string; - } - - export interface CommonSeriesOptionsErrorBar { - - /** Show/hides the error bar - * @Default {visible} - */ - visibility?: boolean; - - /** Specifies the type of error bar. - * @Default {FixedValue} - */ - type?: ej.datavisualization.Chart.ErrorBarType | string; - - /** Specifies the mode of error bar. - * @Default {vertical} - */ - mode?: ej.datavisualization.Chart.ErrorBarMode | string; - - /** Specifies the direction of error bar. - * @Default {both} - */ - direction?: ej.datavisualization.Chart.ErrorBarDirection | string; - - /** Value of vertical error bar. - * @Default {3} - */ - verticalErrorValue?: number; - - /** Value of horizontal error bar. - * @Default {1} - */ - horizontalErrorValue?: number; - - /** Value of positive horizontal error bar. - * @Default {1} - */ - horizontalPositiveErrorValue?: number; - - /** Value of negative horizontal error bar. - * @Default {1} - */ - horizontalNegativeErrorValue?: number; - - /** Value of positive vertical error bar. - * @Default {5} - */ - verticalPositiveErrorValue?: number; - - /** Value of negative vertical error bar. - * @Default {5} - */ - verticalNegativeErrorValue?: number; - - /** Fill color of the error bar. - * @Default {#000000} - */ - fill?: string; - - /** Width of the error bar. - * @Default {1} - */ - width?: number; - - /** Options for customizing the error bar cap. - */ - cap?: CommonSeriesOptionsErrorBarCap; - } - - export interface CommonSeriesOptionsTrendline { - - /** Show/hides the trendline. - */ - visibility?: boolean; - - /** Specifies the type of the trendline for the series. - * @Default {linear. See TrendlinesType} - */ - type?: string; - - /** Name for the trendlines that is to be displayed in the legend text. - * @Default {trendline} - */ - name?: string; - - /** Fill color of the trendlines. - * @Default {#0000FF} - */ - fill?: string; - - /** Width of the trendlines. - * @Default {1} - */ - width?: number; - - /** Opacity of the trendline. - * @Default {1} - */ - opacity?: number; - - /** Pattern of dashes and gaps used to stroke the trendline. - */ - dashArray?: string; - - /** Future trends of the current series. - * @Default {0} - */ - forwardForecast?: number; - - /** Past trends of the current series. - * @Default {0} - */ - backwardForecast?: number; - - /** Specifies the order of the polynomial trendlines. - * @Default {0} - */ - polynomialOrder?: number; - - /** Specifies the moving average starting period value. - * @Default {2} - */ - period?: number; - } - - export interface CommonSeriesOptionsHighlightSettingsBorder { - - /** Border color of the series/point on highlight. - */ - color?: string; - - /** Border width of the series/point on highlight. - * @Default {2} - */ - width?: string; - } - - export interface CommonSeriesOptionsHighlightSettings { - - /** Enables/disables the ability to highlight the series or data point interactively. - * @Default {false} - */ - enable?: boolean; - - /** Specifies whether the series or data point has to be highlighted. - * @Default {series. See Mode} - */ - mode?: ej.datavisualization.Chart.Mode | string; - - /** Color of the series/point on highlight. - */ - color?: string; - - /** Opacity of the series/point on highlight. - * @Default {0.6} - */ - opacity?: number; - - /** Options for customizing the border of series on highlight. - */ - border?: CommonSeriesOptionsHighlightSettingsBorder; - - /** Specifies the pattern for the series/point on highlight. - * @Default {none. See Pattern} - */ - pattern?: string; - - /** Custom pattern for the series on highlight. - */ - customPattern?: string; - } - - export interface CommonSeriesOptionsSelectionSettingsBorder { - - /** Border color of the series/point on selection. - */ - color?: string; - - /** Border width of the series/point on selection. - * @Default {2} - */ - width?: string; - } - - export interface CommonSeriesOptionsSelectionSettings { - - /** Enables/disables the ability to select a series/data point interactively. - * @Default {false} - */ - enable?: boolean; - - /** Specifies the type of selection. - * @Default {single} - */ - type?: ej.datavisualization.Chart.SelectionType | string; - - /** Specifies whether the series or data point has to be selected. - * @Default {series. See Mode} - */ - mode?: ej.datavisualization.Chart.Mode | string; - - /** Specifies the drawn rectangle type. - * @Default {xy} - */ - rangeType?: ej.datavisualization.Chart.RangeType | string; - - /** Color of the series/point on selection. - */ - color?: string; - - /** Opacity of the series/point on selection. - * @Default {0.6} - */ - opacity?: number; - - /** Options for customizing the border of the series on selection. - */ - border?: CommonSeriesOptionsSelectionSettingsBorder; - - /** Specifies the pattern for the series/point on selection. - * @Default {none. See Pattern} - */ - pattern?: string; - - /** Custom pattern for the series on selection. - */ - customPattern?: string; - } - - export interface CommonSeriesOptions { - - /** Options to customize the border of all the series. - */ - border?: CommonSeriesOptionsBorder; - - /** To render the column and bar type series in rectangle/cylinder shape. See ColumnFacet - * @Default {rectangle} - */ - columnFacet?: ej.datavisualization.Chart.ColumnFacet | string; - - /** Relative width of the columns in column type series. Value ranges from 0 to 1. Width also depends upon columnSpacing property. - * @Default {0.7} - */ - columnWidth?: number; - - /** Spacing between columns of different series. Value ranges from 0 to 1 - * @Default {0} - */ - columnSpacing?: number; - - /** Enables or disables the visibility of legend item. - * @Default {visible} - */ - visibleOnLegend?: string; - - /** Group of the stacking collection series. - */ - stackingGroup?: string; - - /** Pattern of dashes and gaps used to stroke all the line type series. - */ - dashArray?: string; - - /** Set the dataSource for all series. It can be an array of JSON objects or an instance of ej.DataManager. - * @Default {null} - */ - dataSource?: any; - - /** Controls the size of the hole in doughnut series. Value ranges from 0 to 1 - * @Default {0.4} - */ - doughnutCoefficient?: number; - - /** Controls the size of the doughnut series. Value ranges from 0 to 1. - * @Default {0.8} - */ - doughnutSize?: number; - - /** Specifies the type of series to be drawn in radar or polar series. - * @Default {line. See DrawType} - */ - drawType?: ej.datavisualization.Chart.DrawType | string; - - /** Enable/disable the animation for all the series. - * @Default {true} - */ - enableAnimation?: boolean; - - /** To avoid overlapping of data labels smartly. - * @Default {true} - */ - enableSmartLabels?: boolean; - - /** Start angle of pie/doughnut series. - * @Default {null} - */ - endAngle?: number; - - /** Explodes the pie/doughnut slices on mouse move. - * @Default {false} - */ - explode?: boolean; - - /** Explodes all the slice of pie/doughnut on render. - * @Default {false} - */ - explodeAll?: boolean; - - /** Index of the point to be exploded from pie/doughnut/pyramid/funnel. - * @Default {null} - */ - explodeIndex?: number; - - /** Specifies the distance of the slice from the center, when it is exploded. - * @Default {0.4} - */ - explodeOffset?: number; - - /** Fill color for all the series. - * @Default {null} - */ - fill?: string; - - /** Options for customizing the font of all the series. - */ - font?: CommonSeriesOptionsFont; - - /** Sets the height of the funnel in funnel series. Values can be either pixel or percentage. - * @Default {32.7%} - */ - funnelHeight?: string; - - /** Sets the width of the funnel in funnel series. Values can be either pixel or percentage. - * @Default {11.6%} - */ - funnelWidth?: string; - - /** Gap between the slices in pyramid and funnel series. - * @Default {0} - */ - gapRatio?: number; - - /** Specifies whether to join start and end point of a line/area series used in polar/radar chart to form a closed path. - * @Default {true} - */ - isClosed?: boolean; - - /** Specifies whether to stack the column series in polar/radar charts. - * @Default {false} - */ - isStacking?: boolean; - - /** Renders the chart vertically. This is applicable only for Cartesian type series. - * @Default {false} - */ - isTransposed?: boolean; - - /** Render the x mark in the center of the box and whisker series type.x represents the average value of the box and whisker series. - * @Default {true} - */ - showMedian?: boolean; - - /** Position of the data label in pie/doughnut/pyramid/funnel series. OutsideExtended position is not applicable for pyramid/funnel. - * @Default {inside. See LabelPosition} - */ - labelPosition?: ej.datavisualization.Chart.LabelPosition | string; - - /** Specifies the mode for splitting the data points in pieOfPie series. - * @Default {value. See SplitMode} - */ - splitMode?: ej.datavisualization.Chart.SplitMode | string; - - /** Quartile calculation has been performed in three different formulas to render the box and whisker series. - * @Default {exclusive} - */ - boxPlotMode?: ej.datavisualization.Chart.boxPlotMode | string; - - /** Specifies the line cap of the series. - * @Default {butt. See LineCap} - */ - lineCap?: ej.datavisualization.Chart.LineCap | string; - - /** Specifies the type of shape to be used where two lines meet. - * @Default {round. See LineJoin} - */ - lineJoin?: ej.datavisualization.Chart.LineJoin | string; - - /** Options for displaying and customizing marker for individual point in a series. Marker contains shapes and/or data labels. - */ - marker?: CommonSeriesOptionsMarker; - - /** Opacity of the series. - * @Default {1} - */ - opacity?: number; - - /** Options for customizing the outlier of the series. - */ - outlierSettings?: CommonSeriesOptionsOutlierSettings; - - /** Name of a field in data source, where the fill color for all the data points is generated. - */ - palette?: string; - - /** Controls the size of pie series. Value ranges from 0 to 1. - * @Default {0.8} - */ - pieCoefficient?: number; - - /** Controls the size of the second pie in pieOfPie series. Value ranges from 0 to 1. - * @Default {0.6} - */ - pieOfPieCoefficient?: number; - - /** Split Value of pieofpie series. - * @Default {null} - */ - splitValue?: string; - - /** Distance between the two pie's in pieOfPie series. - * @Default {50} - */ - gapWidth?: number; - - /** Name of the property in the datasource that contains fill color for the series. - * @Default {null} - */ - pointColorMappingName?: string; - - /** Specifies the mode of the pyramid series. - * @Default {linear. See PyramidMode} - */ - pyramidMode?: ej.datavisualization.Chart.PyramidMode | string; - - /** Start angle from where the pie/doughnut series renders. By default it starts from 0. - * @Default {null} - */ - startAngle?: number; - - /** Options for customizing the corner radius. cornerRadius property also takes the numeric input and applies it for all the four corners of the column. - */ - cornerRadius?: CommonSeriesOptionsCornerRadius; - - /** Options for customizing the tooltip of chart. - */ - tooltip?: CommonSeriesOptionsTooltip; - - /** Specifies the type of the series to render in chart. - * @Default {column. See Type} - */ - type?: ej.datavisualization.Chart.Type | string; - - /** Specifies the name of the x-axis that has to be associated with this series. Add an axis instance with this name to axes collection. - * @Default {null} - */ - xAxisName?: string; - - /** Name of the property in the datasource that contains x value for the series. - * @Default {null} - */ - xName?: string; - - /** Specifies the name of the y-axis that has to be associated with this series. Add an axis instance with this name to axes collection. - * @Default {null} - */ - yAxisName?: string; - - /** Name of the property in the datasource that contains y value for the series. - * @Default {null} - */ - yName?: string; - - /** Name of the property in the datasource that contains high value for the series. - * @Default {null} - */ - high?: string; - - /** Name of the property in the datasource that contains low value for the series. - * @Default {null} - */ - low?: string; - - /** Name of the property in the datasource that contains open value for the series. - * @Default {null} - */ - open?: string; - - /** Name of the property in the datasource that contains close value for the series. - * @Default {null} - */ - close?: string; - - /** Z-order of the series. - * @Default {0} - */ - zOrder?: number; - - /** Name of the property in the datasource that contains the size value for the bubble series. - * @Default {null} - */ - size?: string; - - /** Options for customizing the empty point in the series. - */ - emptyPointSettings?: CommonSeriesOptionsEmptyPointSettings; - - /** Fill color for the positive column of the waterfall. - * @Default {null} - */ - positiveFill?: string; - - /** Options for customizing the waterfall connector line. - */ - connectorLine?: CommonSeriesOptionsConnectorLine; - - /** Options to customize the drag and drop in series. - */ - dragSettings?: CommonSeriesOptionsDragSettings; - - /** Options to customize the error bar in series. - */ - errorBar?: CommonSeriesOptionsErrorBar; - - /** Option to add the trendlines to chart. - */ - trendlines?: CommonSeriesOptionsTrendline[]; - - /** Options for customizing the appearance of the series or data point while highlighting. - */ - highlightSettings?: CommonSeriesOptionsHighlightSettings; - - /** Options for customizing the appearance of the series/data point on selection. - */ - selectionSettings?: CommonSeriesOptionsSelectionSettings; - } - - export interface CrosshairTrackballTooltipSettingsBorder { - - /** Border width of the trackball tooltip. - * @Default {null} - */ - width?: number; - - /** Border color of the trackball tooltip. - * @Default {null} - */ - color?: string; - } - - export interface CrosshairTrackballTooltipSettings { - - /** Options for customizing the trackball tooltip border. - */ - border?: CrosshairTrackballTooltipSettingsBorder; - - /** Background color of the trackball tooltip. - * @Default {null} - */ - fill?: string; - - /** Rounded corner x value of the trackball tooltip. - * @Default {3} - */ - rx?: number; - - /** Rounded corner y value of the trackball tooltip. - * @Default {3} - */ - ry?: number; - - /** Opacity value of the trackball tooltip. - * @Default {1} - */ - opacity?: number; - - /** Specifies the mode of the trackball tooltip. - * @Default {float. See CrosshairMode} - */ - mode?: ej.datavisualization.Chart.CrosshairMode | string; - } - - export interface CrosshairMarkerBorder { - - /** Border width of the marker. - * @Default {3} - */ - width?: number; - } - - export interface CrosshairMarkerSize { - - /** Height of the marker. - * @Default {10} - */ - height?: number; - - /** Width of the marker. - * @Default {10} - */ - width?: number; - } - - export interface CrosshairMarker { - - /** Options for customizing the border. - */ - border?: CrosshairMarkerBorder; - - /** Opacity of the marker. - * @Default {true} - */ - opacity?: boolean; - - /** Options for customizing the size of the marker. - */ - size?: CrosshairMarkerSize; - - /** Show/hides the marker. - * @Default {true} - */ - visible?: boolean; - } - - export interface CrosshairLine { - - /** Color of the crosshair line. - * @Default {transparent} - */ - color?: string; - - /** Width of the crosshair line. - * @Default {1} - */ - width?: number; - } - - export interface Crosshair { - - /** Options for customizing the trackball tooltip. - */ - trackballTooltipSettings?: CrosshairTrackballTooltipSettings; - - /** Options for customizing the marker in crosshair. - */ - marker?: CrosshairMarker; - - /** Options for customizing the crosshair line. - */ - line?: CrosshairLine; - - /** Specifies the type of the crosshair. It can be trackball or crosshair - * @Default {crosshair. See CrosshairType} - */ - type?: ej.datavisualization.Chart.CrosshairType | string; - - /** Show/hides the crosshair/trackball visibility. - * @Default {false} - */ - visible?: boolean; - } - - export interface IndicatorsHistogramBorder { - - /** Color of the histogram border in MACD indicator. - * @Default {#9999ff} - */ - color?: string; - - /** Controls the width of histogram border line in MACD indicator. - * @Default {1} - */ - width?: number; - } - - export interface IndicatorsHistogram { - - /** Options to customize the histogram border in MACD indicator. - */ - border?: IndicatorsHistogramBorder; - - /** Color of histogram columns in MACD indicator. - * @Default {#ccccff} - */ - fill?: string; - - /** Opacity of histogram columns in MACD indicator. - * @Default {1} - */ - opacity?: number; - } - - export interface IndicatorsLowerLine { - - /** Color of lower line. - * @Default {#008000} - */ - fill?: string; - - /** Width of the lower line. - * @Default {2} - */ - width?: number; - } - - export interface IndicatorsMacdLine { - - /** Color of MACD line. - * @Default {#ff9933} - */ - fill?: string; - - /** Width of the MACD line. - * @Default {2} - */ - width?: number; - } - - export interface IndicatorsPeriodLine { - - /** Color of period line in indicator. - * @Default {blue} - */ - fill?: string; - - /** Width of the period line in indicators. - * @Default {2} - */ - width?: number; - } - - export interface IndicatorsTooltipBorder { - - /** Border color of indicator tooltip. - * @Default {null} - */ - color?: string; - - /** Border width of indicator tooltip. - * @Default {1} - */ - width?: number; - } - - export interface IndicatorsTooltip { - - /** Option to customize the border of indicator tooltip. - */ - border?: IndicatorsTooltipBorder; - - /** Specifies the animation duration of indicator tooltip. - * @Default {500ms} - */ - duration?: string; - - /** Enables/disables the tooltip animation. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Format of indicator tooltip. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. - * @Default {#point.x# : #point.y#} - */ - format?: string; - - /** Background color of indicator tooltip. - * @Default {null} - */ - fill?: string; - - /** Opacity of indicator tooltip. - * @Default {0.95} - */ - opacity?: number; - - /** Controls the visibility of indicator tooltip. - * @Default {false} - */ - visible?: boolean; - } - - export interface IndicatorsUpperLine { - - /** Fill color of the upper line in indicators - * @Default {#ff9933} - */ - fill?: string; - - /** Width of the upper line in indicators. - * @Default {2} - */ - width?: number; - } - - export interface Indicator { - - /** The dPeriod value for stochastic indicator. - * @Default {3} - */ - dPeriod?: number; - - /** Enables/disables the animation. - * @Default {false} - */ - enableAnimation?: boolean; - - /** Color of the technical indicator. - * @Default {#00008B} - */ - fill?: string; - - /** Options to customize the histogram in MACD indicator. - */ - histogram?: IndicatorsHistogram; - - /** Specifies the k period in stochastic indicator. - * @Default {3} - */ - kPeriod?: number; - - /** Specifies the long period in MACD indicator. - * @Default {26} - */ - longPeriod?: number; - - /** Options to customize the lower line in indicators. - */ - lowerLine?: IndicatorsLowerLine; - - /** Options to customize the MACD line. - */ - macdLine?: IndicatorsMacdLine; - - /** Specifies the type of the MACD indicator. - * @Default {line. See MACDType} - */ - macdType?: string; - - /** Specifies period value in indicator. - * @Default {14} - */ - period?: number; - - /** Options to customize the period line in indicators. - */ - periodLine?: IndicatorsPeriodLine; - - /** Name of the series for which indicator has to be drawn. - */ - seriesName?: string; - - /** Specifies the short period in MACD indicator. - * @Default {13} - */ - shortPeriod?: number; - - /** Specifies the standard deviation value for Bollinger band indicator. - * @Default {2} - */ - standardDeviations?: number; - - /** Options to customize the tooltip. - */ - tooltip?: IndicatorsTooltip; - - /** Trigger value of MACD indicator. - * @Default {9} - */ - trigger?: number; - - /** Specifies the visibility of indicator. - * @Default {visible} - */ - visibility?: string; - - /** Specifies the type of indicator that has to be rendered. - * @Default {sma. See IndicatorsType} - */ - type?: string; - - /** Options to customize the upper line in indicators - */ - upperLine?: IndicatorsUpperLine; - - /** Width of the indicator line. - * @Default {2} - */ - width?: number; - - /** Name of the horizontal axis used for indicator. Primary X axis is used when x axis name is not specified. - */ - xAxisName?: string; - - /** Name of the vertical axis used for indicator. Primary Y axis is used when y axis name is not specified - */ - yAxisName?: string; - } - - export interface LegendBorder { - - /** Border color of the legend. - * @Default {transparent} - */ - color?: string; - - /** Border width of the legend. - * @Default {1} - */ - width?: number; - } - - export interface LegendFont { - - /** Font family for legend item text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for legend item text. - * @Default {Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight for legend item text. - * @Default {Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Font size for legend item text. - * @Default {12px} - */ - size?: string; - } - - export interface LegendItemStyleBorder { - - /** Border color of the legend items. - * @Default {transparent} - */ - color?: string; - - /** Border width of the legend items. - * @Default {1} - */ - width?: number; - } - - export interface LegendItemStyle { - - /** Options for customizing the border of legend items. - */ - border?: LegendItemStyleBorder; - - /** Height of the shape in legend items. - * @Default {10} - */ - height?: number; - - /** Width of the shape in legend items. - * @Default {10} - */ - width?: number; - } - - export interface LegendLocation { - - /** X value or horizontal offset to position the legend in chart. - * @Default {0} - */ - x?: number; - - /** Y value or vertical offset to position the legend. - * @Default {0} - */ - y?: number; - } - - export interface LegendSize { - - /** Height of the legend. Height can be specified in either pixel or percentage. - * @Default {null} - */ - height?: string; - - /** Width of the legend. Width can be specified in either pixel or percentage. - * @Default {null} - */ - width?: string; - } - - export interface LegendTitleFont { - - /** Font family for the text in legend title. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for legend title. - * @Default {normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight for legend title. - * @Default {normal. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Font size for legend title. - * @Default {12px} - */ - size?: string; - } - - export interface LegendTitle { - - /** Options to customize the font used for legend title - */ - font?: LegendTitleFont; - - /** Text to be displayed in legend title. - */ - text?: string; - - /** Alignment of the legend title. - * @Default {center. See Alignment} - */ - textAlignment?: ej.datavisualization.Chart.Alignment | string; - } - - export interface Legend { - - /** Horizontal alignment of the legend. - * @Default {Center. See Alignment} - */ - alignment?: ej.datavisualization.Chart.Alignment | string; - - /** Background for the legend. Use this property to add a background image or background color for the legend. - */ - background?: string; - - /** Options for customizing the legend border. - */ - border?: LegendBorder; - - /** Number of columns to arrange the legend items. - * @Default {null} - */ - columnCount?: number; - - /** Controls whether legend has to use scrollbar or not. When enabled, scroll bar appears depending upon size and position properties of legend. - * @Default {true} - */ - enableScrollbar?: boolean; - - /** Fill color for the legend items. By using this property, it displays all legend item shapes in same color.Legend items representing invisible series is displayed in gray color. - * @Default {null} - */ - fill?: string; - - /** Options to customize the font used for legend item text. - */ - font?: LegendFont; - - /** Gap or padding between the legend items. - * @Default {10} - */ - itemPadding?: number; - - /** Options to customize the style of legend items. - */ - itemStyle?: LegendItemStyle; - - /** Options to customize the location of chart legend. Legend is placed in provided location only when value of position property is custom - */ - location?: LegendLocation; - - /** Opacity of the legend. - * @Default {1} - */ - opacity?: number; - - /** Places the legend at specified position. Legend can be placed at left, right, top or bottom of the chart area.To manually specify the location of legend, set custom as value to this property. - * @Default {Bottom. See Position} - */ - position?: ej.datavisualization.Chart.Position | string; - - /** Number of rows to arrange the legend items. - * @Default {null} - */ - rowCount?: number; - - /** Shape of the legend items. Default shape for pie and doughnut series is circle and all other series uses rectangle. - * @Default {None. See Shape} - */ - shape?: ej.datavisualization.Chart.Shape | string; - - /** Options to customize the size of the legend. - */ - size?: LegendSize; - - /** Options to customize the legend title. - */ - title?: LegendTitle; - - /** Specifies the action taken when the legend width is more than the textWidth. - * @Default {none. See textOverflow} - */ - textOverflow?: ej.datavisualization.Chart.TextOverflow | string; - - /** Text width for legend item. - * @Default {34} - */ - textWidth?: number; - - /** Controls the visibility of the legend. - * @Default {true} - */ - visible?: boolean; - } - - export interface PrimaryXAxisAlternateGridBandEven { - - /** Fill color for the even grid bands. - * @Default {transparent} - */ - fill?: string; - - /** Opacity of the even grid band. - * @Default {1} - */ - opacity?: number; - } - - export interface PrimaryXAxisAlternateGridBandOdd { - - /** Fill color of the odd grid bands - * @Default {transparent} - */ - fill?: string; - - /** Opacity of odd grid band - * @Default {1} - */ - opacity?: number; - } - - export interface PrimaryXAxisAlternateGridBand { - - /** Options for customizing even grid band. - */ - even?: PrimaryXAxisAlternateGridBandEven; - - /** Options for customizing odd grid band. - */ - odd?: PrimaryXAxisAlternateGridBandOdd; - } - - export interface PrimaryXAxisAxisLine { - - /** Pattern of dashes and gaps to be applied to the axis line. - * @Default {null} - */ - dashArray?: string; - - /** Padding for axis line. Normally, it is used along with plotOffset to pad the plot area. - * @Default {null} - */ - offset?: number; - - /** Show/hides the axis line. - * @Default {true} - */ - visible?: boolean; - - /** Default Value - */ - color?: string; - - /** Width of axis line. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryXAxisCrosshairLabel { - - /** Show/hides the crosshair label associated with this axis. - * @Default {false} - */ - visible?: boolean; - } - - export interface PrimaryXAxisFont { - - /** Font family of labels. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of labels. - * @Default {ej.datavisualization.Chart.FontStyle.Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the label. - * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the axis labels. - * @Default {1} - */ - opacity?: number; - - /** Font size of the axis labels. - * @Default {13px} - */ - size?: string; - } - - export interface PrimaryXAxisMajorGridLines { - - /** Pattern of dashes and gaps used to stroke the major grid lines. - * @Default {null} - */ - dashArray?: string; - - /** Color of the major grid line. - * @Default {null} - */ - color?: string; - - /** Opacity of major grid lines. - * @Default {1} - */ - opacity?: number; - - /** Show/hides the major grid lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the major grid lines. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryXAxisMajorTickLines { - - /** Length of the major tick lines. - * @Default {5} - */ - size?: number; - - /** Show/hides the major tick lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the major tick lines. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryXAxisMinorGridLines { - - /** Patterns of dashes and gaps used to stroke the minor grid lines. - * @Default {null} - */ - dashArray?: string; - - /** Show/hides the minor grid lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the minorGridLines. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryXAxisMinorTickLines { - - /** Length of the minor tick lines. - * @Default {5} - */ - size?: number; - - /** Show/hides the minor tick lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the minor tick line. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryXAxisRange { - - /** Minimum value of the axis range. - * @Default {null} - */ - min?: number; - - /** Maximum value of the axis range. - * @Default {null} - */ - max?: number; - - /** Interval of the axis range. - * @Default {null} - */ - interval?: number; - } - - export interface PrimaryXAxisMultiLevelLabelsFont { - - /** Font color of the multi level labels text. - * @Default {null} - */ - color?: string; - - /** Font family of the multi level labels text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the multi level labels text. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the multi level label text. - * @Default {regular} - */ - fontWeight?: string; - - /** Opacity of the multi level label text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the multi level label text. - * @Default {12px} - */ - size?: string; - } - - export interface PrimaryXAxisMultiLevelLabelsBorder { - - /** Border color of the multi level labels. - * @Default {null} - */ - color?: string; - - /** Border width of the multi level labels. - * @Default {1} - */ - width?: number; - - /** Border type of the multi level labels. - * @Default {rectangle. See Type} - */ - type?: ej.datavisualization.Chart.MultiLevelLabelsBorderType | string; - } - - export interface PrimaryXAxisMultiLevelLabel { - - /** Visibility of the multi level labels. - * @Default {false} - */ - visible?: boolean; - - /** Text of the multi level labels. - */ - text?: string; - - /** Starting value of the multi level labels. - * @Default {null} - */ - start?: number; - - /** Ending value of the multi level labels. - * @Default {null} - */ - end?: number; - - /** Specifies the level of multi level labels. - * @Default {0} - */ - level?: number; - - /** Specifies the maximum width of the text in multi level labels. - * @Default {null} - */ - maximumTextWidth?: number; - - /** Specifies the alignment of the text in multi level labels. - * @Default {center. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Chart.TextAlignment | string; - - /** Specifies the handling of text over flow in multi level labels. - * @Default {center. See TextOverflow} - */ - textOverflow?: ej.datavisualization.Chart.TextOverflow | string; - - /** Options for customizing the font of the text. - */ - font?: PrimaryXAxisMultiLevelLabelsFont; - - /** Options for customizing the border of the series. - */ - border?: PrimaryXAxisMultiLevelLabelsBorder; - } - - export interface PrimaryXAxisStripLineFont { - - /** Font color of the strip line text. - * @Default {black} - */ - color?: string; - - /** Font family of the strip line text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the strip line text. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the strip line text. - * @Default {regular} - */ - fontWeight?: string; - - /** Opacity of the strip line text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the strip line text. - * @Default {12px} - */ - size?: string; - } - - export interface PrimaryXAxisStripLine { - - /** Border color of the strip line. - * @Default {gray} - */ - borderColor?: string; - - /** Background color of the strip line. - * @Default {gray} - */ - color?: string; - - /** End value of the strip line. - * @Default {null} - */ - end?: number; - - /** Options for customizing the font of the text. - */ - font?: PrimaryXAxisStripLineFont; - - /** Start value of the strip line. - * @Default {null} - */ - start?: number; - - /** Indicates whether to render the strip line from the minimum/start value of the axis. This property does not work when start property is set. - * @Default {false} - */ - startFromAxis?: boolean; - - /** Specifies text to be displayed inside the strip line. - * @Default {stripLine} - */ - text?: string; - - /** Specifies the alignment of the text inside the strip line. - * @Default {middlecenter. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Chart.TextAlignment | string; - - /** Show/hides the strip line. - * @Default {false} - */ - visible?: boolean; - - /** Width of the strip line. - * @Default {0} - */ - width?: number; - - /** Specifies the order where the strip line and the series have to be rendered. When Z-order is “behind”, strip line is rendered - * under the series and when it is “over”, it is rendered above the series. - * @Default {over. See ZIndex} - */ - zIndex?: ej.datavisualization.Chart.ZIndex | string; - } - - export interface PrimaryXAxisLabelBorder { - - /** Specifies the color of the label border. - * @Default {null} - */ - color?: string; - - /** Specifies the width of the label border. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryXAxisTitleFont { - - /** Font family of the title text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the title text. - * @Default {ej.datavisualization.Chart.FontStyle.Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the title text. - * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the axis title text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the axis title. - * @Default {16px} - */ - size?: string; - } - - export interface PrimaryXAxisTitle { - - /** Specifies whether to trim the axis title when it exceeds the chart area or the maximum width of the title. - * @Default {false} - */ - enableTrim?: boolean; - - /** Options for customizing the title font. - */ - font?: PrimaryXAxisTitleFont; - - /** Maximum width of the title, when the title exceeds this width, the title gets trimmed, when enableTrim is true. - * @Default {34} - */ - maximumTitleWidth?: number; - - /** Title for the axis. - */ - text?: string; - - /** Controls the visibility of axis title. - * @Default {true} - */ - visible?: boolean; - - /** offset value for axis title. - * @Default {0} - */ - offset?: number; - - /** Specifies the position of the axis title. - * @Default {outside. See Position} - */ - position?: ej.datavisualization.Chart.LabelPosition | string; - - /** Specifies the position of the axis title. - * @Default {center. See Alignment} - */ - alignment?: ej.datavisualization.Chart.TextAlignment | string; - } - - export interface PrimaryXAxis { - - /** Options for customizing horizontal axis alternate grid band. - */ - alternateGridBand?: PrimaryXAxisAlternateGridBand; - - /** Specifies where horizontal axis should intersect the vertical axis or vice versa. Value should be provided in axis co-ordinates. - * If provided value is greater than the maximum value of crossing axis, then axis will be placed at the opposite side. - * @Default {null} - */ - crossesAt?: number; - - /** Name of the axis used for crossing. Vertical axis name should be provided for horizontal axis and vice versa. - * If the provided name does not belongs to a valid axis, then primary X axis or primary Y axis will be used for crossing - * @Default {null} - */ - crossesInAxis?: string; - - /** Category axis can also plot points based on index value of data points. Index based plotting can be enabled by setting ‘isIndexed’ property to true. - * @Default {false} - */ - isIndexed?: boolean; - - /** Options for customizing the axis line. - */ - axisLine?: PrimaryXAxisAxisLine; - - /** Specifies the index of the column where the axis is associated, when the chart area is divided into multiple plot areas by using columnDefinitions. - * @Default {null} - */ - columnIndex?: number; - - /** Specifies the number of columns or plot areas an axis has to span horizontally. - * @Default {null} - */ - columnSpan?: number; - - /** Options to customize the crosshair label. - */ - crosshairLabel?: PrimaryXAxisCrosshairLabel; - - /** With this setting, you can request axis to calculate intervals approximately equal to your desired interval. - * @Default {null} - */ - desiredIntervals?: number; - - /** Specifies the placement of labels. - * @Default {ej.datavisualization.Chart.LabelPlacement.BetweenTicks. See LabelPlacement} - */ - labelPlacement?: ej.datavisualization.Chart.LabelPlacement | string; - - /** Specifies the position of labels at the edge of the axis. - * @Default {ej.datavisualization.Chart.EdgeLabelPlacement.None. See EdgeLabelPlacement} - */ - edgeLabelPlacement?: ej.datavisualization.Chart.EdgeLabelPlacement | string; - - /** Specifies whether to trim the axis label when the width of the label exceeds the maximumLabelWidth. - * @Default {false} - */ - enableTrim?: boolean; - - /** Options for customizing the font of the axis Labels. - */ - font?: PrimaryXAxisFont; - - /** Specifies the type of interval in date time axis. - * @Default {null. See IntervalType} - */ - intervalType?: ej.datavisualization.Chart.IntervalType | string; - - /** Specifies whether to inverse the axis. - * @Default {false} - */ - isInversed?: boolean; - - /** Custom formatting for axis label and supports all standard formatting type of numerical and date time values. - * @Default {null} - */ - labelFormat?: string; - - /** Specifies the action to take when the axis labels are overlapping with each other. - * @Default {ej.datavisualization.Chart.LabelIntersectAction.None. See LabelIntersectAction} - */ - labelIntersectAction?: ej.datavisualization.Chart.LabelIntersectAction | string; - - /** Specifies the position of the axis labels. - * @Default {outside. See LabelPosition} - */ - labelPosition?: ej.datavisualization.Chart.LabelPosition | string; - - /** Specifies the position of the axis labels. - * @Default {center. See Alignment} - */ - alignment?: ej.datavisualization.Chart.LabelAlignment | string; - - /** Angle in degrees to rotate the axis labels. - * @Default {null} - */ - labelRotation?: number; - - /** Logarithmic base value. This is applicable only for logarithmic axis. - * @Default {10} - */ - logBase?: number; - - /** Options for customizing major gird lines. - */ - majorGridLines?: PrimaryXAxisMajorGridLines; - - /** Options for customizing the major tick lines. - */ - majorTickLines?: PrimaryXAxisMajorTickLines; - - /** Maximum number of labels to be displayed in every 100 pixels. - * @Default {3} - */ - maximumLabels?: number; - - /** Maximum width of the axis label. When the label exceeds the width, the label gets trimmed when the enableTrim is set to true. - * @Default {34} - */ - maximumLabelWidth?: number; - - /** Options for customizing the minor grid lines. - */ - minorGridLines?: PrimaryXAxisMinorGridLines; - - /** Options for customizing the minor tick lines. - */ - minorTickLines?: PrimaryXAxisMinorTickLines; - - /** Specifies the number of minor ticks per interval. - * @Default {null} - */ - minorTicksPerInterval?: number; - - /** Unique name of the axis. To associate an axis with the series, you have to set this name to the xAxisName/yAxisName property of the series. - * @Default {null} - */ - name?: string; - - /** Specifies whether to render the axis at the opposite side of its default position. - * @Default {false} - */ - opposedPosition?: boolean; - - /** Specifies the padding for the plot area. - * @Default {10} - */ - plotOffset?: number; - - /** Options to customize the range of the axis. - */ - range?: PrimaryXAxisRange; - - /** Specifies the padding for the axis range. - * @Default {None. See RangePadding} - */ - rangePadding?: ej.datavisualization.Chart.RangePadding | string; - - /** Rounds the number to the given number of decimals. - * @Default {null} - */ - roundingPlaces?: number; - - /** Options for customizing the multi level labels. - * @Default {[ ]} - */ - multiLevelLabels?: PrimaryXAxisMultiLevelLabel[]; - - /** Specifies whether the axis elements need to be placed nearby the axis line, while crossing. - * @Default {true} - */ - showNextToAxisLine?: boolean; - - /** Options for customizing the strip lines. - * @Default {[ ]} - */ - stripLine?: PrimaryXAxisStripLine[]; - - /** Specifies the position of the axis tick lines. - * @Default {outside. See TickLinesPosition} - */ - tickLinesPosition?: ej.datavisualization.Chart.TickLinesPosition | string; - - /** Options for customizing the border of the labels. - */ - labelBorder?: PrimaryXAxisLabelBorder; - - /** Options for customizing the axis title. - */ - title?: PrimaryXAxisTitle; - - /** Specifies the type of data the axis is handling. - * @Default {null. See ValueType} - */ - valueType?: ej.datavisualization.Chart.ValueType | string; - - /** Show/hides the axis. - * @Default {true} - */ - visible?: boolean; - - /** The axis is scaled by this factor. When zoomFactor is 0.5, the chart is scaled by 200% along this axis. Value ranges from 0 to 1. - * @Default {1} - */ - zoomFactor?: number; - - /** Position of the zoomed axis. Value ranges from 0 to 1. - * @Default {0} - */ - zoomPosition?: number; - } - - export interface AxesAlternateGridBandEven { - - /** Fill color for the even grid bands. - * @Default {transparent} - */ - fill?: string; - - /** Opacity of the even grid band. - * @Default {1} - */ - opacity?: number; - } - - export interface AxesAlternateGridBandOdd { - - /** Fill color of the odd grid bands - * @Default {transparent} - */ - fill?: string; - - /** Opacity of odd grid band - * @Default {1} - */ - opacity?: number; - } - - export interface AxesAlternateGridBand { - - /** Options for customizing even grid band. - */ - even?: AxesAlternateGridBandEven; - - /** Options for customizing odd grid band. - */ - odd?: AxesAlternateGridBandOdd; - } - - export interface AxesAxisLine { - - /** Pattern of dashes and gaps to be applied to the axis line. - * @Default {null} - */ - dashArray?: string; - - /** Padding for axis line. Normally, it is used along with plotOffset to pad the plot area. - * @Default {null} - */ - offset?: number; - - /** Show/hides the axis line. - * @Default {true} - */ - visible?: boolean; - - /** Color of axis line. - */ - color?: string; - - /** Width of axis line. - * @Default {1} - */ - width?: number; - } - - export interface AxesCrosshairLabel { - - /** Show/hides the crosshair label associated with this axis. - * @Default {false} - */ - visible?: boolean; - } - - export interface AxesFont { - - /** Font family of labels. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of labels. - * @Default {ej.datavisualization.Chart.FontStyle.Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the label. - * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the axis labels. - * @Default {1} - */ - opacity?: number; - - /** Font size of the axis labels. - * @Default {13px} - */ - size?: string; - } - - export interface AxesMajorGridLines { - - /** Pattern of dashes and gaps used to stroke the major grid lines. - * @Default {null} - */ - dashArray?: string; - - /** Color of the major grid line. - * @Default {null} - */ - color?: string; - - /** Opacity of major grid lines. - * @Default {1} - */ - opacity?: number; - - /** Show/hides the major grid lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the major grid lines. - * @Default {1} - */ - width?: number; - } - - export interface AxesMajorTickLines { - - /** Length of the major tick lines. - * @Default {5} - */ - size?: number; - - /** Show/hides the major tick lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the major tick lines. - * @Default {1} - */ - width?: number; - } - - export interface AxesMinorGridLines { - - /** Patterns of dashes and gaps used to stroke the minor grid lines. - * @Default {null} - */ - dashArray?: string; - - /** Show/hides the minor grid lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the minorGridLines. - * @Default {1} - */ - width?: number; - } - - export interface AxesMinorTickLines { - - /** Length of the minor tick lines. - * @Default {5} - */ - size?: number; - - /** Show/hides the minor tick lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the minor tick line. - * @Default {1} - */ - width?: number; - } - - export interface AxesRange { - - /** Minimum value of the axis range. - * @Default {null} - */ - min?: number; - - /** Maximum value of the axis range. - * @Default {null} - */ - max?: number; - - /** Interval of the axis range. - * @Default {null} - */ - interval?: number; - } - - export interface AxesMultiLevelLabelsFont { - - /** Font color of the multi level labels text. - * @Default {null} - */ - color?: string; - - /** Font family of the multi level labels text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the multi level labels text. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the multi level label text. - * @Default {regular} - */ - fontWeight?: string; - - /** Opacity of the multi level label text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the multi level label text. - * @Default {12px} - */ - size?: string; - } - - export interface AxesMultiLevelLabelsBorder { - - /** Border color of the multi level labels. - * @Default {null} - */ - color?: string; - - /** Border width of the multi level labels. - * @Default {1} - */ - width?: number; - - /** Border type of the multi level labels. - * @Default {rectangle. See Type} - */ - type?: ej.datavisualization.Chart.MultiLevelLabelsBorderType | string; - } - - export interface AxesMultiLevelLabel { - - /** Visibility of the multi level labels. - * @Default {false} - */ - visible?: boolean; - - /** Text of the multi level labels. - */ - text?: string; - - /** Starting value of the multi level labels. - * @Default {null} - */ - start?: number; - - /** Ending value of the multi level labels. - * @Default {null} - */ - end?: number; - - /** Specifies the level of multi level labels. - * @Default {0} - */ - level?: number; - - /** Specifies the maximum width of the text in multi level labels. - * @Default {null} - */ - maximumTextWidth?: number; - - /** Specifies the alignment of the text in multi level labels. - * @Default {center. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Chart.TextAlignment | string; - - /** Specifies the handling of text over flow in multi level labels. - * @Default {center. See TextOverflow} - */ - textOverflow?: ej.datavisualization.Chart.TextOverflow | string; - - /** Options for customizing the font of the text. - */ - font?: AxesMultiLevelLabelsFont; - - /** Options for customizing the border of the series. - */ - border?: AxesMultiLevelLabelsBorder; - } - - export interface AxesStripLineFont { - - /** Font color of the strip line text. - * @Default {black} - */ - color?: string; - - /** Font family of the strip line text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the strip line text. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the strip line text. - * @Default {regular} - */ - fontWeight?: string; - - /** Opacity of the strip line text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the strip line text. - * @Default {12px} - */ - size?: string; - } - - export interface AxesStripLine { - - /** Border color of the strip line. - * @Default {gray} - */ - borderColor?: string; - - /** Background color of the strip line. - * @Default {gray} - */ - color?: string; - - /** End value of the strip line. - * @Default {null} - */ - end?: number; - - /** Options for customizing the font of the text. - */ - font?: AxesStripLineFont; - - /** Start value of the strip line. - * @Default {null} - */ - start?: number; - - /** Indicates whether to render the strip line from the minimum/start value of the axis. This property does not work when start property is set. - * @Default {false} - */ - startFromAxis?: boolean; - - /** Specifies text to be displayed inside the strip line. - * @Default {stripLine} - */ - text?: string; - - /** Specifies the alignment of the text inside the strip line. - * @Default {middlecenter. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Chart.TextAlignment | string; - - /** Show/hides the strip line. - * @Default {false} - */ - visible?: boolean; - - /** Width of the strip line. - * @Default {0} - */ - width?: number; - - /** Specifies the order where the strip line and the series have to be rendered. When Z-order is “behind”, strip line is rendered under the series and when it is “over”, - * it is rendered above the series. - * @Default {over. See ZIndex} - */ - zIndex?: ej.datavisualization.Chart.ZIndex | string; - } - - export interface AxesLabelBorder { - - /** Specifies the color of the label border. - * @Default {null} - */ - color?: string; - - /** Specifies the width of the label border. - * @Default {1} - */ - width?: number; - } - - export interface AxesTitleFont { - - /** Font family of the title text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the title text. - * @Default {ej.datavisualization.Chart.FontStyle.Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the title text. - * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the axis title text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the axis title. - * @Default {16px} - */ - size?: string; - } - - export interface AxesTitle { - - /** Specifies whether to trim the axis title when it exceeds the chart area or the maximum width of the title. - * @Default {false} - */ - enableTrim?: boolean; - - /** Options for customizing the title font. - */ - font?: AxesTitleFont; - - /** Maximum width of the title, when the title exceeds this width, the title gets trimmed, when enableTrim is true. - * @Default {34} - */ - maximumTitleWidth?: number; - - /** Title for the axis. - */ - text?: string; - - /** Controls the visibility of axis title. - * @Default {true} - */ - visible?: boolean; - - /** offset value for axis title. - * @Default {0} - */ - offset?: number; - - /** Specifies the position of the axis title. - * @Default {outside. See Position} - */ - position?: ej.datavisualization.Chart.LabelPosition | string; - - /** Specifies the position of the axis title. - * @Default {center. See Alignment} - */ - alignment?: ej.datavisualization.Chart.TextAlignment | string; - } - - export interface Axis { - - /** Options for customizing axis alternate grid band. - */ - alternateGridBand?: AxesAlternateGridBand; - - /** Specifies where axis should intersect the vertical axis or vice versa. Value should be provided in axis co-ordinates. If provided value is greater than the maximum value of crossing axis, - * then axis will be placed at the opposite side. - * @Default {null} - */ - crossesAt?: number; - - /** Category axis can also plot points based on index value of data points. Index based plotting can be enabled by setting ‘isIndexed’ property to true. - * @Default {false} - */ - isIndexed?: boolean; - - /** Options for customizing the axis line. - */ - axisLine?: AxesAxisLine; - - /** Specifies the index of the column where the axis is associated, when the chart area is divided into multiple plot areas by using columnDefinitions. - * @Default {null} - */ - columnIndex?: number; - - /** Specifies the number of columns or plot areas an axis has to span horizontally. - * @Default {null} - */ - columnSpan?: number; - - /** Options to customize the crosshair label. - */ - crosshairLabel?: AxesCrosshairLabel; - - /** With this setting, you can request axis to calculate intervals approximately equal to your desired interval. - * @Default {null} - */ - desiredIntervals?: number; - - /** Specifies the placement of labels. - * @Default {ej.datavisualization.Chart.LabelPlacement.BetweenTicks. See LabelPlacement} - */ - labelPlacement?: ej.datavisualization.Chart.LabelPlacement | string; - - /** Specifies the position of labels at the edge of the axis. - * @Default {ej.datavisualization.Chart.EdgeLabelPlacement.None. See EdgeLabelPlacement} - */ - edgeLabelPlacement?: ej.datavisualization.Chart.EdgeLabelPlacement | string; - - /** Specifies whether to trim the axis label when the width of the label exceeds the maximumLabelWidth. - * @Default {false} - */ - enableTrim?: boolean; - - /** Options for customizing the font of the axis Labels. - */ - font?: AxesFont; - - /** Specifies the type of interval in date time axis. - * @Default {null. See IntervalType} - */ - intervalType?: ej.datavisualization.Chart.IntervalType | string; - - /** Specifies whether to inverse the axis. - * @Default {false} - */ - isInversed?: boolean; - - /** Custom formatting for axis label and supports all standard formatting type of numerical and date time values. - * @Default {null} - */ - labelFormat?: string; - - /** Specifies the action to take when the axis labels are overlapping with each other. - * @Default {ej.datavisualization.Chart.LabelIntersectAction.None. See LabelIntersectAction} - */ - labelIntersectAction?: ej.datavisualization.Chart.LabelIntersectAction | string; - - /** Specifies the position of the axis labels. - * @Default {outside. See LabelPosition} - */ - labelPosition?: ej.datavisualization.Chart.LabelPosition | string; - - /** Specifies the position of the axis labels. - * @Default {center. See Alignment} - */ - alignment?: ej.datavisualization.Chart.LabelAlignment | string; - - /** Angle in degrees to rotate the axis labels. - * @Default {null} - */ - labelRotation?: number; - - /** Logarithmic base value. This is applicable only for logarithmic axis. - * @Default {10} - */ - logBase?: number; - - /** Options for customizing major gird lines. - */ - majorGridLines?: AxesMajorGridLines; - - /** Options for customizing the major tick lines. - */ - majorTickLines?: AxesMajorTickLines; - - /** Maximum number of labels to be displayed in every 100 pixels. - * @Default {3} - */ - maximumLabels?: number; - - /** Maximum width of the axis label. When the label exceeds the width, the label gets trimmed when the enableTrim is set to true. - * @Default {34} - */ - maximumLabelWidth?: number; - - /** Options for customizing the minor grid lines. - */ - minorGridLines?: AxesMinorGridLines; - - /** Options for customizing the minor tick lines. - */ - minorTickLines?: AxesMinorTickLines; - - /** Specifies the number of minor ticks per interval. - * @Default {null} - */ - minorTicksPerInterval?: number; - - /** Unique name of the axis. To associate an axis with the series, you have to set this name to the xAxisName/yAxisName property of the series. - * @Default {null} - */ - name?: string; - - /** Specifies whether to render the axis at the opposite side of its default position. - * @Default {false} - */ - opposedPosition?: boolean; - - /** Specifies the padding for the plot area. - * @Default {10} - */ - plotOffset?: number; - - /** Options to customize the range of the axis. - */ - range?: AxesRange; - - /** Specifies the padding for the axis range. - * @Default {None. See RangePadding} - */ - rangePadding?: ej.datavisualization.Chart.RangePadding | string; - - /** Rounds the number to the given number of decimals. - * @Default {null} - */ - roundingPlaces?: number; - - /** Options for customizing the multi level labels. - * @Default {[ ]} - */ - multiLevelLabels?: AxesMultiLevelLabel[]; - - /** Specifies whether the axis elements need to be placed nearby the axis line, while crossing. - * @Default {true} - */ - showNextToAxisLine?: boolean; - - /** Options for customizing the strip lines. - * @Default {[ ]} - */ - stripLine?: AxesStripLine[]; - - /** Specifies the position of the axis tick lines. - * @Default {outside. See TickLinesPosition} - */ - tickLinesPosition?: ej.datavisualization.Chart.TickLinesPosition | string; - - /** Options for customizing the border of the labels. - */ - labelBorder?: AxesLabelBorder; - - /** Options for customizing the axis title. - */ - title?: AxesTitle; - - /** Specifies the type of data the axis is handling. - * @Default {null. See ValueType} - */ - valueType?: ej.datavisualization.Chart.ValueType | string; - - /** Show/hides the axis. - * @Default {true} - */ - visible?: boolean; - - /** The axis is scaled by this factor. When zoomFactor is 0.5, the chart is scaled by 200% along this axis. Value ranges from 0 to 1. - * @Default {1} - */ - zoomFactor?: number; - - /** Position of the zoomed axis. Value ranges from 0 to 1. - * @Default {0} - */ - zoomPosition?: number; - } - - export interface PrimaryYAxisAlternateGridBandEven { - - /** Fill color for the even grid bands. - * @Default {transparent} - */ - fill?: string; - - /** Opacity of the even grid band. - * @Default {1} - */ - opacity?: number; - } - - export interface PrimaryYAxisAlternateGridBandOdd { - - /** Fill color of the odd grid bands. - * @Default {transparent} - */ - fill?: string; - - /** Opacity of odd grid band. - * @Default {1} - */ - opacity?: number; - } - - export interface PrimaryYAxisAlternateGridBand { - - /** Options for customizing even grid band. - */ - even?: PrimaryYAxisAlternateGridBandEven; - - /** Options for customizing odd grid band. - */ - odd?: PrimaryYAxisAlternateGridBandOdd; - } - - export interface PrimaryYAxisAxisLine { - - /** Pattern of dashes and gaps to be applied to the axis line. - * @Default {null} - */ - dashArray?: string; - - /** Padding for axis line. Normally, it is used along with plotOffset to pad the plot area. - * @Default {null} - */ - offset?: number; - - /** Show/hides the axis line. - * @Default {true} - */ - visible?: boolean; - - /** Color of axis line. - */ - color?: string; - - /** Width of axis line. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryYAxisCrosshairLabel { - - /** Show/hides the crosshair label associated with this axis. - * @Default {false} - */ - visible?: boolean; - } - - export interface PrimaryYAxisFont { - - /** Font family of labels. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of labels. - * @Default {ej.datavisualization.Chart.FontStyle.Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the label. - * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the axis labels. - * @Default {1} - */ - opacity?: number; - - /** Font size of the axis labels. - * @Default {13px} - */ - size?: string; - } - - export interface PrimaryYAxisMajorGridLines { - - /** Pattern of dashes and gaps used to stroke the major grid lines. - * @Default {null} - */ - dashArray?: string; - - /** Color of the major grid lines. - * @Default {null} - */ - color?: string; - - /** Opacity of major grid lines. - * @Default {1} - */ - opacity?: number; - - /** Show/hides the major grid lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the major grid lines. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryYAxisMajorTickLines { - - /** Length of the major tick lines. - * @Default {5} - */ - size?: number; - - /** Show/hides the major tick lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the major tick lines. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryYAxisMinorGridLines { - - /** Patterns of dashes and gaps used to stroke the minor grid lines. - * @Default {null} - */ - dashArray?: string; - - /** Show/hides the minor grid lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the minorGridLines. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryYAxisMinorTickLines { - - /** Length of the minor tick lines. - * @Default {5} - */ - size?: number; - - /** Show/hides the minor tick lines. - * @Default {true} - */ - visible?: boolean; - - /** Width of the minor tick line - * @Default {1} - */ - width?: number; - } - - export interface PrimaryYAxisRange { - - /** Minimum value of the axis range. - * @Default {null} - */ - min?: number; - - /** Maximum value of the axis range. - * @Default {null} - */ - max?: number; - - /** Interval for the range. - * @Default {null} - */ - interval?: number; - } - - export interface PrimaryYAxisMultiLevelLabelsFont { - - /** Font color of the multi level labels text. - * @Default {null} - */ - color?: string; - - /** Font family of the multi level labels text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the multi level labels text. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the multi level label text. - * @Default {regular} - */ - fontWeight?: string; - - /** Opacity of the multi level label text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the multi level label text. - * @Default {12px} - */ - size?: string; - } - - export interface PrimaryYAxisMultiLevelLabelsBorder { - - /** Border color of the multi level labels. - * @Default {null} - */ - color?: string; - - /** Border width of the multi level labels. - * @Default {1} - */ - width?: number; - - /** Border type of the multi level labels. - * @Default {rectangle. See Type} - */ - type?: ej.datavisualization.Chart.MultiLevelLabelsBorderType | string; - } - - export interface PrimaryYAxisMultiLevelLabel { - - /** Visibility of the multi level labels. - * @Default {false} - */ - visible?: boolean; - - /** Text of the multi level labels. - */ - text?: string; - - /** Starting value of the multi level labels. - * @Default {null} - */ - start?: number; - - /** Ending value of the multi level labels. - * @Default {null} - */ - end?: number; - - /** Specifies the level of multi level labels. - * @Default {0} - */ - level?: number; - - /** Specifies the maximum width of the text in multi level labels. - * @Default {null} - */ - maximumTextWidth?: number; - - /** Specifies the alignment of the text in multi level labels. - * @Default {center. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Chart.TextAlignment | string; - - /** Specifies the handling of text over flow in multi level labels. - * @Default {center. See TextOverflow} - */ - textOverflow?: ej.datavisualization.Chart.TextOverflow | string; - - /** Options for customizing the font of the text. - */ - font?: PrimaryYAxisMultiLevelLabelsFont; - - /** Options for customizing the border of the series. - */ - border?: PrimaryYAxisMultiLevelLabelsBorder; - } - - export interface PrimaryYAxisStripLineFont { - - /** Font color of the strip line text. - * @Default {black} - */ - color?: string; - - /** Font family of the strip line text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the strip line text. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the strip line text. - * @Default {regular} - */ - fontWeight?: string; - - /** Opacity of the strip line text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the strip line text. - * @Default {12px} - */ - size?: string; - } - - export interface PrimaryYAxisStripLine { - - /** Border color of the strip line. - * @Default {gray} - */ - borderColor?: string; - - /** Background color of the strip line. - * @Default {gray} - */ - color?: string; - - /** End value of the strip line. - * @Default {null} - */ - end?: number; - - /** Options for customizing the font of the text. - */ - font?: PrimaryYAxisStripLineFont; - - /** Start value of the strip line. - * @Default {null} - */ - start?: number; - - /** Indicates whether to render the strip line from the minimum/start value of the axis. This property won’t work when start property is set. - * @Default {false} - */ - startFromAxis?: boolean; - - /** Specifies text to be displayed inside the strip line. - * @Default {stripLine} - */ - text?: string; - - /** Specifies the alignment of the text inside the strip line. - * @Default {middlecenter. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Chart.TextAlignment | string; - - /** Show/hides the strip line. - * @Default {false} - */ - visible?: boolean; - - /** Width of the strip line. - * @Default {0} - */ - width?: number; - - /** Specifies the order in which strip line and the series have to be rendered. When Z-order is “behind”, strip line is rendered below the series and - * when it is “over”, it is rendered above the series. - * @Default {over. See ZIndex} - */ - zIndex?: ej.datavisualization.Chart.ZIndex | string; - } - - export interface PrimaryYAxisLabelBorder { - - /** Specifies the color of the label border. - * @Default {null} - */ - color?: string; - - /** Specifies the width of the label border. - * @Default {1} - */ - width?: number; - } - - export interface PrimaryYAxisTitleFont { - - /** Font family of the title text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the title text. - * @Default {ej.datavisualization.Chart.FontStyle.Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the title text. - * @Default {ej.datavisualization.Chart.FontWeight.Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the axis title text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the axis title. - * @Default {16px} - */ - size?: string; - } - - export interface PrimaryYAxisTitle { - - /** Specifies whether to trim the axis title when it exceeds the chart area or the maximum width of the title. - * @Default {ej.datavisualization.Chart.enableTrim} - */ - enableTrim?: boolean; - - /** Options for customizing the title font. - */ - font?: PrimaryYAxisTitleFont; - - /** Maximum width of the title, when the title exceeds this width, the title gets trimmed, when enableTrim is true. - * @Default {ej.datavisualization.Chart.maximumTitleWidth.null} - */ - maximumTitleWidth?: number; - - /** Title for the axis. - */ - text?: string; - - /** Controls the visibility of axis title. - * @Default {true} - */ - visible?: boolean; - - /** offset value for axis title. - * @Default {0} - */ - offset?: number; - - /** Specifies the position of the axis title. - * @Default {outside. See Position} - */ - position?: ej.datavisualization.Chart.LabelPosition | string; - - /** Specifies the position of the axis title. - * @Default {center. See Alignment} - */ - alignment?: ej.datavisualization.Chart.TextAlignment | string; - } - - export interface PrimaryYAxis { - - /** Options for customizing vertical axis alternate grid band. - */ - alternateGridBand?: PrimaryYAxisAlternateGridBand; - - /** Options for customizing the axis line. - */ - axisLine?: PrimaryYAxisAxisLine; - - /** Specifies where horizontal axis should intersect the vertical axis or vice versa. Value should be provided in axis co-ordinates. - * If provided value is greater than the maximum value of crossing axis, then axis will be placed at the opposite side. - * @Default {null} - */ - crossesAt?: number; - - /** Name of the axis used for crossing. Vertical axis name should be provided for horizontal axis and vice versa. If the provided name does not belongs to a valid axis, - * then primary X axis or primary Y axis will be used for crossing - * @Default {null} - */ - crossesInAxis?: string; - - /** Options to customize the crosshair label. - */ - crosshairLabel?: PrimaryYAxisCrosshairLabel; - - /** With this setting, you can request axis to calculate intervals approximately equal to your desired interval. - * @Default {null} - */ - desiredIntervals?: number; - - /** Specifies the placement of labels. - * @Default {ej.datavisualization.Chart.LabelPlacement.BetweenTicks. See LabelPlacement} - */ - labelPlacement?: ej.datavisualization.Chart.LabelPlacement | string; - - /** Specifies the position of labels at the edge of the axis. - * @Default {ej.datavisualization.Chart.EdgeLabelPlacement.None. See EdgeLabelPlacement} - */ - edgeLabelPlacement?: ej.datavisualization.Chart.EdgeLabelPlacement | string; - - /** Specifies whether to trim the axis label when the width of the label exceeds the maximumLabelWidth. - * @Default {false} - */ - enableTrim?: boolean; - - /** Options for customizing the font of the axis Labels. - */ - font?: PrimaryYAxisFont; - - /** Specifies the type of interval in date time axis. - * @Default {null. See IntervalType} - */ - intervalType?: ej.datavisualization.Chart.IntervalType | string; - - /** Specifies whether to inverse the axis. - * @Default {false} - */ - isInversed?: boolean; - - /** Custom formatting for axis label and supports all standard formatting type of numerical and date time values. - * @Default {null} - */ - labelFormat?: string; - - /** Specifies the action to take when the axis labels are overlapping with each other. - * @Default {ej.datavisualization.Chart.LabelIntersectAction.None} - */ - labelIntersectAction?: ej.datavisualization.Chart.LabelIntersectAction | string; - - /** Specifies the position of the axis labels. - * @Default {outside. See LabelPosition} - */ - labelPosition?: ej.datavisualization.Chart.LabelPosition | string; - - /** Specifies the position of the axis labels. - * @Default {center. See Alignment} - */ - alignment?: ej.datavisualization.Chart.LabelAlignment | string; - - /** Logarithmic base value. This is applicable only for logarithmic axis. - * @Default {10} - */ - logBase?: number; - - /** Options for customizing major gird lines. - */ - majorGridLines?: PrimaryYAxisMajorGridLines; - - /** Options for customizing the major tick lines. - */ - majorTickLines?: PrimaryYAxisMajorTickLines; - - /** Maximum number of labels to be displayed in every 100 pixels. - * @Default {3} - */ - maximumLabels?: number; - - /** Maximum width of the axis label. When the label exceeds the width, the label gets trimmed when the enableTrim is set to true. - * @Default {ej.datavisualization.Chart.maximumLabelWidth type {int}} - */ - maximumLabelWidth?: number; - - /** Options for customizing the minor grid lines. - */ - minorGridLines?: PrimaryYAxisMinorGridLines; - - /** Options for customizing the minor tick lines. - */ - minorTickLines?: PrimaryYAxisMinorTickLines; - - /** Specifies the number of minor ticks per interval. - * @Default {null} - */ - minorTicksPerInterval?: number; - - /** Unique name of the axis. To associate an axis with the series, you have to set this name to the xAxisName/yAxisName property of the series. - * @Default {null} - */ - name?: string; - - /** Specifies whether to render the axis at the opposite side of its default position. - * @Default {false} - */ - opposedPosition?: boolean; - - /** Specifies the padding for the plot area. - * @Default {10} - */ - plotOffset?: number; - - /** Options to customize the range of the axis. - */ - range?: PrimaryYAxisRange; - - /** Specifies the padding for the axis range. - * @Default {ej.datavisualization.Chart.RangePadding.None. See RangePadding} - */ - rangePadding?: ej.datavisualization.Chart.RangePadding | string; - - /** Rounds the number to the given number of decimals. - * @Default {null} - */ - roundingPlaces?: number; - - /** Specifies the index of the row to which the axis is associated, when the chart area is divided into multiple plot areas by using rowDefinitions. - * @Default {null} - */ - rowIndex?: number; - - /** Specifies the number of row or plot areas an axis has to span vertically. - * @Default {null} - */ - rowSpan?: number; - - /** Options for customizing the multi level labels. - * @Default {[ ]} - */ - multiLevelLabels?: PrimaryYAxisMultiLevelLabel[]; - - /** Specifies whether the axis elements need to be placed nearby the axis line, while crossing. - * @Default {true} - */ - showNextToAxisLine?: boolean; - - /** Options for customizing the strip lines. - * @Default {[ ]} - */ - stripLine?: PrimaryYAxisStripLine[]; - - /** Specifies the position of the axis tick lines. - * @Default {outside. See TickLinesPosition} - */ - tickLinesPosition?: ej.datavisualization.Chart.TickLinesPosition | string; - - /** Options for customizing the border of the labels. - */ - labelBorder?: PrimaryYAxisLabelBorder; - - /** Options for customizing the axis title. - */ - title?: PrimaryYAxisTitle; - - /** Specifies the type of data the axis is handling. - * @Default {null. See ValueType} - */ - valueType?: ej.datavisualization.Chart.ValueType | string; - - /** Show/hides the axis. - * @Default {true} - */ - visible?: boolean; - - /** The axis is scaled by this factor. When zoomFactor is 0.5, the chart is scaled by 200% along this axis. Values ranges from 0 to 1. - * @Default {1} - */ - zoomFactor?: number; - - /** Position of the zoomed axis. Value ranges from 0 to 1 - * @Default {0} - */ - zoomPosition?: number; - } - - export interface RowDefinition { - - /** Specifies the unit to measure the height of the row in plotting area. - * @Default {'pixel'. See Unit} - */ - unit?: ej.datavisualization.Chart.Unit | string; - - /** Height of the row in plotting area. Height is measured in either pixel or percentage based on the value of unit property. - * @Default {50} - */ - rowHeight?: number; - - /** Color of the line that indicates the starting point of the row in plotting area. - * @Default {transparent} - */ - lineColor?: string; - - /** Width of the line that indicates the starting point of the row in plot area. - * @Default {1} - */ - lineWidth?: number; - } - - export interface SeriesBorder { - - /** Border color of the series. - * @Default {transparent} - */ - color?: string; - - /** Border width of the series. - * @Default {1} - */ - width?: number; - - /** DashArray for border of the series. - * @Default {null} - */ - dashArray?: string; - } - - export interface SeriesFont { - - /** Font color of the series text. - * @Default {#707070} - */ - color?: string; - - /** Font Family of the series. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font Style of the series. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the series. - * @Default {Regular} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of series text. - * @Default {1} - */ - opacity?: number; - - /** Size of the series text. - * @Default {12px} - */ - size?: string; - } - - export interface SeriesMarkerBorder { - - /** Border color of the marker shape. - * @Default {white} - */ - color?: string; - - /** Border width of the marker shape. - * @Default {3} - */ - width?: number; - } - - export interface SeriesMarkerDataLabelBorder { - - /** Border color of the data label. - * @Default {null} - */ - color?: string; - - /** Border width of the data label. - * @Default {0.1} - */ - width?: number; - } - - export interface SeriesMarkerDataLabelConnectorLine { - - /** Specifies when the connector has to be drawn as Bezier curve or straight line. This is applicable only for Pie and Doughnut chart types. - * @Default {line. See ConnectorLineType} - */ - type?: ej.datavisualization.Chart.Type | string; - - /** Width of the connector. - * @Default {0.5} - */ - width?: number; - - /** Color of the connector. - * @Default {null} - */ - color?: string; - - /** Height of the connector. - * @Default {null} - */ - height?: number; - } - - export interface SeriesMarkerDataLabelFont { - - /** Font family of the data label. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font color of the data label text. - * @Default {null} - */ - color?: string; - - /** Font style of the data label. - * @Default {normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the data label. - * @Default {regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the data label. - * @Default {12px} - */ - size?: string; - } - - export interface SeriesMarkerDataLabelMargin { - - /** Bottom margin of the text. - * @Default {5} - */ - bottom?: number; - - /** Left margin of the text. - * @Default {5} - */ - left?: number; - - /** Right margin of the text. - * @Default {5} - */ - right?: number; - - /** Top margin of the text. - * @Default {5} - */ - top?: number; - } - - export interface SeriesMarkerDataLabel { - - /** Angle of the data label in degrees. Only the text gets rotated, whereas the background and border does not rotate. - * @Default {null} - */ - angle?: number; - - /** Maximum label width of the data label. - * @Default {null} - */ - maximumLabelWidth?: number; - - /** Enable the wrap option to the data label. - * @Default {false} - */ - enableWrap?: boolean; - - /** Options for customizing the border of the data label. - */ - border?: SeriesMarkerDataLabelBorder; - - /** Options for displaying and customizing the line that connects point and data label. - */ - connectorLine?: SeriesMarkerDataLabelConnectorLine; - - /** Background color of the data label. - * @Default {null} - */ - fill?: string; - - /** Options for customizing the data label font. - */ - font?: SeriesMarkerDataLabelFont; - - /** Horizontal alignment of the data label. - * @Default {center} - */ - horizontalTextAlignment?: ej.datavisualization.Chart.HorizontalTextAlignment | string; - - /** Margin of the text to its background shape. The size of the background shape increases based on the margin applied to its text. - */ - margin?: SeriesMarkerDataLabelMargin; - - /** Opacity of the data label. - * @Default {1} - */ - opacity?: number; - - /** Background shape of the data label. - * @Default {No shape is rendered by default, so its value is ‘none’. See Shape} - */ - shape?: ej.datavisualization.Chart.Shape | string; - - /** Name of a field in data source where datalabel text is displayed. - */ - textMappingName?: string; - - /** Specifies the position of the data label. This property can be used only for the series such as column, bar, stacked column, stacked bar, 100% stacked column, 100% stacked bar, candle and OHLC. - * @Default {top. See TextPosition} - */ - textPosition?: ej.datavisualization.Chart.TextPosition | string; - - /** Vertical alignment of the data label. - * @Default {'center'} - */ - verticalTextAlignment?: ej.datavisualization.Chart.VerticalTextAlignment | string; - - /** Controls the visibility of the data labels. - * @Default {false} - */ - visible?: boolean; - - /** Custom template to format the data label content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. - */ - template?: string; - - /** Moves the label vertically by some offset. - * @Default {0} - */ - offset?: number; - } - - export interface SeriesMarkerSize { - - /** Height of the marker. - * @Default {6} - */ - height?: number; - - /** Width of the marker. - * @Default {6} - */ - width?: number; - } - - export interface SeriesMarker { - - /** Options for customizing the border of the marker shape. - */ - border?: SeriesMarkerBorder; - - /** Options for displaying and customizing data labels. - */ - dataLabel?: SeriesMarkerDataLabel; - - /** Color of the marker shape. - * @Default {null} - */ - fill?: string; - - /** The URL for the Image that is to be displayed as marker. In order to display image as marker, set series.marker.shape as ‘image’. - */ - imageUrl?: string; - - /** Opacity of the marker. - * @Default {1} - */ - opacity?: number; - - /** Specifies the shape of the marker. - * @Default {circle. See Shape} - */ - shape?: ej.datavisualization.Chart.Shape | string; - - /** Options for customizing the size of the marker shape. - */ - size?: SeriesMarkerSize; - - /** Controls the visibility of the marker shape. - * @Default {false} - */ - visible?: boolean; - } - - export interface SeriesOutlierSettingsSize { - - /** Height of the outlier shape. - * @Default {6} - */ - height?: number; - - /** Width of the outlier shape. - * @Default {6} - */ - width?: number; - } - - export interface SeriesOutlierSettings { - - /** Specifies the shape of the outlier. - * @Default {circle. See Shape} - */ - shape?: ej.datavisualization.Chart.Shape | string; - - /** Options for customizing the size of the outlier shape. - */ - size?: SeriesOutlierSettingsSize; - } - - export interface SeriesEmptyPointSettingsStyleBorder { - - /** Border color of the empty point. - */ - color?: string; - - /** Border width of the empty point. - * @Default {1} - */ - width?: number; - } - - export interface SeriesEmptyPointSettingsStyle { - - /** Color of the empty point. - */ - color?: string; - - /** Options for customizing border of the empty point in the series. - */ - border?: SeriesEmptyPointSettingsStyleBorder; - } - - export interface SeriesEmptyPointSettings { - - /** Controls the visibility of the empty point. - * @Default {true} - */ - visible?: boolean; - - /** Specifies the mode of empty point. - * @Default {gap} - */ - displayMode?: ej.datavisualization.Chart.EmptyPointMode | string; - - /** Options for customizing the color and border of the empty point in the series. - */ - style?: SeriesEmptyPointSettingsStyle; - } - - export interface SeriesConnectorLine { - - /** Width of the connector line. - * @Default {1} - */ - width?: number; - - /** Color of the connector line. - * @Default {#565656} - */ - color?: string; - - /** DashArray of the connector line. - * @Default {null} - */ - dashArray?: string; - - /** Opacity of the connector line. - * @Default {1} - */ - opacity?: number; - } - - export interface SeriesDragSettings { - - /** drag/drop the series - * @Default {false} - */ - enable?: boolean; - - /** Specifies the type of drag settings. - * @Default {xy} - */ - type?: string; - } - - export interface SeriesErrorBarCap { - - /** Show/Hides the error bar cap. - * @Default {true} - */ - visible?: boolean; - - /** Width of the error bar cap. - * @Default {1} - */ - width?: number; - - /** Length of the error bar cap. - * @Default {1} - */ - length?: number; - - /** Color of the error bar cap. - * @Default {#000000} - */ - fill?: string; - } - - export interface SeriesErrorBar { - - /** Show/hides the error bar - * @Default {visible} - */ - visibility?: boolean; - - /** Specifies the type of error bar. - * @Default {FixedValue} - */ - type?: ej.datavisualization.Chart.ErrorBarType | string; - - /** Specifies the mode of error bar. - * @Default {vertical} - */ - mode?: ej.datavisualization.Chart.ErrorBarMode | string; - - /** Specifies the direction of error bar. - * @Default {both} - */ - direction?: ej.datavisualization.Chart.ErrorBarDirection | string; - - /** Value of vertical error bar. - * @Default {3} - */ - verticalErrorValue?: number; - - /** Value of horizontal error bar. - * @Default {1} - */ - horizontalErrorValue?: number; - - /** Value of positive horizontal error bar. - * @Default {1} - */ - horizontalPositiveErrorValue?: number; - - /** Value of negative horizontal error bar. - * @Default {1} - */ - horizontalNegativeErrorValue?: number; - - /** Value of positive vertical error bar. - * @Default {5} - */ - verticalPositiveErrorValue?: number; - - /** Value of negative vertical error bar. - * @Default {5} - */ - verticalNegativeErrorValue?: number; - - /** Fill color of the error bar. - * @Default {#000000} - */ - fill?: string; - - /** Width of the error bar. - * @Default {1} - */ - width?: number; - - /** Options for customizing the error bar cap. - */ - cap?: SeriesErrorBarCap; - } - - export interface SeriesPointsBorder { - - /** Border color of the point. - * @Default {null} - */ - color?: string; - - /** Border width of the point. - * @Default {null} - */ - width?: number; - } - - export interface SeriesPointsMarkerBorder { - - /** Border color of the marker shape. - * @Default {white} - */ - color?: string; - - /** Border width of the marker shape. - * @Default {3} - */ - width?: number; - } - - export interface SeriesPointsMarkerDataLabelBorder { - - /** Border color of the data label. - * @Default {null} - */ - color?: string; - - /** Border width of the data label. - * @Default {0.1} - */ - width?: number; - } - - export interface SeriesPointsMarkerDataLabelConnectorLine { - - /** Specifies when the connector has to be drawn as Bezier curve or straight line. This is applicable only for Pie and Doughnut chart types. - * @Default {line. See ConnectorLineType} - */ - type?: ej.datavisualization.Chart.ConnectorLineType | string; - - /** Width of the connector. - * @Default {0.5} - */ - width?: number; - } - - export interface SeriesPointsMarkerDataLabelFont { - - /** Font family of the data label. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the data label. - * @Default {normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight of the data label. - * @Default {regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the text. - * @Default {1} - */ - opacity?: number; - - /** Font size of the data label. - * @Default {12px} - */ - size?: string; - } - - export interface SeriesPointsMarkerDataLabelMargin { - - /** Bottom margin of the text. - * @Default {5} - */ - bottom?: number; - - /** Left margin of the text. - * @Default {5} - */ - left?: number; - - /** Right margin of the text. - * @Default {5} - */ - right?: number; - - /** Top margin of the text. - * @Default {5} - */ - top?: number; - } - - export interface SeriesPointsMarkerDataLabel { - - /** Angle of the data label in degrees. Only the text gets rotated, whereas the background and border does not rotate. - * @Default {null} - */ - angle?: number; - - /** Options for customizing the border of the data label. - */ - border?: SeriesPointsMarkerDataLabelBorder; - - /** Options for displaying and customizing the line that connects point and data label. - */ - connectorLine?: SeriesPointsMarkerDataLabelConnectorLine; - - /** Background color of the data label. - * @Default {null} - */ - fill?: string; - - /** Options for customizing the data label font. - */ - font?: SeriesPointsMarkerDataLabelFont; - - /** Horizontal alignment of the data label. - * @Default {center} - */ - horizontalTextAlignment?: ej.datavisualization.Chart.HorizontalTextAlignment | string; - - /** Margin of the text to its background shape. The size of the background shape increases based on the margin applied to its text. - */ - margin?: SeriesPointsMarkerDataLabelMargin; - - /** Opacity of the data label. - * @Default {1} - */ - opacity?: number; - - /** Background shape of the data label. - * @Default {No shape is rendered by default, so its value is ‘none’. See Shape} - */ - shape?: ej.datavisualization.Chart.Shape | string; - - /** Specifies the position of the data label. This property can be used only for the series such as column, bar, stacked column, stacked bar, 100% stacked column, 100% stacked bar, candle and OHLC. - * @Default {top. See TextPosition} - */ - textPosition?: ej.datavisualization.Chart.TextPosition | string; - - /** Vertical alignment of the data label. - * @Default {'center'} - */ - verticalTextAlignment?: ej.datavisualization.Chart.VerticalTextAlignment | string; - - /** Controls the visibility of the data labels. - * @Default {false} - */ - visible?: boolean; - - /** Custom template to format the data label content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. - */ - template?: string; - - /** Moves the label vertically by specified offset. - * @Default {0} - */ - offset?: number; - } - - export interface SeriesPointsMarkerSize { - - /** Height of the marker. - * @Default {6} - */ - height?: number; - - /** Width of the marker. - * @Default {6} - */ - width?: number; - } - - export interface SeriesPointsMarker { - - /** Options for customizing the border of the marker shape. - */ - border?: SeriesPointsMarkerBorder; - - /** Options for displaying and customizing data label. - */ - dataLabel?: SeriesPointsMarkerDataLabel; - - /** Color of the marker shape. - * @Default {null} - */ - fill?: string; - - /** The URL for the Image that is to be displayed as marker. In order to display image as marker, set series.marker.shape as ‘image’. - */ - imageUrl?: string; - - /** Opacity of the marker. - * @Default {1} - */ - opacity?: number; - - /** Specifies the shape of the marker. - * @Default {circle. See Shape} - */ - shape?: ej.datavisualization.Chart.Shape | string; - - /** Options for customizing the size of the marker shape. - */ - size?: SeriesPointsMarkerSize; - - /** Controls the visibility of the marker shape. - * @Default {false} - */ - visible?: boolean; - } - - export interface SeriesPoint { - - /** Options for customizing the border of a point. This is applicable only for column type series and accumulation type series. - */ - border?: SeriesPointsBorder; - - /** Enables or disables the visibility of legend item. - * @Default {visible} - */ - visibleOnLegend?: string; - - /** To show/hide the intermediate summary from the last intermediate point. - * @Default {false} - */ - showIntermediateSum?: boolean; - - /** To show/hide the total summary of the waterfall series. - * @Default {false} - */ - showTotalSum?: boolean; - - /** Close value of the point. Close value is applicable only for financial type series. - * @Default {null} - */ - close?: number; - - /** Size of a bubble in the bubble series. This is applicable only for the bubble series. - * @Default {null} - */ - size?: number; - - /** Background color of the point. This is applicable only for column type series and accumulation type series. - * @Default {null} - */ - fill?: string; - - /** High value of the point. High value is applicable only for financial type series, range area series and range column series. - * @Default {null} - */ - high?: number; - - /** Low value of the point. Low value is applicable only for financial type series, range area series and range column series. - * @Default {null} - */ - low?: number; - - /** Options for displaying and customizing marker for a data point. Marker contains shapes and/or data labels. - */ - marker?: SeriesPointsMarker; - - /** Open value of the point. This is applicable only for financial type series. - * @Default {null} - */ - open?: number; - - /** Datalabel text for the point. - * @Default {null} - */ - text?: string; - - /** X value of the point. - * @Default {null} - */ - x?: number; - - /** Y value of the point. - * @Default {null} - */ - y?: number; - } - - export interface SeriesCornerRadius { - - /** Specifies the radius for the top left corner. - * @Default {0} - */ - topLeft?: number; - - /** Specifies the radius for the top right corner. - * @Default {0} - */ - topRight?: number; - - /** Specifies the radius for the bottom left corner. - * @Default {0} - */ - bottomLeft?: number; - - /** Specifies the radius for the bottom right corner. - * @Default {0} - */ - bottomRight?: number; - } - - export interface SeriesTooltipBorder { - - /** Border Color of the tooltip. - * @Default {null} - */ - color?: string; - - /** Border Width of the tooltip. - * @Default {1} - */ - width?: number; - } - - export interface SeriesTooltip { - - /** Options for customizing the border of the tooltip. - */ - border?: SeriesTooltipBorder; - - /** Customize the corner radius of the tooltip rectangle. - * @Default {0} - */ - rx?: number; - - /** Customize the corner radius of the tooltip rectangle. - * @Default {0} - */ - ry?: number; - - /** Specifies the duration, the tooltip has to be displayed. - * @Default {500ms} - */ - duration?: string; - - /** Enables/disables the animation of the tooltip when moving from one point to another. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Background color of the tooltip. - * @Default {null} - */ - fill?: string; - - /** Format of the tooltip content. - * @Default {#point.x# : #point.y#} - */ - format?: string; - - /** Opacity of the tooltip. - * @Default {0.95} - */ - opacity?: number; - - /** Custom template to format the tooltip content. Use “point.x” and “point.y” as a placeholder text to display the corresponding data point’s x and y value. - * @Default {null} - */ - template?: string; - - /** Controls the visibility of the tooltip. - * @Default {false} - */ - visible?: boolean; - } - - export interface SeriesTrendline { - - /** Show/hides the trendline. - */ - visibility?: boolean; - - /** Specifies the type of trendline for the series. - * @Default {linear. See TrendlinesType} - */ - type?: string; - - /** Name for the trendlines that is to be displayed in legend text. - * @Default {Trendline} - */ - name?: string; - - /** Fill color of the trendlines. - * @Default {#0000FF} - */ - fill?: string; - - /** Width of the trendlines. - * @Default {1} - */ - width?: number; - - /** Opacity of the trendline. - * @Default {1} - */ - opacity?: number; - - /** Pattern of dashes and gaps used to stroke the trendline. - */ - dashArray?: string; - - /** Future trends of the current series. - * @Default {0} - */ - forwardForecast?: number; - - /** Past trends of the current series. - * @Default {0} - */ - backwardForecast?: number; - - /** Specifies the order of polynomial trendlines. - * @Default {0} - */ - polynomialOrder?: number; - - /** Specifies the moving average starting period value. - * @Default {2} - */ - period?: number; - } - - export interface SeriesHighlightSettingsBorder { - - /** Border color of the series/point on highlight. - */ - color?: string; - - /** Border width of the series/point on highlight. - * @Default {2} - */ - width?: string; - } - - export interface SeriesHighlightSettings { - - /** Enables/disables the ability to highlight series or data point interactively. - * @Default {false} - */ - enable?: boolean; - - /** Specifies whether series or data point has to be highlighted. - * @Default {series. See Mode} - */ - mode?: ej.datavisualization.Chart.Mode | string; - - /** Color of the series/point on highlight. - */ - color?: string; - - /** Opacity of the series/point on highlight. - * @Default {0.6} - */ - opacity?: number; - - /** Options for customizing the border of series on highlight. - */ - border?: SeriesHighlightSettingsBorder; - - /** Specifies the pattern for the series/point on highlight. - * @Default {none. See Pattern} - */ - pattern?: string; - - /** Custom pattern for the series on highlight. - */ - customPattern?: string; - } - - export interface SeriesSelectionSettingsBorder { - - /** Border color of the series/point on selection. - */ - color?: string; - - /** Border width of the series/point on selection. - * @Default {2} - */ - width?: string; - } - - export interface SeriesSelectionSettings { - - /** Enables/disables the ability to select a series/data point interactively. - * @Default {false} - */ - enable?: boolean; - - /** Specifies whether series or data point has to be selected. - * @Default {series. See Mode} - */ - mode?: ej.datavisualization.Chart.Mode | string; - - /** Specifies the type of selection. - * @Default {single} - */ - type?: ej.datavisualization.Chart.SelectionType | string; - - /** Specifies the drawn rectangle type. - * @Default {xy} - */ - rangeType?: ej.datavisualization.Chart.RangeType | string; - - /** Color of the series/point on selection. - */ - color?: string; - - /** Opacity of the series/point on selection. - * @Default {0.6} - */ - opacity?: number; - - /** Options for customizing the border of series on selection. - */ - border?: SeriesSelectionSettingsBorder; - - /** Specifies the pattern for the series/point on selection. - * @Default {none. See Pattern} - */ - pattern?: string; - - /** Custom pattern for the series on selection. - */ - customPattern?: string; - } - - export interface Series { - - /** Color of the point, where the close is up in financial chart. - * @Default {null} - */ - bearFillColor?: string; - - /** Options for customizing the border of the series. - */ - border?: SeriesBorder; - - /** Color of the point, where the close is down in financial chart. - * @Default {null} - */ - bullFillColor?: string; - - /** To render the column and bar type series in rectangle/cylinder shape. See ColumnFacet - * @Default {rectangle} - */ - columnFacet?: ej.datavisualization.Chart.ColumnFacet | string; - - /** Relative width of the columns in column type series. Value ranges from 0 to 1. Width also depends upon columnSpacing property. - * @Default {0.7} - */ - columnWidth?: number; - - /** Spacing between columns of different series. Value ranges from 0 to 1 - * @Default {0} - */ - columnSpacing?: number; - - /** To group the series of stacking collection. - */ - stackingGroup?: string; - - /** Pattern of dashes and gaps used to stroke the line type series. - */ - dashArray?: string; - - /** Specifies the dataSource for the series. It can be an array of JSON objects or an instance of ej.DataManager. - * @Default {null} - */ - dataSource?: any; - - /** Controls the size of the hole in doughnut series. Value ranges from 0 to 1. - * @Default {0.4} - */ - doughnutCoefficient?: number; - - /** Controls the size of the doughnut series. Value ranges from 0 to 1. - * @Default {0.8} - */ - doughnutSize?: number; - - /** Type of series to be drawn in radar or polar series. - * @Default {line. See DrawType} - */ - drawType?: ej.datavisualization.Chart.DrawType | string; - - /** Enable/disable the animation of series. - * @Default {false} - */ - enableAnimation?: boolean; - - /** To avoid overlapping of data labels smartly. - * @Default {null} - */ - enableSmartLabels?: number; - - /** End angle of pie/doughnut series. For a complete circle, it has to be 360, by default. - * @Default {null} - */ - endAngle?: number; - - /** Explodes the pie/doughnut slices on mouse move. - * @Default {false} - */ - explode?: boolean; - - /** Explodes all the slice of pie/doughnut on render. - * @Default {null} - */ - explodeAll?: boolean; - - /** Index of the point to be exploded from pie/doughnut/pyramid/funnel. - * @Default {null} - */ - explodeIndex?: number; - - /** Specifies the distance of the slice from the center, when it is exploded. - * @Default {25} - */ - explodeOffset?: number; - - /** Fill color of the series. - * @Default {null} - */ - fill?: string; - - /** Options for customizing the series font. - */ - font?: SeriesFont; - - /** Specifies the height of the funnel in funnel series. Values can be in both pixel and percentage. - * @Default {32.7%} - */ - funnelHeight?: string; - - /** Specifies the width of the funnel in funnel series. Values can be in both pixel and percentage. - * @Default {11.6%} - */ - funnelWidth?: string; - - /** Gap between the slices of pyramid/funnel series. - * @Default {0} - */ - gapRatio?: number; - - /** Specifies whether to join start and end point of a line/area series used in polar/radar chart to form a closed path. - * @Default {true} - */ - isClosed?: boolean; - - /** Specifies whether to stack the column series in polar/radar charts. - * @Default {true} - */ - isStacking?: boolean; - - /** Renders the chart vertically. This is applicable only for Cartesian type series. - * @Default {false} - */ - isTransposed?: boolean; - - /** Render the x mark in the center of the box and whisker series type.x represents the average value of the box and whisker series. - * @Default {true} - */ - showMedian?: boolean; - - /** Position of the data label in pie/doughnut/pyramid/funnel series. OutsideExtended position is not applicable for pyramid/funnel. - * @Default {inside. See LabelPosition} - */ - labelPosition?: ej.datavisualization.Chart.LabelPosition | string; - - /** Specifies the mode for splitting the data points in pieOfPie series. - * @Default {value. See SplitMode} - */ - splitMode?: ej.datavisualization.Chart.SplitMode | string; - - /** Quartile calculation has been performed in three different formulas to render the boxplot series . - * @Default {exclusive} - */ - boxPlotMode?: ej.datavisualization.Chart.LabelPosition | string; - - /** Specifies the line cap of the series. - * @Default {Butt. See LineCap} - */ - lineCap?: ej.datavisualization.Chart.LineCap | string; - - /** Specifies the type of shape to be used where two lines meet. - * @Default {Round. See LineJoin} - */ - lineJoin?: ej.datavisualization.Chart.LineJoin | string; - - /** Options for displaying and customizing marker for individual point in a series. Marker contains shapes and/or data labels. - */ - marker?: SeriesMarker; - - /** Name of the series, that is to be displayed in the legend. - * @Default {Add a comment to this line} - */ - name?: string; - - /** Opacity of the series. - * @Default {1} - */ - opacity?: number; - - /** Options for customizing the outlier of individual series. - */ - outlierSettings?: SeriesOutlierSettings; - - /** Name of a field in data source where fill color for all the data points is generated. - */ - palette?: string; - - /** Controls the size of pie series. Value ranges from 0 to 1. - * @Default {0.8} - */ - pieCoefficient?: number; - - /** Controls the size of the second pie in pieOfPie series. Value ranges from 0 to 1. - * @Default {0.6} - */ - pieOfPieCoefficient?: number; - - /** Split Value of pieofpie series. - * @Default {null} - */ - splitValue?: string; - - /** Distance between the two pie's in pieOfPie series. - * @Default {50} - */ - gapWidth?: number; - - /** Options for customizing the empty point in the series. - */ - emptyPointSettings?: SeriesEmptyPointSettings; - - /** Fill color for the positive column of the waterfall. - * @Default {null} - */ - positiveFill?: string; - - /** Options for customizing the waterfall connector line. - */ - connectorLine?: SeriesConnectorLine; - - /** Options to customize the drag and drop in series. - */ - dragSettings?: SeriesDragSettings; - - /** Options to customize the error bar in series. - */ - errorBar?: SeriesErrorBar; - - /** Option to add data points; each point should have x and y property. Also, optionally, you can customize the points color, border, marker by using fill, border and marker options. - */ - points?: SeriesPoint[]; - - /** Specifies the mode of the pyramid series. - * @Default {linear} - */ - pyramidMode?: ej.datavisualization.Chart.PyramidMode | string; - - /** Specifies ej.Query to select data from dataSource. This property is applicable only when the dataSource is ej.DataManager. - * @Default {null} - */ - query?: any; - - /** Start angle from where the pie/doughnut series renders. It starts from 0, by default. - * @Default {null} - */ - startAngle?: number; - - /** Options for customizing the corner radius. cornerRadius property also takes the numeric input and applies it for all the four corners of the column. - */ - cornerRadius?: SeriesCornerRadius; - - /** Options for customizing the tooltip of chart. - */ - tooltip?: SeriesTooltip; - - /** Specifies the type of the series to render in chart. - * @Default {column. see Type} - */ - type?: ej.datavisualization.Chart.Type | string; - - /** Controls the visibility of the series. - * @Default {visible} - */ - visibility?: string; - - /** Enables or disables the visibility of legend item. - * @Default {visible} - */ - visibleOnLegend?: string; - - /** Specifies the name of the x-axis that has to be associated with this series. Add an axis instance with this name to axes collection. - * @Default {null} - */ - xAxisName?: string; - - /** Name of the property in the datasource that contains x value for the series. - * @Default {null} - */ - xName?: string; - - /** Specifies the name of the y-axis that has to be associated with this series. Add an axis instance with this name to axes collection. - * @Default {null} - */ - yAxisName?: string; - - /** Name of the property in the datasource that contains y value for the series. - * @Default {null} - */ - yName?: string; - - /** Name of the property in the datasource that contains high value for the series. - * @Default {null} - */ - high?: string; - - /** Name of the property in the datasource that contains low value for the series. - * @Default {null} - */ - low?: string; - - /** Name of the property in the datasource that contains open value for the series. - * @Default {null} - */ - open?: string; - - /** Name of the property in the datasource that contains close value for the series. - * @Default {null} - */ - close?: string; - - /** Name of the property in the datasource that contains fill color for the series. - * @Default {null} - */ - pointColorMappingName?: string; - - /** Z-order of the series. - * @Default {0} - */ - zOrder?: number; - - /** Name of the property in the datasource that contains the size value for the bubble series. - * @Default {null} - */ - size?: string; - - /** Option to add trendlines to chart. - */ - trendlines?: SeriesTrendline[]; - - /** Options for customizing the appearance of the series or data point while highlighting. - */ - highlightSettings?: SeriesHighlightSettings; - - /** Options for customizing the appearance of the series/data point on selection. - */ - selectionSettings?: SeriesSelectionSettings; - } - - export interface Size { - - /** Height of the Chart. Height can be specified in either pixel or percentage. - * @Default {'450'} - */ - height?: string; - - /** Width of the Chart. Width can be specified in either pixel or percentage. - * @Default {'450'} - */ - width?: string; - } - - export interface TitleBorder { - - /** Width of the title border. - * @Default {1} - */ - width?: number; - - /** color of the title border. - * @Default {transparent} - */ - color?: string; - - /** opacity of the title border. - * @Default {0.8} - */ - opacity?: number; - - /** opacity of the title border. - * @Default {0.8} - */ - cornerRadius?: number; - } - - export interface TitleFont { - - /** Font family for Chart title. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for Chart title. - * @Default {Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight for Chart title. - * @Default {Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the Chart title. - * @Default {0.5} - */ - opacity?: number; - - /** Font size for Chart title. - * @Default {20px} - */ - size?: string; - } - - export interface TitleSubTitleFont { - - /** Font family of sub title. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for sub title. - * @Default {Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Chart.FontStyle | string; - - /** Font weight for sub title. - * @Default {Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Chart.FontWeight | string; - - /** Opacity of the sub title. - * @Default {1} - */ - opacity?: number; - - /** Font size for sub title. - * @Default {12px} - */ - size?: string; - } - - export interface TitleSubTitleBorder { - - /** Width of the subtitle border. - * @Default {1} - */ - width?: number; - - /** color of the subtitle border. - * @Default {transparent} - */ - color?: string; - - /** opacity of the subtitle border. - * @Default {0.8} - */ - opacity?: number; - - /** opacity of the subtitle border. - * @Default {0.8} - */ - cornerRadius?: number; - } - - export interface TitleSubTitle { - - /** Options for customizing the font of sub title. - */ - font?: TitleSubTitleFont; - - /** Background color for the chart subtitle. - * @Default {transparent} - */ - background?: string; - - /** Options to customize the border of the title. - */ - border?: TitleSubTitleBorder; - - /** Text to be displayed in sub title. - */ - text?: string; - - /** Alignment of sub title text. - * @Default {far. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Chart.Alignment | string; - } - - export interface Title { - - /** Background color for the chart title. - * @Default {transparent} - */ - background?: string; - - /** Options to customize the border of the title. - */ - border?: TitleBorder; - - /** Options for customizing the font of Chart title. - */ - font?: TitleFont; - - /** Options to customize the sub title of Chart. - */ - subTitle?: TitleSubTitle; - - /** Text to be displayed in Chart title. - */ - text?: string; - - /** Alignment of the title text. - * @Default {Center. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Chart.Alignment | string; - } - - export interface Zooming { - - /** Enables or disables zooming. - * @Default {false} - */ - enable?: boolean; - - /** Enables or disables pinch zooming. - * @Default {true} - */ - enablePinching?: boolean; - - /** Enable or disables the differed zooming. When it is enabled, chart is updated only on mouse up action while zooming and panning. - * @Default {false} - */ - enableDeferredZoom?: boolean; - - /** Enables/disables the ability to zoom the chart on moving the mouse wheel. - * @Default {false} - */ - enableMouseWheel?: boolean; - - /** Specifies whether to allow zooming the chart vertically or horizontally or in both ways. - * @Default {'x,y'} - */ - type?: string; - - /** Toggles the visibility of the scrollbar, which will be displayed while zooming. - * @Default {false} - */ - enableScrollbar?: boolean; - - /** To display user specified buttons in zooming toolbar. - * @Default {[zoomIn, zoomOut, zoom, pan, reset]} - */ - toolbarItems?: any[]; - } - } - namespace Chart { - enum CoordinateUnit { - //string - None, - //string - Pixels, - //string - Points, - } - } - namespace Chart { - enum HorizontalAlignment { - //string - Left, - //string - Right, - //string - Middle, - } - } - namespace Chart { - enum Region { - //string - Chart, - //string - Series, - } - } - namespace Chart { - enum VerticalAlignment { - //string - Top, - //string - Bottom, - //string - Middle, - } - } - namespace Chart { - enum ExportingType { - //string - PNG, - //string - JPG, - //string - PDF, - //string - DOCX, - //string - XLSX, - //string - SVG, - } - } - namespace Chart { - enum ExportingOrientation { - //string - Portrait, - //string - Landscape, - } - } - namespace Chart { - enum ExportingMode { - //string - ServerSide, - //string - ClientSide, - } - } - namespace Chart { - enum Unit { - //string - Percentage, - //string - Pixel, - } - } - namespace Chart { - enum ColumnFacet { - //string - Rectangle, - //string - Cylinder, - } - } - namespace Chart { - enum DrawType { - //string - Line, - //string - Area, - //string - Column, - } - } - namespace Chart { - enum FontStyle { - //string - Normal, - //string - Italic, - } - } - namespace Chart { - enum FontWeight { - //string - Regular, - //string - Bold, - //string - Lighter, - } - } - namespace Chart { - enum LabelPosition { - //string - Inside, - //string - Outside, - //string - OutsideExtended, - } - } - - namespace Chart { - enum SplitMode { - //string - Position, - //string - Value, - //string - Percentage, - //string - Indexes, - } - } - namespace Chart { - enum boxPlotMode { - //string - Exclusive, - //string - Inclusive, - //string - Normal, - } - } - namespace Chart { - enum LineCap { - //string - Butt, - //string - Round, - //string - Square, - } - } - namespace Chart { - enum LineJoin { - //string - Round, - //string - Bevel, - //string - Miter, - } - } - namespace Chart { - enum ConnectorLineType { - //string - Line, - //string - Bezier, - } - } - namespace Chart { - enum HorizontalTextAlignment { - //string - Center, - //string - Near, - //string - Far, - } - } - namespace Chart { - enum Shape { - //string - None, - //string - LeftArrow, - //string - RightArrow, - //string - Circle, - //string - Cross, - //string - HorizLine, - //string - VertLine, - //string - Diamond, - //string - Rectangle, - //string - Triangle, - //string - Hexagon, - //string - Pentagon, - //string - Star, - //string - Ellipse, - //string - Trapezoid, - //string - UpArrow, - //string - DownArrow, - //string - Image, - //string - SeriesType, - } - } - namespace Chart { - enum TextPosition { - //string - Top, - //string - Bottom, - //string - Middle, - } - } - namespace Chart { - enum VerticalTextAlignment { - //string - Center, - //string - Near, - //string - Far, - } - } - namespace Chart { - enum PyramidMode { - //string - Linear, - //string - Surface, - } - } - namespace Chart { - enum Type { - //string - Area, - //string - Line, - //string - Spline, - //string - Column, - //string - Scatter, - //string - Bubble, - //string - SplineArea, - //string - StepArea, - //string - StepLine, - //string - Pie, - //string - HiLo, - //string - HiLoOpenClose, - //string - Candle, - //string - Bar, - //string - StackingArea, - //string - StackingArea100, - //string - RangeColumn, - //string - StackingColumn, - //string - StackingColumn100, - //string - StackingBar, - //string - StackingBar100, - //string - Pyramid, - //string - Funnel, - //string - Doughnut, - //string - Polar, - //string - Radar, - //string - RangeArea, - } - } - namespace Chart { - enum EmptyPointMode { - //string - Gap, - //string - Zero, - //string - Average, - } - } - namespace Chart { - enum ErrorBarType { - //string - FixedValue, - //string - Percentage, - //string - StandardDeviation, - //string - StandardError, - } - } - namespace Chart { - enum ErrorBarMode { - //string - Both, - //string - Vertical, - //string - Horizontal, - } - } - namespace Chart { - enum ErrorBarDirection { - //string - Both, - //string - Plus, - //string - Minus, - } - } - namespace Chart { - enum Mode { - //string - Series, - //string - Point, - //string - Cluster, - //string - Range, - } - } - namespace Chart { - enum SelectionType { - //string - Single, - //string - Multiple, - } - } - namespace Chart { - enum RangeType { - //string - XY, - //string - X, - //string - Y, - } - } - namespace Chart { - enum CrosshairMode { - //string - Float, - //string - Grouping, - } - } - namespace Chart { - enum CrosshairType { - //string - Crosshair, - //string - Trackball, - } - } - namespace Chart { - enum Alignment { - //string - Center, - //string - Near, - //string - Far, - } - } - namespace Chart { - enum Position { - //string - Left, - //string - Right, - //string - Top, - //string - Bottom, - } - } - namespace Chart { - enum TextOverflow { - //string - None, - //string - Trim, - //string - Wrap, - //string - WrapAndTrim, - } - } - namespace Chart { - enum LabelPlacement { - //string - OnTicks, - //string - BetweenTicks, - } - } - namespace Chart { - enum EdgeLabelPlacement { - //string - None, - //string - Shift, - //string - Hide, - } - } - namespace Chart { - enum IntervalType { - //string - Days, - //string - Hours, - //string - Seconds, - //string - Milliseconds, - //string - Minutes, - //string - Months, - //string - Years, - } - } - namespace Chart { - enum LabelIntersectAction { - //string - None, - //string - Rotate90, - //string - Rotate45, - //string - Wrap, - //string - WrapByword, - //string - Trim, - //string - Hide, - //string - MultipleRows, - } - } - namespace Chart { - enum LabelAlignment { - //string - Near, - //string - Far, - //string - Center, - } - } - namespace Chart { - enum RangePadding { - //string - Additional, - //string - Normal, - //string - None, - //string - Round, - } - } - namespace Chart { - enum MultiLevelLabelsBorderType { - //string - Rectangle, - //string - None, - //string - WithoutTopAndBottom, - //string - Brace, - //string - CurlyBrace, - } - } - namespace Chart { - enum TextAlignment { - //string - MiddleTop, - //string - MiddleCenter, - //string - MiddleBottom, - } - } - namespace Chart { - enum ZIndex { - //string - Inside, - //string - Over, - } - } - namespace Chart { - enum TickLinesPosition { - //string - Inside, - //string - Outside, - } - } - namespace Chart { - enum ValueType { - //string - Double, - //string - Category, - //string - DateTime, - //string - Logarithmic, - } - } - namespace Chart { - enum Theme { - //string - Azure, - //string - FlatLight, - //string - FlatDark, - //string - Azuredark, - //string - Lime, - //string - LimeDark, - //string - Saffron, - //string - SaffronDark, - //string - GradientLight, - //string - GradientDark, - } - } - - class RangeNavigator extends ej.Widget { - static fn: RangeNavigator; - constructor(element: JQuery | Element, options?: RangeNavigator.Model); - static Locale: any; - model: RangeNavigator.Model; - defaults: RangeNavigator.Model; - - /** destroy the range navigator widget - * @returns {void} - */ - _destroy(): void; - } - export namespace RangeNavigator { - - export interface Model { - - /** Toggles the placement of slider exactly on the place it left or on the nearest interval. - * @Default {false} - */ - allowSnapping?: boolean; - - /** Options for customizing the color, opacity and width of the chart border. - */ - border?: Border; - - /** Specifies the data source for range navigator. - */ - dataSource?: any; - - /** Specifies the properties used for customizing the range series. - */ - series?: Series[]; - - /** Toggles the redrawing of chart on moving the sliders. - * @Default {true} - */ - enableDeferredUpdate?: boolean; - - /** Enable the scrollbar option in the rangenavigator. - * @Default {false} - */ - enableScrollbar?: boolean; - - /** Enable the resize option in the rangenavigator. - * @Default {false} - */ - enableAutoResizing?: boolean; - - /** Toggles the direction of rendering the range navigator control. - * @Default {false} - */ - enableRTL?: boolean; - - /** Sets a value whether to make the range navigator responsive on resize. - * @Default {false} - */ - isResponsive?: boolean; - - /** Options for customizing the labels colors, font, style, size, horizontalAlignment and opacity. - */ - labelSettings?: LabelSettings; - - /** This property is to specify the localization of range navigator. - * @Default {en-US} - */ - locale?: string; - - /** Options for customizing the range navigator. - */ - navigatorStyleSettings?: NavigatorStyleSettings; - - /** Padding specifies the gap between the container and the range navigator. - * @Default {0} - */ - padding?: string; - - /** If the range is not given explicitly, range will be calculated automatically. - * @Default {none} - */ - rangePadding?: ej.datavisualization.RangeNavigator.RangePadding | string; - - /** Options for customizing the starting and ending ranges. - */ - rangeSettings?: RangeSettings; - - /** selectedData is for getting the data when the "rangeChanged" event trigger from client side. - */ - selectedData?: any; - - /** Options for customizing the start and end range values. - */ - selectedRangeSettings?: SelectedRangeSettings; - - /** Options for rendering scrollbar based on the start and end range values. - */ - scrollRangeSettings?: ScrollRangeSettings; - - /** Contains property to customize the hight and width of range navigator. - */ - sizeSettings?: SizeSettings; - - /** By specifying this property the user can change the theme of the range navigator. - * @Default {null} - */ - theme?: string; - - /** Options for customizing the tooltip in range navigator. - */ - tooltipSettings?: TooltipSettings; - - /** Options for configuring minor grid lines, major grid lines, axis line of axis. - */ - valueAxisSettings?: ValueAxisSettings; - - /** You can plot data of type date time or numeric. This property determines the type of data that this axis will handle. - * @Default {datetime} - */ - valueType?: ej.datavisualization.RangeNavigator.ValueType | string; - - /** Specifies the xName for dataSource. This is used to take the x values from dataSource - */ - xName?: any; - - /** Specifies the yName for dataSource. This is used to take the y values from dataSource - */ - yName?: any; - - /** Fires on load of range navigator. */ - load?(e: LoadEventArgs): void; - - /** Fires after range navigator is loaded. */ - loaded?(e: LoadedEventArgs): void; - - /** Fires on changing the range of range navigator. */ - rangeChanged?(e: RangeChangedEventArgs): void; - - /** Fires on changing the scrollbar position of range navigator. */ - scrollChanged?(e: ScrollChangedEventArgs): void; - - /** Fires on when starting to change the scrollbar position of range navigator. */ - scrollStart?(e: ScrollStartEventArgs): void; - - /** Fires on when starting to change the slider position of range navigator. */ - selectedRangeStart?(e: SelectedRangeStartEventArgs): void; - - /** Fires when the selection ends in the range navigator */ - selectedRangeEnd?(e: SelectedRangeEndEventArgs): void; - - /** Fires on changes ending the scrollbar position of range navigator. */ - scrollEnd?(e: ScrollEndEventArgs): void; - } - - export interface LoadEventArgs { - - /** parameters from range navigator - */ - Data?: any; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the range navigator model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface LoadedEventArgs { - - /** parameters from range navigator - */ - Data?: any; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the range navigator model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface RangeChangedEventArgs { - - /** parameters from range navigator - */ - Data?: any; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the range navigator model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface ScrollChangedEventArgs { - - /** parameters from RangeNavigator - */ - data?: any; - - /** returns the scrollbar position old start and end range value on changing scrollbar - */ - dataoldRange?: any; - - /** returns the scrollbar position new start and end range value on changing scrollbar - */ - datanewRange?: any; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RangeNavigator model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface ScrollStartEventArgs { - - /** parameters from RangeNavigator - */ - data?: any; - - /** returns the scrollbar position starting range value on changing scrollbar - */ - datastartRange?: string; - - /** returns the scrollbar position end range value on changing scrollbar - */ - dataendRange?: string; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RangeNavigator model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface SelectedRangeStartEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - } - - export interface SelectedRangeEndEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - } - export interface ScrollEndEventArgs { - - /** parameters from RangeNavigator - */ - data?: any; - - /** returns the scrollbar position old start and end range value on change end of scrollbar - */ - dataoldRange?: any; - - /** returns the scrollbar position new start and end range value on change end of scrollbar - */ - datanewRange?: any; - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the RangeNavigator model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - } - - export interface Border { - - /** Border color of rangenavigator. When enable the scrollbar, the default color will be set as "#B4B4B4". - * @Default {transparent} - */ - color?: string; - - /** Opacity of the rangeNavigator border. - * @Default {1} - */ - opacity?: number; - - /** Width of the RangeNavigator border. - * @Default {1} - */ - width?: number; - } - - export interface Series { - - /** Name of the property in the datasource that contains x value for the series. - * @Default {null} - */ - xName?: string; - - /** Name of the property in the datasource that contains y value for the series. - * @Default {null} - */ - yName?: string; - - /** Specifies the dataSource for the series. It can be an array of JSON objects or an instance of ej.DataManager. - * @Default {null} - */ - dataSource?: any; - - /** Specifies the type of the series to render in chart. - * @Default {column. see Type} - */ - type?: ej.datavisualization.RangeNavigator.Type | string; - - /** Enable/disable the animation of series. - * @Default {false} - */ - enableAnimation?: boolean; - - /** Fill color of the series. - * @Default {null} - */ - fill?: string; - } - - export interface LabelSettingsHigherLevelBorder { - - /** Specifies the border color of grid lines. - * @Default {transparent} - */ - color?: string; - - /** Specifies the border width of grid lines. - * @Default {0.5} - */ - width?: string; - } - - export interface LabelSettingsHigherLevelGridLineStyle { - - /** Specifies the color of grid lines in higher level. - * @Default {#B5B5B5} - */ - color?: string; - - /** Specifies the dashArray of grid lines in higher level. - * @Default {20 5 0} - */ - dashArray?: string; - - /** Specifies the width of grid lines in higher level. - * @Default {#B5B5B5} - */ - width?: string; - } - - export interface LabelSettingsHigherLevelStyleFont { - - /** Specifies the label font color. Labels render with the specified font color. - * @Default {black} - */ - color?: string; - - /** Specifies the label font family. Labels render with the specified font family. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the label font style. Labels render with the specified font style. - * @Default {Normal} - */ - fontStyle?: string; - - /** Specifies the label font weight. Labels render with the specified font weight. - * @Default {regular} - */ - fontWeight?: string; - - /** Specifies the label opacity. Labels render with the specified opacity. - * @Default {1} - */ - opacity?: number; - - /** Specifies the label font size. Labels render with the specified font size. - * @Default {12px} - */ - size?: string; - } - - export interface LabelSettingsHigherLevelStyle { - - /** Options for customizing the font properties. - */ - font?: LabelSettingsHigherLevelStyleFont; - - /** Specifies the horizontal text alignment of the text in label. - * @Default {middle} - */ - horizontalAlignment?: string; - } - - export interface LabelSettingsHigherLevel { - - /** Options for customizing the border of grid lines in higher level. - */ - border?: LabelSettingsHigherLevelBorder; - - /** Specifies the fill color of higher level labels. - * @Default {transparent} - */ - fill?: string; - - /** Options for customizing the grid line colors, width, dashArray, border. - */ - gridLineStyle?: LabelSettingsHigherLevelGridLineStyle; - - /** Specifies the intervalType for higher level labels. See IntervalType - * @Default {auto} - */ - intervalType?: ej.datavisualization.RangeNavigator.IntervalType | string; - - /** Specifies the position of the labels to render either inside or outside of plot area - * @Default {outside} - */ - labelPlacement?: ej.datavisualization.RangeNavigator.LabelPlacement | string; - - /** Specifies the position of the labels in higher level - * @Default {top} - */ - position?: ej.datavisualization.RangeNavigator.Position | string; - - /** Options for customizing the style of higher level labels. - */ - style?: LabelSettingsHigherLevelStyle; - - /** Toggles the visibility of higher level labels. - * @Default {true} - */ - visible?: boolean; - } - - export interface LabelSettingsLowerLevelBorder { - - /** Specifies the border color of grid lines. - * @Default {transparent} - */ - color?: string; - - /** Specifies the border width of grid lines. - * @Default {0.5} - */ - width?: string; - } - - export interface LabelSettingsLowerLevelGridLineStyle { - - /** Specifies the color of grid lines in lower level. - * @Default {#B5B5B5} - */ - color?: string; - - /** Specifies the dashArray of gridLines in lowerLevel. - * @Default {20 5 0} - */ - dashArray?: string; - - /** Specifies the width of grid lines in lower level. - * @Default {#B5B5B5} - */ - width?: string; - } - - export interface LabelSettingsLowerLevelStyleFont { - - /** Specifies the color of labels. Label text render in this specified color. - * @Default {black} - */ - color?: string; - - /** Specifies the font family of labels. Label text render in this specified font family. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the font style of labels. Label text render in this specified font style. - * @Default {Normal} - */ - fontStyle?: string; - - /** Specifies the font weight of labels. Label text render in this specified font weight. - * @Default {regular} - */ - fontWeight?: string; - - /** Specifies the opacity of labels. Label text render in this specified opacity. - * @Default {12px} - */ - opacity?: string; - - /** Specifies the size of labels. Label text render in this specified size. - * @Default {12px} - */ - size?: string; - } - - export interface LabelSettingsLowerLevelStyle { - - /** Options for customizing the font of labels. - */ - font?: LabelSettingsLowerLevelStyleFont; - - /** Specifies the horizontal text alignment of the text in label. - * @Default {middle} - */ - horizontalAlignment?: string; - } - - export interface LabelSettingsLowerLevel { - - /** Options for customizing the border of grid lines in lower level. - */ - border?: LabelSettingsLowerLevelBorder; - - /** Specifies the fill color of labels in lower level. - * @Default {transparent} - */ - fill?: string; - - /** Options for customizing the grid lines in lower level. - */ - gridLineStyle?: LabelSettingsLowerLevelGridLineStyle; - - /** Specifies the intervalType of the labels in lower level.See IntervalType - * @Default {auto} - */ - intervalType?: ej.datavisualization.RangeNavigator.IntervalType | string; - - /** Specifies the position of the labels to render either inside or outside of plot area. See LabelPlacement - * @Default {outside} - */ - labelPlacement?: ej.datavisualization.RangeNavigator.LabelPlacement | string; - - /** Specifies the position of the labels in lower level.See Position - * @Default {bottom} - */ - position?: ej.datavisualization.RangeNavigator.Position | string; - - /** Options for customizing the style of labels. - */ - style?: LabelSettingsLowerLevelStyle; - - /** Toggles the visibility of labels in lower level. - * @Default {true} - */ - visible?: boolean; - } - - export interface LabelSettingsStyleFont { - - /** Specifies the label color. This color is applied to the labels in range navigator. - * @Default {#FFFFFF} - */ - color?: string; - - /** Specifies the label font family. Labels render with the specified font family. - * @Default {Segoe UI} - */ - family?: string; - - /** Specifies the label font opacity. Labels render with the specified font opacity. - * @Default {1} - */ - opacity?: number; - - /** Specifies the label font size. Labels render with the specified font size. - * @Default {1px} - */ - size?: string; - - /** Specifies the label font style. Labels render with the specified font style.. - * @Default {Normal} - */ - style?: ej.datavisualization.RangeNavigator.FontStyle | string; - - /** Specifies the label font weight - * @Default {regular} - */ - weight?: ej.datavisualization.RangeNavigator.FontWeight | string; - } - - export interface LabelSettingsStyle { - - /** Options for customizing the font of labels in range navigator. - */ - font?: LabelSettingsStyleFont; - - /** Specifies the horizontalAlignment of the label in RangeNavigator - * @Default {middle} - */ - horizontalAlignment?: ej.datavisualization.RangeNavigator.HorizontalAlignment | string; - } - - export interface LabelSettings { - - /** Options for customizing the higher level labels in range navigator. - */ - higherLevel?: LabelSettingsHigherLevel; - - /** Options for customizing the labels in lower level. - */ - lowerLevel?: LabelSettingsLowerLevel; - - /** Options for customizing the style of labels in range navigator. - */ - style?: LabelSettingsStyle; - } - - export interface NavigatorStyleSettingsBorder { - - /** Specifies the border color of range navigator. - * @Default {transparent} - */ - color?: string; - - /** Specifies the dash array of range navigator. - * @Default {null} - */ - dashArray?: string; - - /** Specifies the border width of range navigator. - * @Default {0.5} - */ - width?: number; - } - - export interface NavigatorStyleSettingsMajorGridLineStyle { - - /** Specifies the color of major grid lines in range navigator. - * @Default {#B5B5B5} - */ - color?: string; - - /** Toggles the visibility of major grid lines. - * @Default {true} - */ - visible?: boolean; - } - - export interface NavigatorStyleSettingsMinorGridLineStyle { - - /** Specifies the color of minor grid lines in range navigator. - * @Default {#B5B5B5} - */ - color?: string; - - /** Toggles the visibility of minor grid lines. - * @Default {true} - */ - visible?: boolean; - } - - export interface NavigatorStyleSettingsHighlightSettingsBorder { - - /** To set the border color to the highlight. - * @Default {null} - */ - color?: string; - - /** To set the border width to the highlight. - * @Default {1} - */ - width?: number; - } - - export interface NavigatorStyleSettingsHighlightSettings { - - /** Enable the highlight settings in range navigator. - * @Default {false} - */ - enable?: boolean; - - /** To set the color to the highlight. - * @Default {null} - */ - color?: string; - - /** To set the opacity to the highlight. - * @Default {0.5} - */ - opacity?: number; - - /** Contains the border properties for highlighting rectangle. - */ - border?: NavigatorStyleSettingsHighlightSettingsBorder; - } - - export interface NavigatorStyleSettingsSelectionSettingsBorder { - - /** To set the border color to the selection. - * @Default {null} - */ - color?: string; - - /** To set the border width to the selection. - * @Default {1} - */ - width?: number; - } - - export interface NavigatorStyleSettingsSelectionSettings { - - /** Enable the selection settings in range navigator. - * @Default {false} - */ - enable?: boolean; - - /** To set the color to the selection. - * @Default {null} - */ - color?: string; - - /** To set the opacity to the selection. - * @Default {0.5} - */ - opacity?: number; - - /** Contains the border properties for selecting the rectangle. - */ - border?: NavigatorStyleSettingsSelectionSettingsBorder; - } - - export interface NavigatorStyleSettings { - - /** Specifies the background color of range navigator. - * @Default {#dddddd} - */ - background?: string; - - /** Options for customizing the border color and width of range navigator. - */ - border?: NavigatorStyleSettingsBorder; - - /** Specifies the left side thumb template in range navigator we can give either div id or HTML string - * @Default {null} - */ - leftThumbTemplate?: string; - - /** Options for customizing the major grid lines. - */ - majorGridLineStyle?: NavigatorStyleSettingsMajorGridLineStyle; - - /** Options for customizing the minor grid lines. - */ - minorGridLineStyle?: NavigatorStyleSettingsMinorGridLineStyle; - - /** Specifies the opacity of RangeNavigator. - * @Default {1} - */ - opacity?: number; - - /** Specifies the right side thumb template in range navigator we can give either div id or HTML string - * @Default {null} - */ - rightThumbTemplate?: string; - - /** Specifies the color of the selected region in range navigator. - * @Default {#EFEFEF} - */ - selectedRegionColor?: string; - - /** Specifies the opacity of Selected Region. - * @Default {0} - */ - selectedRegionOpacity?: number; - - /** Specifies the color of the thumb in range navigator. - * @Default {#2382C3} - */ - thumbColor?: string; - - /** Specifies the radius of the thumb in range navigator. - * @Default {10} - */ - thumbRadius?: number; - - /** Specifies the stroke color of the thumb in range navigator. - * @Default {#303030} - */ - thumbStroke?: string; - - /** Specifies the color of the unselected region in range navigator. - * @Default {#5EABDE} - */ - unselectedRegionColor?: string; - - /** Specifies the opacity of Unselected Region. - * @Default {0.3} - */ - unselectedRegionOpacity?: number; - - /** Contains the options for highlighting the range navigator on mouse over. - */ - highlightSettings?: NavigatorStyleSettingsHighlightSettings; - - /** Contains the options for selection the range navigator on mouse over. - */ - selectionSettings?: NavigatorStyleSettingsSelectionSettings; - } - - export interface RangeSettings { - - /** Specifies the ending range of range navigator. - * @Default {null} - */ - end?: string; - - /** Specifies the starting range of range navigator. - * @Default {null} - */ - start?: string; - } - - export interface SelectedRangeSettings { - - /** Specifies the ending range of range navigator. - * @Default {null} - */ - end?: string; - - /** Specifies the starting range of range navigator. - * @Default {null} - */ - start?: string; - } - - export interface ScrollRangeSettings { - - /** Specifies the ending range of range navigator scrollbar and that should be greater than the rangenavigator datasource end value. - * @Default {null} - */ - end?: string; - - /** Specifies the starting range of range navigator scrollbar and that should be less than the rangenavigator datasource start value. - * @Default {null} - */ - start?: string; - } - - export interface SizeSettings { - - /** Specifies height of the range navigator. - * @Default {null} - */ - height?: string; - - /** Specifies width of the range navigator. - * @Default {null} - */ - width?: string; - } - - export interface TooltipSettingsFont { - - /** Specifies the color of text in tooltip. Tooltip text render in the specified color. - * @Default {#FFFFFF} - */ - color?: string; - - /** Specifies the font family of text in tooltip. Tooltip text render in the specified font family. - * @Default {Segoe UI} - */ - family?: string; - - /** Specifies the font style of text in tooltip. Tooltip text render in the specified font style. - * @Default {ej.datavisualization.RangeNavigator.fontStyle.Normal} - */ - fontStyle?: string; - - /** Specifies the opacity of text in tooltip. Tooltip text render in the specified opacity. - * @Default {1} - */ - opacity?: number; - - /** Specifies the size of text in tooltip. Tooltip text render in the specified size. - * @Default {10px} - */ - size?: string; - - /** Specifies the weight of text in tooltip. Tooltip text render in the specified weight. - * @Default {ej.datavisualization.RangeNavigator.weight.Regular} - */ - weight?: string; - } - - export interface TooltipSettings { - - /** Specifies the background color of tooltip. - * @Default {#303030} - */ - backgroundColor?: string; - - /** Options for customizing the font in tooltip. - */ - font?: TooltipSettingsFont; - - /** Specifies the format of text to be displayed in tooltip. - * @Default {MM/dd/yyyy} - */ - labelFormat?: string; - - /** Specifies the mode of displaying the tooltip. Neither to display the tooltip always nor on demand. - * @Default {null} - */ - tooltipDisplayMode?: string; - - /** Toggles the visibility of tooltip. - * @Default {true} - */ - visible?: boolean; - } - - export interface ValueAxisSettingsAxisLine { - - /** Toggles the visibility of axis line. - * @Default {none} - */ - visible?: string; - } - - export interface ValueAxisSettingsFont { - - /** Text in axis render with the specified size. - * @Default {0px} - */ - size?: string; - } - - export interface ValueAxisSettingsMajorGridLines { - - /** Toggles the visibility of major grid lines. - * @Default {false} - */ - visible?: boolean; - } - - export interface ValueAxisSettingsMajorTickLines { - - /** Specifies the size of the majorTickLines in range navigator - * @Default {0} - */ - size?: number; - - /** Toggles the visibility of major tick lines. - * @Default {true} - */ - visible?: boolean; - - /** Specifies width of the major tick lines. - * @Default {0} - */ - width?: number; - } - - export interface ValueAxisSettingsRange { - - /** Default Value - * @Default {null} - */ - min?: number; - - /** Default Value - * @Default {null} - */ - max?: number; - - /** Default Value - * @Default {null} - */ - interval?: number; - } - - export interface ValueAxisSettings { - - /** Options for customizing the axis line. - */ - axisLine?: ValueAxisSettingsAxisLine; - - /** Options for customizing the font of the axis. - */ - font?: ValueAxisSettingsFont; - - /** Options for customizing the major grid lines. - */ - majorGridLines?: ValueAxisSettingsMajorGridLines; - - /** Options for customizing the major tick lines in axis. - */ - majorTickLines?: ValueAxisSettingsMajorTickLines; - - /** You can customize the range of the axis by setting minimum , maximum and interval. - */ - range?: ValueAxisSettingsRange; - - /** If the range is not given explicitly, range will be calculated automatically. You can customize the automatic range calculation using rangePadding. - * @Default {none} - */ - rangePadding?: string; - - /** Toggles the visibility of axis in range navigator. - * @Default {false} - */ - visible?: boolean; - } - } - namespace RangeNavigator { - enum Type { - //string - Area, - //string - Line, - //string - Spline, - //string - StepArea, - //string - SplineArea, - //string - StepLine, - } - } - namespace RangeNavigator { - enum IntervalType { - //string - Years, - //string - Quarters, - //string - Months, - //string - Weeks, - //string - Days, - //string - Hours, - //string - Minutes, - } - } - namespace RangeNavigator { - enum LabelPlacement { - //string - Inside, - //string - Outside, - } - } - namespace RangeNavigator { - enum Position { - //string - Top, - //string - Bottom, - } - } - namespace RangeNavigator { - enum FontStyle { - //string - Normal, - //string - Bold, - //string - Italic, - } - } - namespace RangeNavigator { - enum FontWeight { - //string - Regular, - //string - Lighter, - } - } - namespace RangeNavigator { - enum HorizontalAlignment { - //string - Middle, - //string - Left, - //string - Right, - } - } - namespace RangeNavigator { - enum RangePadding { - //string - Additional, - //string - Normal, - //string - None, - //string - Round, - } - } - namespace RangeNavigator { - enum ValueType { - //string - Numeric, - //string - DateTime, - } - } - - class BulletGraph extends ej.Widget { - static fn: BulletGraph; - constructor(element: JQuery | Element, options?: BulletGraph.Model); - static Locale: any; - model: BulletGraph.Model; - defaults: BulletGraph.Model; - - /** To destroy the bullet graph - * @returns {void} - */ - destroy(): void; - - /** To redraw the bullet graph - * @returns {void} - */ - redraw(): void; - - /** To set the value for comparative measure in bullet graph. - * @returns {void} - */ - setComparativeMeasureSymbol(): void; - - /** To set the value for feature measure bar. - * @returns {void} - */ - setFeatureMeasureBarValue(): void; - } - export namespace BulletGraph { - - export interface Model { - - /** Toggles the visibility of the range stroke color of the labels. - * @Default {false} - */ - applyRangeStrokeToLabels?: boolean; - - /** Toggles the visibility of the range stroke color of the ticks. - * @Default {false} - */ - applyRangeStrokeToTicks?: boolean; - - /** Contains property to customize the caption in bullet graph. - */ - captionSettings?: CaptionSettings; - - /** Comparative measure bar in bullet graph render till the specified value. - * @Default {0} - */ - comparativeMeasureValue?: number; - - /** Toggles the animation of bullet graph. - * @Default {true} - */ - enableAnimation?: boolean; - - /** Controls whether bullet graph has to be responsive while resizing. - * @Default {true} - */ - enableResizing?: boolean; - - /** Specifies the direction of flow in bullet graph. Neither it may be backward nor forward. - * @Default {forward} - */ - flowDirection?: ej.datavisualization.BulletGraph.FlowDirection | string; - - /** Specifies the height of the bullet graph. - * @Default {90} - */ - height?: number; - - /** Sets a value whether to make the bullet graph responsive on resize. - * @Default {true} - */ - isResponsive?: boolean; - - /** Specifies to convert the date object to string, using locale settings. - * @Default {false} - */ - enableGroupSeparator?: boolean; - - /** Name of the culture based on which bulletgraph should be localized. - * @Default {en-US} - */ - locale?: string; - - /** Bullet graph will render in the specified orientation. - * @Default {horizontal} - */ - orientation?: ej.datavisualization.BulletGraph.Orientation | string; - - /** Contains property to customize the qualitative ranges. - */ - qualitativeRanges?: QualitativeRange[]; - - /** Size of the qualitative range depends up on the specified value. - * @Default {32} - */ - qualitativeRangeSize?: number; - - /** Length of the quantitative range depends up on the specified value. - * @Default {475} - */ - quantitativeScaleLength?: number; - - /** Contains all the properties to customize quantitative scale. - */ - quantitativeScaleSettings?: QuantitativeScaleSettings; - - /** By specifying this property the user can change the theme of the bullet graph. - * @Default {flatlight} - */ - theme?: string; - - /** Contains all the properties to customize tooltip. - */ - tooltipSettings?: TooltipSettings; - - /** Feature measure bar in bullet graph render till the specified value. - * @Default {0} - */ - value?: number; - - /** Specifies the width of the bullet graph. - * @Default {595} - */ - width?: number; - - /** Fires on rendering the caption of bullet graph. */ - drawCaption?(e: DrawCaptionEventArgs): void; - - /** Fires on rendering the category. */ - drawCategory?(e: DrawCategoryEventArgs): void; - - /** Fires on rendering the comparative measure symbol. */ - drawComparativeMeasureSymbol?(e: DrawComparativeMeasureSymbolEventArgs): void; - - /** Fires on rendering the feature measure bar. */ - drawFeatureMeasureBar?(e: DrawFeatureMeasureBarEventArgs): void; - - /** Fires on rendering the indicator of bullet graph. */ - drawIndicator?(e: DrawIndicatorEventArgs): void; - - /** Fires on rendering the labels. */ - drawLabels?(e: DrawLabelsEventArgs): void; - - /** Fires on rendering the ticks. */ - drawTicks?(e: DrawTicksEventArgs): void; - - /** Fires on rendering the qualitative ranges. */ - drawQualitativeRanges?(e: DrawQualitativeRangesEventArgs): void; - - /** Fires on loading bullet graph. */ - load?(e: LoadEventArgs): void; - } - - export interface DrawCaptionEventArgs { - - /** returns the object of the bullet graph. - */ - Object?: any; - - /** returns the options of the scale element. - */ - scaleElement?: HTMLElement; - - /** returns the current captionSettings element. - */ - captionElement?: HTMLElement; - - /** returns the type of the captionSettings. - */ - captionType?: string; - } - - export interface DrawCategoryEventArgs { - - /** returns the object of the bullet graph. - */ - Object?: any; - - /** returns the options of the scale element. - */ - scaleElement?: HTMLElement; - - /** returns the options of category element. - */ - categoryElement?: HTMLElement; - - /** returns the text value of the category that is drawn. - */ - Value?: string; - } - - export interface DrawComparativeMeasureSymbolEventArgs { - - /** returns the object of the bullet graph. - */ - Object?: any; - - /** returns the options of the scale element. - */ - scaleElement?: HTMLElement; - - /** returns the options of comparative measure element. - */ - targetElement?: HTMLElement; - - /** returns the value of the comparative measure symbol. - */ - Value?: number; - } - - export interface DrawFeatureMeasureBarEventArgs { - - /** returns the object of the bullet graph. - */ - Object?: any; - - /** returns the options of the scale element. - */ - scaleElement?: HTMLElement; - - /** returns the options of feature measure element. - */ - currentElement?: HTMLElement; - - /** returns the value of the feature measure bar. - */ - Value?: number; - } - - export interface DrawIndicatorEventArgs { - - /** returns an object to customize bullet graph indicator text and symbol before rendering it. - */ - indicatorSettings?: any; - - /** returns the object of bullet graph. - */ - model?: any; - - /** returns the type of event. - */ - type?: string; - - /** for canceling the event. - */ - cancel?: boolean; - } - - export interface DrawLabelsEventArgs { - - /** returns the object of the bullet graph. - */ - Object?: any; - - /** returns the options of the scale element. - */ - scaleElement?: HTMLElement; - - /** returns the current label element. - */ - tickElement?: HTMLElement; - - /** returns the label type. - */ - labelType?: string; - } - - export interface DrawTicksEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - export interface DrawQualitativeRangesEventArgs { - - /** returns the object of the bullet graph. - */ - Object?: any; - - /** returns the index of current range. - */ - rangeIndex?: number; - - /** returns the settings for current range. - */ - rangeOptions?: any; - - /** returns the end value of current range. - */ - rangeEndValue?: number; - } - - export interface LoadEventArgs { - /** Returns the cancel option value. - */ - cancel?: boolean; - } - - export interface CaptionSettingsFont { - - /** Specifies the color of the text in caption. - * @Default {null} - */ - color?: string; - - /** Specifies the fontFamily of caption. Caption text render with this fontFamily - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the fontStyle of caption - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.BulletGraph.FontStyle | string; - - /** Specifies the fontWeight of caption - * @Default {regular} - */ - fontWeight?: ej.datavisualization.BulletGraph.FontWeight | string; - - /** Specifies the opacity of caption. Caption text render with this opacity. - * @Default {1} - */ - opacity?: number; - - /** Specifies the size of caption. Caption text render with this size - * @Default {12px} - */ - size?: string; - } - - export interface CaptionSettingsIndicatorFont { - - /** Specifies the color of the indicator's text. - * @Default {null} - */ - color?: string; - - /** Specifies the fontFamily of indicator. Indicator text render with this fontFamily. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the fontStyle of indicator. Indicator text render with this fontStyle. See FontStyle - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.BulletGraph.FontStyle | string; - - /** Specifies the fontWeight of indicator. Indicator text render with this fontWeight. See FontWeight - * @Default {regular} - */ - fontWeight?: ej.datavisualization.BulletGraph.FontWeight | string; - - /** Specifies the opacity of indicator text. Indicator text render with this Opacity. - * @Default {1} - */ - opacity?: number; - - /** Specifies the size of indicator. Indicator text render with this size. - * @Default {12px} - */ - size?: string; - } - - export interface CaptionSettingsIndicatorLocation { - - /** Specifies the horizontal position of the indicator. - * @Default {10} - */ - x?: number; - - /** Specifies the vertical position of the indicator. - * @Default {60} - */ - y?: number; - } - - export interface CaptionSettingsIndicatorSymbolBorder { - - /** Specifies the border color of indicator symbol. - * @Default {null} - */ - color?: string; - - /** Specifies the border width of indicator symbol. - * @Default {1} - */ - width?: number; - } - - export interface CaptionSettingsIndicatorSymbolSize { - - /** Specifies the height of indicator symbol. - * @Default {10} - */ - height?: number; - - /** Specifies the width of indicator symbol. - * @Default {10} - */ - width?: number; - } - - export interface CaptionSettingsIndicatorSymbol { - - /** Contains property to customize the border of indicator symbol. - */ - border?: CaptionSettingsIndicatorSymbolBorder; - - /** Specifies the color of indicator symbol. - * @Default {null} - */ - color?: string; - - /** Specifies the URL of image that represents indicator symbol. - */ - imageURL?: string; - - /** Specifies the opacity of indicator symbol. - * @Default {1} - */ - opacity?: number; - - /** Specifies the shape of indicator symbol. - */ - shape?: string; - - /** Contains property to customize the size of indicator symbol. - */ - size?: CaptionSettingsIndicatorSymbolSize; - } - - export interface CaptionSettingsIndicator { - - /** Contains property to customize the font of indicator. - */ - font?: CaptionSettingsIndicatorFont; - - /** Contains property to customize the location of indicator. - */ - location?: CaptionSettingsIndicatorLocation; - - /** Specifies the padding to be applied when text position is used. - * @Default {2} - */ - padding?: number; - - /** Contains property to customize the symbol of indicator. - */ - symbol?: CaptionSettingsIndicatorSymbol; - - /** Specifies the text to be displayed as indicator text. By default difference between current value and target will be displayed - */ - text?: string; - - /** Specifies the alignment of indicator with respect to scale based on text position - * @Default {'Near'} - */ - textAlignment?: ej.datavisualization.BulletGraph.TextAlignment | string; - - /** Specifies where indicator text should be anchored when indicator overlaps with other caption group text. Text will be anchored when overlapping caption group text are at same position. - * Anchoring is not applicable for float position. - * @Default {'start'} - */ - textAnchor?: ej.datavisualization.BulletGraph.TextAnchor | string; - - /** indicator text render in the specified angle. - * @Default {0} - */ - textAngle?: number; - - /** Specifies where indicator should be placed - * @Default {'float'} - */ - textPosition?: ej.datavisualization.BulletGraph.TextPosition | string; - - /** Specifies the space between indicator symbol and text. - * @Default {3} - */ - textSpacing?: number; - - /** Specifies whether indicator will be visible or not. - * @Default {false} - */ - visible?: boolean; - } - - export interface CaptionSettingsLocation { - - /** Specifies the position in horizontal direction - * @Default {17} - */ - x?: number; - - /** Specifies the position in horizontal direction - * @Default {30} - */ - y?: number; - } - - export interface CaptionSettingsSubTitleFont { - - /** Specifies the color of the subtitle's text. - * @Default {null} - */ - color?: string; - - /** Specifies the fontFamily of subtitle. Subtitle text render with this fontFamily. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the fontStyle of subtitle. Subtitle text render with this fontStyle. See FontStyle - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.BulletGraph.FontStyle | string; - - /** Specifies the fontWeight of subtitle. Subtitle text render with this fontWeight. See FontWeight - * @Default {regular} - */ - fontWeight?: ej.datavisualization.BulletGraph.FontWeight | string; - - /** Specifies the opacity of subtitle. Subtitle text render with this opacity. - * @Default {1} - */ - opacity?: number; - - /** Specifies the size of subtitle. Subtitle text render with this size. - * @Default {12px} - */ - size?: string; - } - - export interface CaptionSettingsSubTitleLocation { - - /** Specifies the horizontal position of the subtitle. - * @Default {10} - */ - x?: number; - - /** Specifies the vertical position of the subtitle. - * @Default {45} - */ - y?: number; - } - - export interface CaptionSettingsSubTitle { - - /** Contains property to customize the font of subtitle. - */ - font?: CaptionSettingsSubTitleFont; - - /** Contains property to customize the location of subtitle. - */ - location?: CaptionSettingsSubTitleLocation; - - /** Specifies the padding to be applied when text position is used. - * @Default {5} - */ - padding?: number; - - /** Specifies the text to be displayed as subtitle. - */ - text?: string; - - /** Specifies the alignment of sub title text with respect to scale. Alignment will not be applied in float position. - * @Default {'Near'} - */ - textAlignment?: ej.datavisualization.BulletGraph.TextAlignment | string; - - /** Specifies where subtitle text should be anchored when sub title text overlaps with other caption group text. Text will be anchored when overlapping - * caption group text are at same position. Anchoring is not applicable for float position. - * @Default {'start'} - */ - textAnchor?: ej.datavisualization.BulletGraph.TextAnchor | string; - - /** Subtitle render in the specified angle. - * @Default {0} - */ - textAngle?: number; - - /** Specifies where sub title text should be placed. - * @Default {'float'} - */ - textPosition?: ej.datavisualization.BulletGraph.TextPosition | string; - } - - export interface CaptionSettings { - - /** Specifies whether trim the labels will be true or false. - * @Default {true} - */ - enableTrim?: boolean; - - /** Contains property to customize the font of caption. - */ - font?: CaptionSettingsFont; - - /** Contains property to customize the indicator. - */ - indicator?: CaptionSettingsIndicator; - - /** Contains property to customize the location. - */ - location?: CaptionSettingsLocation; - - /** Specifies the padding to be applied when text position is used. - * @Default {5} - */ - padding?: number; - - /** Contains property to customize the subtitle. - */ - subTitle?: CaptionSettingsSubTitle; - - /** Specifies the text to be displayed on bullet graph. - */ - text?: string; - - /** Specifies the alignment of caption text with respect to scale. This property will not be applied when text position is float. - * @Default {'Near'} - */ - textAlignment?: ej.datavisualization.BulletGraph.TextAlignment | string; - - /** Specifies caption text anchoring when caption text overlaps with other caption group text. - * Text will be anchored when overlapping caption group text are at same position. Anchoring is not applicable for float position. - * @Default {'start'} - */ - textAnchor?: ej.datavisualization.BulletGraph.TextAnchor | string; - - /** Specifies the angel in which the caption is rendered. - * @Default {0} - */ - textAngle?: number; - - /** Specifies how caption text should be placed. - * @Default {'float'} - */ - textPosition?: ej.datavisualization.BulletGraph.TextPosition | string; - } - - export interface QualitativeRange { - - /** Specifies the ending range to which the qualitative ranges will render. - * @Default {3} - */ - rangeEnd?: number; - - /** Specifies the opacity for the qualitative ranges. - * @Default {1} - */ - rangeOpacity?: number; - - /** Specifies the stroke for the qualitative ranges. - * @Default {null} - */ - rangeStroke?: string; - } - - export interface QuantitativeScaleSettingsComparativeMeasureSettings { - - /** Specifies the stroke of the comparative measure. - * @Default {null} - */ - stroke?: number; - - /** Specifies the width of the comparative measure. - * @Default {5} - */ - width?: number; - } - - export interface QuantitativeScaleSettingsFeaturedMeasureSettings { - - /** Specifies the Stroke of the featured measure in bullet graph. - * @Default {null} - */ - stroke?: number; - - /** Specifies the width of the featured measure in bullet graph. - * @Default {2} - */ - width?: number; - } - - export interface QuantitativeScaleSettingsFeatureMeasure { - - /** Specifies the category of feature measure. - * @Default {null} - */ - category?: string; - - /** Comparative measure render till the specified value. - * @Default {null} - */ - comparativeMeasureValue?: number; - - /** Feature measure render till the specified value. - * @Default {null} - */ - value?: number; - } - - export interface QuantitativeScaleSettingsFields { - - /** Specifies the category of the bullet graph. - * @Default {null} - */ - category?: string; - - /** Comparative measure render based on the values in the specified field. - * @Default {null} - */ - comparativeMeasure?: string; - - /** Specifies the dataSource for the bullet graph. - * @Default {null} - */ - dataSource?: any; - - /** Feature measure render based on the values in the specified field. - * @Default {null} - */ - featureMeasures?: string; - - /** Specifies the query for fetching the values form data source to render the bullet graph. - * @Default {null} - */ - query?: string; - - /** Specifies the name of the table. - * @Default {null} - */ - tableName?: string; - } - - export interface QuantitativeScaleSettingsLabelSettingsFont { - - /** Specifies the fontFamily of labels in bullet graph. Labels render with this fontFamily. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the fontStyle of labels in bullet graph. Labels render with this fontStyle. See FontStyle - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.BulletGraph.FontStyle | string; - - /** Specifies the fontWeight of labels in bullet graph. Labels render with this fontWeight. See FontWeight - * @Default {regular} - */ - fontWeight?: ej.datavisualization.BulletGraph.FontWeight | string; - - /** Specifies the opacity of labels in bullet graph. Labels render with this opacity - * @Default {1} - */ - opacity?: number; - } - - export interface QuantitativeScaleSettingsLabelSettings { - - /** Contains property to customize the font of the labels in bullet graph. - */ - font?: QuantitativeScaleSettingsLabelSettingsFont; - - /** Specifies the placement of labels in bullet graph scale. - * @Default {outside} - */ - labelPlacement?: ej.datavisualization.BulletGraph.LabelPlacement | string; - - /** Specifies the prefix to be added with labels in bullet graph. - * @Default {Empty string} - */ - labelPrefix?: string; - - /** Specifies the suffix to be added after labels in bullet graph. - * @Default {Empty string} - */ - labelSuffix?: string; - - /** Specifies the horizontal/vertical padding of labels. - * @Default {15} - */ - offset?: number; - - /** Specifies the position of the labels to render either above or below the graph. See Position - * @Default {below} - */ - position?: ej.datavisualization.BulletGraph.LabelPosition | string; - - /** Specifies the Size of the labels. - * @Default {12} - */ - size?: number; - - /** Specifies the stroke color of the labels in bullet graph. - * @Default {null} - */ - stroke?: string; - } - - export interface QuantitativeScaleSettingsLocation { - - /** This property specifies the x position for rendering quantitative scale. - * @Default {10} - */ - x?: number; - - /** This property specifies the y position for rendering quantitative scale. - * @Default {10} - */ - y?: number; - } - - export interface QuantitativeScaleSettingsMajorTickSettings { - - /** Specifies the size of the major ticks. - * @Default {13} - */ - size?: number; - - /** Specifies the stroke color of the major tick lines. - * @Default {null} - */ - stroke?: string; - - /** Specifies the width of the major tick lines. - * @Default {2} - */ - width?: number; - } - - export interface QuantitativeScaleSettingsMinorTickSettings { - - /** Specifies the size of minor ticks. - * @Default {7} - */ - size?: number; - - /** Specifies the stroke color of minor ticks in bullet graph. - * @Default {null} - */ - stroke?: string; - - /** Specifies the width of the minor ticks in bullet graph. - * @Default {2} - */ - width?: number; - } - - export interface QuantitativeScaleSettings { - - /** Contains property to customize the comparative measure. - */ - comparativeMeasureSettings?: QuantitativeScaleSettingsComparativeMeasureSettings; - - /** Contains property to customize the featured measure. - */ - featuredMeasureSettings?: QuantitativeScaleSettingsFeaturedMeasureSettings; - - /** Contains property to customize the featured measure. - */ - featureMeasures?: QuantitativeScaleSettingsFeatureMeasure[]; - - /** Contains property to customize the fields. - */ - fields?: QuantitativeScaleSettingsFields; - - /** Specifies the interval for the Graph. - * @Default {1} - */ - interval?: number; - - /** Contains property to customize the labels. - */ - labelSettings?: QuantitativeScaleSettingsLabelSettings; - - /** Contains property to customize the position of the quantitative scale - */ - location?: QuantitativeScaleSettingsLocation; - - /** Contains property to customize the major tick lines. - */ - majorTickSettings?: QuantitativeScaleSettingsMajorTickSettings; - - /** Specifies the maximum value of the Graph. - * @Default {10} - */ - maximum?: number; - - /** Specifies the minimum value of the Graph. - * @Default {0} - */ - minimum?: number; - - /** Contains property to customize the minor ticks. - */ - minorTickSettings?: QuantitativeScaleSettingsMinorTickSettings; - - /** The specified number of minor ticks will be rendered per interval. - * @Default {4} - */ - minorTicksPerInterval?: number; - - /** Specifies the placement of ticks to render either inside or outside the scale. - * @Default {ej.datavisualization.BulletGraph.TickPlacement.Outside} - */ - tickPlacement?: ej.datavisualization.BulletGraph.TickPlacement | string; - - /** Specifies the position of the ticks to render either above,below or inside - * @Default {ej.datavisualization.BulletGraph.TickPosition.Far} - */ - tickPosition?: ej.datavisualization.BulletGraph.TickPosition | string; - } - - export interface TooltipSettings { - - /** Specifies template for caption tooltip - * @Default {null} - */ - captionTemplate?: string; - - /** Toggles the visibility of caption tooltip - * @Default {false} - */ - enableCaptionTooltip?: boolean; - - /** Specifies the ID of a div, which is to be displayed as tooltip. - * @Default {null} - */ - template?: string; - - /** Toggles the visibility of tooltip - * @Default {true} - */ - visible?: boolean; - } - } - namespace BulletGraph { - enum FontStyle { - //string - Normal, - //string - Italic, - //string - Oblique, - } - } - namespace BulletGraph { - enum FontWeight { - //string - Normal, - //string - Bold, - //string - Bolder, - //string - Lighter, - } - } - namespace BulletGraph { - enum TextAlignment { - //string - Near, - //string - Far, - //string - Center, - } - } - namespace BulletGraph { - enum TextAnchor { - //string - Start, - //string - Middle, - //string - End, - } - } - namespace BulletGraph { - enum TextPosition { - //string - Top, - //string - Right, - //string - Left, - //string - Bottom, - //string - Float, - } - } - namespace BulletGraph { - enum FlowDirection { - //string - Forward, - //string - Backward, - } - } - namespace BulletGraph { - enum Orientation { - //string - Horizontal, - //string - Vertical, - } - } - namespace BulletGraph { - enum LabelPlacement { - //string - Inside, - //string - Outside, - } - } - namespace BulletGraph { - enum LabelPosition { - //string - Above, - //string - Below, - } - } - namespace BulletGraph { - enum TickPlacement { - //string - Inside, - //string - Outside, - } - } - namespace BulletGraph { - enum TickPosition { - //string - Below, - //string - Above, - //string - Cross, - } - } - - class Barcode extends ej.Widget { - static fn: Barcode; - constructor(element: JQuery | Element, options?: Barcode.Model); - static Locale: any; - model: Barcode.Model; - defaults: Barcode.Model; - - /** To disable the barcode - * @returns {void} - */ - disable(): void; - - /** To enable the barcode - * @returns {void} - */ - enable(): void; - } - export namespace Barcode { - - export interface Model { - - /** Specifies the distance between the barcode and text below it. - */ - barcodeToTextGapHeight?: number; - - /** Specifies the height of bars in the Barcode. By modifying the barHeight, the entire barcode height can be customized. - * Please refer to xDimension for two dimensional barcode height customization. - */ - barHeight?: number; - - /** Specifies the dark bar color of the Barcode. One dimensional barcode contains a series of dark and light bars which are usually colored as black and white respectively. - */ - darkBarColor?: any; - - /** Specifies whether the text below the barcode is visible or hidden. - */ - displayText?: boolean; - - /** Specifies whether the control is enabled. - */ - enabled?: boolean; - - /** Specifies the start and stop encode symbol in the Barcode. In one dimensional barcodes, an additional character is added as start and stop delimiters. - * These symbols are optional and the unique of the symbol allows the reader to determine the direction of the barcode being scanned. - */ - encodeStartStopSymbol?: number; - - /** Specifies the light bar color of the Barcode. One dimensional barcode contains a series of dark and light bars which are usually colored as black and white respectively. - */ - lightBarColor?: any; - - /** Specifies the width of the narrow bars in the barcode. The dark bars in the one dimensional barcode contains random narrow and wide bars based on - * the provided input which can be specified during initialization. - */ - narrowBarWidth?: number; - - /** Specifies the width of the quiet zone. In barcode, a quiet zone is the blank margin on either side of a barcode which informs the reader where a barcode's symbology starts and stops. - * The purpose of a quiet zone is to prevent the reader from picking up unrelated information. - */ - quietZone?: QuietZone; - - /** Specifies the type of the Barcode. See SymbologyType - */ - symbologyType?: ej.datavisualization.Barcode.SymbologyType | string; - - /** Specifies the text to be encoded in the barcode. - */ - text?: string; - - /** Specifies the color of the text/data at the bottom of the barcode. - */ - textColor?: any; - - /** Specifies the width of the wide bars in the barcode. One dimensional barcode usually contains random narrow and wide bars based on the provided which can be customized during initialization. - */ - wideBarWidth?: number; - - /** Specifies the width of the narrowest element(bar or space) in a barcode. The greater the x dimension, the more easily a barcode reader will scan. - */ - xDimension?: number; - - /** Fires after Barcode control is loaded. */ - load?(e: LoadEventArgs): void; - } - - export interface LoadEventArgs { - - /** if the event should be canceled; otherwise, false. - */ - cancel?: boolean; - - /** returns the barcode model - */ - model?: any; - - /** returns the name of the event - */ - type?: string; - - /** return the barcode state - */ - status?: boolean; - } - - export interface QuietZone { - - /** Specifies the quiet zone around the Barcode. - */ - all?: number; - - /** Specifies the bottom quiet zone of the Barcode. - */ - bottom?: number; - - /** Specifies the left quiet zone of the Barcode. - */ - left?: number; - - /** Specifies the right quiet zone of the Barcode. - */ - right?: number; - - /** Specifies the top quiet zone of the Barcode. - */ - top?: number; - } - } - namespace Barcode { - enum SymbologyType { - //Represents the QR code - QRBarcode, - //Represents the Data Matrix barcode - DataMatrix, - //Represents the Code 39 barcode - Code39, - //Represents the Code 39 Extended barcode - Code39Extended, - //Represents the Code 11 barcode - Code11, - //Represents the Codabar barcode - Codabar, - //Represents the Code 32 barcode - Code32, - //Represents the Code 93 barcode - Code93, - //Represents the Code 93 Extended barcode - Code93Extended, - //Represents the Code 128 A barcode - Code128A, - //Represents the Code 128 B barcode - Code128B, - //Represents the Code 128 C barcode - Code128C, - } - } - - class Map extends ej.Widget { - static fn: Map; - constructor(element: JQuery | Element, options?: Map.Model); - static Locale: any; - model: Map.Model; - defaults: Map.Model; - - /** Method for navigating to specific shape based on latitude, longitude and zoom level. - * @param {number} Pass the latitude value for map - * @param {number} Pass the longitude value for map - * @param {number} Pass the zoom level for map - * @returns {void} - */ - navigateTo(latitude: number, longitude: number, level: number): void; - - /** Method to perform map panning - * @param {string} Pass the direction in which map should be panned - * @returns {void} - */ - pan(direction: string): void; - - /** Method to reload the map. - * @returns {void} - */ - refresh(): void; - - /** Method to reload the shapeLayers with updated values - * @returns {void} - */ - refreshLayers(): void; - - /** Method to reload the navigation control with updated values. - * @param {any} Pass the navigation control instance - * @returns {void} - */ - refreshNavigationControl(navigation: any): void; - - /** Method to perform map zooming. - * @param {number} Pass the zoom level for map to be zoomed - * @param {boolean} Pass the boolean value to enable or disable animation while zooming - * @returns {void} - */ - zoom(level: number, isAnimate: boolean): void; - } - export namespace Map { - - export interface Model { - - /** Specifies the background color for map - * @Default {transparent} - */ - background?: string; - - /** Specifies the index of the map to determine the shape layer to be displayed - * @Default {0} - */ - baseMapIndex?: number; - - /** Specify the center position where map should be displayed - * @Default {[0,0]} - */ - centerPosition?: any; - - /** Enables or Disables the map animation - * @Default {false} - */ - enableAnimation?: boolean; - - /** Enables or Disables the animation for layer change in map - * @Default {false} - */ - enableLayerChangeAnimation?: boolean; - - /** Enables or Disables the map panning - * @Default {true} - */ - enablePan?: boolean; - - /** Determines whether map need to resize when container is resized - * @Default {true} - */ - enableResize?: boolean; - - /** Enables or Disables the Zooming for map. - */ - zoomSettings?: ZoomSettings; - - /** Enables or Disables the navigation control for map to perform zooming and panning on map shapes. - */ - navigationControl?: NavigationControl; - - /** Layer for holding the map shapes - */ - layers?: Layer[]; - - /** Triggered on selecting the map markers. */ - markerSelected?(e: MarkerSelectedEventArgs): void; - - /** Triggers while leaving the hovered map shape */ - mouseleave?(e: MouseleaveEventArgs): void; - - /** Triggers while hovering the map shape. */ - mouseover?(e: MouseoverEventArgs): void; - - /** Triggers once map render completed. */ - onRenderComplete?(e: OnRenderCompleteEventArgs): void; - - /** Triggers when map panning ends. */ - panned?(e: PannedEventArgs): void; - - /** Triggered on selecting the map shapes. */ - shapeSelected?(e: ShapeSelectedEventArgs): void; - - /** Triggered when map is zoomed-in. */ - zoomedIn?(e: ZoomedInEventArgs): void; - - /** Triggers when map is zoomed out. */ - zoomedOut?(e: ZoomedOutEventArgs): void; - } - - export interface MarkerSelectedEventArgs { - - /** Returns marker object. - */ - originalEvent?: any; - } - - export interface MouseleaveEventArgs { - - /** Returns hovered map shape object. - */ - originalEvent?: any; - } - - export interface MouseoverEventArgs { - - /** Returns hovered map shape object. - */ - originalEvent?: any; - } - - export interface OnRenderCompleteEventArgs { - - /** Event parameters from map - */ - originalEvent?: any; - } - - export interface PannedEventArgs { - - /** Event parameters from map - */ - originalEvent?: any; - } - - export interface ShapeSelectedEventArgs { - - /** Returns selected shape object. - */ - originalEvent?: any; - } - - export interface ZoomedInEventArgs { - - /** Event parameters from map - */ - originalEvent?: any; - - /** Returns zoom level value for which the map is zoomed. - */ - zoomLevel?: any; - } - - export interface ZoomedOutEventArgs { - - /** Event parameters from map - */ - originalEvent?: any; - - /** Returns zoom level value for which the map is zoomed. - */ - zoomLevel?: any; - } - - export interface ZoomSettings { - - /** Enables or Disables the zooming of map - * @Default {true} - */ - enableZoom?: boolean; - - /** Enables or Disables the zoom on selecting the map shape - * @Default {false} - */ - enableZoomOnSelection?: boolean; - - /** Specifies the zoom factor for map zoom value. - * @Default {1} - */ - factor?: number; - - /** Specifies the zoom level value for which map to be zoomed - * @Default {1} - */ - level?: number; - - /** Specifies the minimum zoomSettings level of the map - * @Default {1} - */ - minValue?: number; - - /** Specifies the maximum zoom level of the map - * @Default {100} - */ - maxValue?: number; - } - - export interface NavigationControl { - - /** Set the absolutePosition for navigation control - * @Default {{x:0,y:0}} - */ - absolutePosition?: any; - - /** Specifies the navigation control template for map - * @Default {null} - */ - content?: string; - - /** Set the dockPosition value for navigation control - * @Default {centerleft} - */ - dockPosition?: ej.datavisualization.Map.Position | string; - - /** Enables or Disables the Navigation for handling zooming map - * @Default {false} - */ - enableNavigation?: boolean; - - /** Set the orientation value for navigation control - * @Default {vertical} - */ - orientation?: ej.datavisualization.Map.LabelOrientation | string; - } - - export interface LayersBubbleSettingsColorMappingsRangeColorMapping { - - /** Start range colorMappings in the bubble layer. - * @Default {null} - */ - from?: number; - - /** End range colorMappings in the bubble layer. - * @Default {null} - */ - to?: number; - - /** GradientColors in the bubble layer of map. - */ - gradientColors?: any[]; - - /** Color of the bubble layer. - * @Default {null} - */ - color?: string; - } - - export interface LayersBubbleSettingsColorMappings { - - /** Specifies the range colorMappings in the bubble layer. - * @Default {null} - */ - rangeColorMapping?: LayersBubbleSettingsColorMappingsRangeColorMapping[]; - } - - export interface LayersBubbleSettings { - - /** Specifies the bubble Opacity value of bubbles for shape layer in map - * @Default {0.9} - */ - bubbleOpacity?: number; - - /** Specifies the mouse hover color of the shape layer in map - * @Default {gray} - */ - color?: string; - - /** Specifies the colorMappings of the shape layer in map - * @Default {null} - */ - colorMappings?: LayersBubbleSettingsColorMappings; - - /** Specifies the bubble color valuePath of the shape layer in map - * @Default {null} - */ - colorValuePath?: string; - - /** Specifies the maximum size value of bubbles for shape layer in map - * @Default {20} - */ - maxValue?: number; - - /** Specifies the minimum size value of bubbles for shape layer in map - * @Default {10} - */ - minValue?: number; - - /** Specifies the showBubble visibility status map - * @Default {true} - */ - showBubble?: boolean; - - /** Specifies the tooltip visibility status of the shape layer in map - * @Default {false} - */ - showTooltip?: boolean; - - /** Specifies the bubble tooltip template of the shape layer in map - * @Default {null} - */ - tooltipTemplate?: string; - - /** Specifies the bubble valuePath of the shape layer in map - * @Default {null} - */ - valuePath?: string; - } - - export interface LayersLabelSettings { - - /** enable or disable the enableSmartLabel property - * @Default {false} - */ - enableSmartLabel?: boolean; - - /** set the labelLength property - * @Default {'2'} - */ - labelLength?: number; - - /** set the labelPath property - * @Default {null} - */ - labelPath?: string; - - /** The property specifies whether to show labels or not. - * @Default {false} - */ - showLabels?: boolean; - - /** set the smartLabelSize property - * @Default {fixed} - */ - smartLabelSize?: ej.datavisualization.Map.LabelSize | string; - } - - export interface LayersLegendSettings { - - /** Determines whether the legend should be placed outside or inside the map bounds - * @Default {false} - */ - dockOnMap?: boolean; - - /** Determines the legend placement and it is valid only when dockOnMap is true - * @Default {top} - */ - dockPosition?: ej.datavisualization.Map.DockPosition | string; - - /** height value for legend setting - * @Default {0} - */ - height?: number; - - /** to get icon value for legend setting - * @Default {rectangle} - */ - icon?: ej.datavisualization.Map.LegendIcons | string; - - /** icon height value for legend setting - * @Default {20} - */ - iconHeight?: number; - - /** icon Width value for legend setting - * @Default {20} - */ - iconWidth?: number; - - /** set the orientation of legend labels - * @Default {vertical} - */ - labelOrientation?: ej.datavisualization.Map.LabelOrientation | string; - - /** to get leftLabel value for legend setting - * @Default {null} - */ - leftLabel?: string; - - /** to get mode of legend setting - * @Default {default} - */ - mode?: ej.datavisualization.Map.Mode | string; - - /** set the position of legend settings - * @Default {topleft} - */ - position?: ej.datavisualization.Map.Position | string; - - /** x position value for legend setting - * @Default {0} - */ - positionX?: number; - - /** y position value for legend setting - * @Default {0} - */ - positionY?: number; - - /** to get rightLabel value for legend setting - * @Default {null} - */ - rightLabel?: string; - - /** Enables or Disables the showLabels - * @Default {false} - */ - showLabels?: boolean; - - /** Enables or Disables the showLegend - * @Default {false} - */ - showLegend?: boolean; - - /** to get title of legend setting - * @Default {null} - */ - title?: string; - - /** to get type of legend setting - * @Default {layers} - */ - type?: ej.datavisualization.Map.LegendType | string; - - /** width value for legend setting - * @Default {0} - */ - width?: number; - } - - export interface LayersShapeSettingsColorMappingsRangeColorMapping { - - /** Specifies the start range colorMappings in the shape layer of map. - * @Default {null} - */ - from?: number; - - /** Specifies the to range colorMappings in the shape layer of map. - * @Default {null} - */ - to?: number; - - /** Specifies the gradientColors in the shape layer of map. - * @Default {null} - */ - gradientColors?: any[]; - } - - export interface LayersShapeSettingsColorMappingsEqualColorMapping { - - /** Specifies the equalColorMapping value in the shape layer of map. - * @Default {null} - */ - value?: string; - - /** Specifies the equalColorMapping color in the shape layer of map. - * @Default {null} - */ - color?: string; - } - - export interface LayersShapeSettingsColorMappings { - - /** Specifies the range colorMappings in the shape layer of map. - * @Default {null} - */ - rangeColorMapping?: LayersShapeSettingsColorMappingsRangeColorMapping[]; - - /** Specifies the equalColorMapping in the shape layer of map. - * @Default {null} - */ - equalColorMapping?: LayersShapeSettingsColorMappingsEqualColorMapping[]; - } - - export interface LayersShapeSettings { - - /** Enables or Disables the auto fill colors for shape layer in map. When this property value set to true, shapes will be filled with palette colors. - * @Default {false} - */ - autoFill?: boolean; - - /** Specifies the colorMappings of the shape layer in map - * @Default {null} - */ - colorMappings?: LayersShapeSettingsColorMappings; - - /** Specifies the shape color palette value of the shape layer in map. Accepted colorPalette values are palette1, palette2, palette3 and custompalette. - * @Default {palette1} - */ - colorPalette?: ej.datavisualization.Map.ColorPalette | string; - - /** Specifies the shape color valuePath of the shape layer in map - * @Default {null} - */ - colorValuePath?: string; - - /** Enables or Disables the gradient colors for map shapes. - * @Default {false} - */ - enableGradient?: boolean; - - /** Specifies the shape fill color of the shape layer in map - * @Default {#E5E5E5} - */ - fill?: string; - - /** Specifies the mouse over width of the shape layer in map - * @Default {1} - */ - highlightBorderWidth?: number; - - /** Specifies the mouse hover color of the shape layer in map - * @Default {gray} - */ - highlightColor?: string; - - /** Specifies the mouse over stroke color of the shape layer in map - * @Default {#C1C1C1} - */ - highlightStroke?: string; - - /** Specifies the shape selection color of the shape layer in map - * @Default {gray} - */ - selectionColor?: string; - - /** Specifies the shape selection stroke color of the shape layer in map - * @Default {#C1C1C1} - */ - selectionStroke?: string; - - /** Specifies the shape selection stroke width of the shape layer in map - * @Default {1} - */ - selectionStrokeWidth?: number; - - /** Specifies the shape stroke color of the shape layer in map - * @Default {#C1C1C1} - */ - stroke?: string; - - /** Specifies the shape stroke thickness value of the shape layer in map - * @Default {0.2} - */ - strokeThickness?: number; - - /** Specifies the shape valuePath of the shape layer in map - * @Default {null} - */ - valuePath?: string; - } - - export interface Layer { - - /** to get the type of bing map. - * @Default {aerial} - */ - bingMapType?: ej.datavisualization.Map.BingMapType | string; - - /** Specifies the bubble settings for map - */ - bubbleSettings?: LayersBubbleSettings; - - /** Specifies the datasource for the shape layer - */ - dataSource?: any; - - /** Specifies the data path of shape - */ - shapeDataPath?: string; - - /** Specifies the data path of shape - */ - shapePropertyPath?: string; - - /** Enables or disables the shape mouse hover - * @Default {false} - */ - enableMouseHover?: boolean; - - /** Enables or disables the shape selection - * @Default {true} - */ - enableSelection?: boolean; - - /** to get the key of bing map - * @Default {null} - */ - key?: string; - - /** Options for enabling and configuring labelSettings labelPath, smartLabelSize, labelLength etc., - */ - labelSettings?: LayersLabelSettings; - - /** Specifies the map view type. - * @Default {'geographic'} - */ - geometryType?: ej.datavisualization.Map.GeometryType | string; - - /** Specifies the map type. - * @Default {'geometry'} - */ - layerType?: ej.datavisualization.Map.LayerType | string; - - /** Options for enabling and configuring legendSettings position, height, width, mode, type etc., - */ - legendSettings?: LayersLegendSettings; - - /** Specifies the map items template for shapes. - */ - mapItemsTemplate?: string; - - /** Specify markers for shape layer. - * @Default {[]} - */ - markers?: any[]; - - /** Specifies the map marker template for map layer. - * @Default {null} - */ - markerTemplate?: string; - - /** Specify selectedMapShapes for shape layer - * @Default {[]} - */ - selectedMapShapes?: any[]; - - /** Specifies the selection mode of the map. Accepted selection mode values are Default and Multiple. - * @Default {default} - */ - selectionMode?: ej.datavisualization.Map.SelectionMode | string; - - /** Specifies the shape data for the shape layer - */ - shapeData?: any; - - /** Specifies the shape settings of map layer - */ - shapeSettings?: LayersShapeSettings; - - /** Shows or hides the map items. - * @Default {false} - */ - showMapItems?: boolean; - - /** Shows or hides the tooltip for shapes - * @Default {false} - */ - showTooltip?: boolean; - - /** Specifies the tooltip template for shapes. - */ - tooltipTemplate?: string; - - /** Specifies the URL template for the OSM type map. - * @Default {'http://a.tile.openstreetmap.org/level/tileX/tileY.png'} - */ - urlTemplate?: string; - } - } - namespace Map { - enum Position { - //specifies the none position - None, - //specifies the topleft position - Topleft, - //specifies the topcenter position - Topcenter, - //specifies the topright position - Topright, - //specifies the centerleft position - Centerleft, - //specifies the center position - Center, - //specifies the centerright position - Centerright, - //specifies the bottomleft position - Bottomleft, - //specifies the bottomcenter position - Bottomcenter, - //specifies the bottomright position - Bottomright, - } - } - namespace Map { - enum LabelOrientation { - //specifies the horizontal position - Horizontal, - //specifies the vertical position - Vertical, - } - } - namespace Map { - enum BingMapType { - //specifies the aerial type - Aerial, - //specifies the aerialwithlabel type - Aerialwithlabel, - //specifies the road type - Road, - } - } - namespace Map { - enum LabelSize { - //specifies the fixed size - Fixed, - //specifies the default size - Default, - } - } - namespace Map { - enum GeometryType { - //specifies the geographic view of map - Geographic, - //specifies the normal land view of map - Normal, - } - } - namespace Map { - enum LayerType { - //specifies the geometry type - Geometry, - //specifies the osm type - Osm, - //specifies the bing type - Bing, - } - } - namespace Map { - enum DockPosition { - //specifies the top position - Top, - //specifies the bottom position - Bottom, - //specifies the bottom position - Right, - //specifies the left position - Left, - } - } - namespace Map { - enum LegendIcons { - //specifies the rectangle position - Rectangle, - //specifies the circle position - Circle, - } - } - namespace Map { - enum Mode { - //specifies the default mode - Default, - //specifies the interactive mode - Interactive, - } - } - namespace Map { - enum LegendType { - //specifies the layers type - Layers, - //specifies the bubbles type - Bubbles, - } - } - namespace Map { - enum SelectionMode { - //specifies the default position - Default, - //specifies the multiple position - Multiple, - } - } - namespace Map { - enum ColorPalette { - //specifies the palette1 color - Palette1, - //specifies the palette2 color - Palette2, - //specifies the palette3 color - Palette3, - //specifies the custom color - Custompalette, - } - } - - class TreeMap extends ej.Widget { - static fn: TreeMap; - constructor(element: JQuery | Element, options?: TreeMap.Model); - static Locale: any; - model: TreeMap.Model; - defaults: TreeMap.Model; - - /** Method to reload treemap with updated values. - * @returns {void} - */ - refresh(): void; - } - export namespace TreeMap { - - export interface Model { - - /** Specifies the border brush color of the treemap - * @Default {white} - */ - borderBrush?: string; - - /** Specifies the border thickness of the treemap - * @Default {1} - */ - borderThickness?: number; - - /** Specifies the uniColorMapping settings of the treemap - */ - uniColorMapping?: UniColorMapping; - - /** Specifies the desaturationColorMapping settings of the treemap - */ - desaturationColorMapping?: DesaturationColorMapping; - - /** Specifies the paletteColorMapping of the treemap - */ - paletteColorMapping?: PaletteColorMapping; - - /** Specifies the color value path of the treemap - * @Default {null} - */ - colorValuePath?: string; - - /** Specifies the datasource of the treemap - * @Default {null} - */ - dataSource?: any; - - /** Specifies the dockPosition for legend - * @Default {top} - */ - dockPosition?: ej.datavisualization.TreeMap.DockPosition | string; - - /** specifies the drillDown header color - * @Default {'null'} - */ - drillDownHeaderColor?: string; - - /** specifies the drillDown selection color - * @Default {'#000000'} - */ - drillDownSelectionColor?: string; - - /** Specifies whether datasource is hierarchical or not. - * @Default {false} - */ - isHierarchicalDatasource?: boolean; - - /** Specifies the header for parent item during drilldown. This is applicable only for hierarchical data source. - * @Default {null} - */ - header?: string; - - /** Enable/Disable the drillDown for treemap - * @Default {false} - */ - enableDrillDown?: boolean; - - /** Controls whether Treemap has to be responsive while resizing the window. - * @Default {true} - */ - isResponsive?: boolean; - - /** Specifies whether treemap need to resize when container is resized - * @Default {true} - */ - enableResize?: boolean; - - /** This property is used to select treemap items while clicking and dragging - * @Default {false} - */ - draggingOnSelection?: boolean; - - /** This property is used to select group of treemap items while clicking and dragging - * @Default {false} - */ - draggingGroupOnSelection?: boolean; - - /** Specifies the group color mapping of the treemap - * @Default {[]} - */ - groupColorMapping?: GroupColorMapping[]; - - /** Specifies the legend settings of the treemap - */ - legendSettings?: LegendSettings; - - /** Specifies the highlight border brush of treemap - * @Default {gray} - */ - highlightBorderBrush?: string; - - /** Specifies the border thickness when treemap items is highlighted in the treemap - * @Default {5} - */ - highlightBorderThickness?: number; - - /** Specifies the highlight border brush of treemap - * @Default {gray} - */ - highlightGroupBorderBrush?: string; - - /** Specifies the border thickness when treemap items is highlighted in the treemap - * @Default {5} - */ - highlightGroupBorderThickness?: number; - - /** Specifies whether treemap item need to highlighted on selection - * @Default {false} - */ - highlightGroupOnSelection?: boolean; - - /** Specifies whether treemap item need to highlighted on selection - * @Default {false} - */ - highlightOnSelection?: boolean; - - /** Specifies the items layout mode of the treemap. Accepted itemsLayoutMode values are Squarified, SliceAndDiceHorizontal, SliceAndDiceVertical and SliceAndDiceAuto - * @Default {Squarified} - */ - itemsLayoutMode?: ej.datavisualization.TreeMap.ItemsLayoutMode | string; - - /** Specifies the leaf settings of the treemap - */ - leafItemSettings?: LeafItemSettings; - - /** Specifies the rangeColorMapping settings of the treemap - * @Default {[]} - */ - rangeColorMapping?: RangeColorMapping[]; - - /** Specifies the selection mode of treemap item. Accepted selection mode values are Default and Multiple. - * @Default {default} - */ - selectionMode?: ej.datavisualization.TreeMap.selectionMode | string; - - /** Specifies the selection mode of the treemap. Accepted selection mode values are Default and Multiple. - * @Default {default} - */ - groupSelectionMode?: ej.datavisualization.TreeMap.groupSelectionMode | string; - - /** Specifies the legend visibility status of the treemap - * @Default {false} - */ - showLegend?: boolean; - - /** Specifies whether gradient color has to be applied for treemap items - * @Default {false} - */ - enableGradient?: boolean; - - /** Specifies whether treemap showTooltip need to be visible - */ - showTooltip?: boolean; - - /** Specifies the tooltip template of the treemap - * @Default {null} - */ - tooltipTemplate?: string; - - /** Hold the treeMapItems to be displayed in treemap - * @Default {[]} - */ - treeMapItems?: any[]; - - /** Specify levels of treemap for grouped visualization of data - * @Default {[]} - */ - levels?: Level[]; - - /** Specifies the weight value path of the treemap - * @Default {null} - */ - weightValuePath?: string; - - /** Triggers on treemap item selected. */ - treeMapItemSelected?(e: TreeMapItemSelectedEventArgs): void; - - /** Triggers when drilldown is started */ - drillStarted?(e: DrillStartedEventArgs): void; - - /** Triggers on treemap drilldown item selected. */ - drillDownItemSelected?(e: DrillDownItemSelectedEventArgs): void; - - /** Triggers after refreshing the treemap items. */ - refreshed?(e: RefreshedEventArgs): void; - } - - export interface TreeMapItemSelectedEventArgs { - - /** Returns selected treeMapItem object. - */ - originalEvent?: any; - } - - export interface DrillStartedEventArgs { - - /** Returns selected drilled treeMap object. - */ - originalEvent?: any; - } - - export interface DrillDownItemSelectedEventArgs { - - /** Returns selected drilldown treeMap object. - */ - originalEvent?: any; - } - - export interface RefreshedEventArgs { - - /** Refresh and load the treemap. - */ - originalEvent?: any; - } - - export interface UniColorMapping { - - /** Specifies the uniform color mapping of the treemap - * @Default {null} - */ - color?: string; - } - - export interface DesaturationColorMapping { - - /** Specifies the to value for desaturation color mapping - * @Default {0} - */ - to?: number; - - /** Specifies the color for desaturationColorMapping - * @Default {null} - */ - color?: string; - - /** Specifies the from value for desaturation color mapping - * @Default {0} - */ - from?: number; - - /** Specifies the rangeMaximum value for desaturation color mapping - * @Default {0} - */ - rangeMaximum?: number; - - /** Specifies the rangeMinimum value for desaturation color mapping - * @Default {0} - */ - rangeMinimum?: number; - } - - export interface PaletteColorMapping { - - /** Specifies the colors of the paletteColorMapping - * @Default {[]} - */ - colors?: any[]; - } - - export interface GroupColorMapping { - - /** Specifies the groupID for GroupColorMapping. - * @Default {null} - */ - groupID?: string; - } - - export interface LegendSettings { - - /** Specifies the height for legend - * @Default {30} - */ - height?: number; - - /** Specifies the width for legend - * @Default {100} - */ - width?: number; - - /** Specifies the iconHeight for legend - * @Default {15} - */ - iconHeight?: number; - - /** Specifies the iconWidth for legend - * @Default {15} - */ - iconWidth?: number; - - /** Specifies the template for legendSettings - * @Default {null} - */ - template?: string; - - /** Specifies the mode for legendSettings whether default or interactive mode - * @Default {default} - */ - mode?: string; - - /** Specifies the title text for legend - */ - title?: string; - - /** Specifies the leftLabel text for legend - */ - leftLabel?: string; - - /** Specifies the rightLabel text for legend - */ - rightLabel?: string; - - /** Specifies the dockPosition text for legend - * @Default {top} - */ - dockPosition?: string; - - /** Specifies the alignment text for legend - * @Default {near} - */ - alignment?: string; - - /** Specifies the alignment text for legend - * @Default {0} - */ - columnCount?: number; - } - - export interface LeafItemSettings { - - /** Specifies the border brush color of the leaf item. - * @Default {white} - */ - borderBrush?: string; - - /** Specifies the border thickness of the leaf item. - * @Default {1} - */ - borderThickness?: number; - - /** Specifies the space between the leaf items. - * @Default {0} - */ - gap?: number; - - /** Specifies the label template of the leaf item. - * @Default {null} - */ - itemTemplate?: string; - - /** Specifies the label path of the leaf item. - * @Default {null} - */ - labelPath?: string; - - /** Specifies the position of the leaf labels. - * @Default {center} - */ - labelPosition?: ej.datavisualization.TreeMap.Position | string; - - /** Specifies the mode of label visibility - * @Default {visible} - */ - labelVisibilityMode?: ej.datavisualization.TreeMap.VisibilityMode | string; - - /** Shows or hides the label of the leaf item. - * @Default {false} - */ - showLabels?: boolean; - } - - export interface RangeColorMapping { - - /** Specifies the color value for rangeColorMapping. - * @Default {null} - */ - color?: string; - - /** specifies the gradient colors for th given range value - * @Default {[]} - */ - gradientColors?: any[]; - - /** Specifies the from value for rangeColorMapping. - * @Default {-1} - */ - from?: number; - - /** Specifies the legend label value for rangeColorMapping. - * @Default {null} - */ - legendLabel?: string; - - /** Specifies the to value for rangeColorMapping. - * @Default {-1} - */ - to?: number; - } - - export interface Level { - - /** specifies the group background - * @Default {null} - */ - groupBackground?: string; - - /** Specifies the group border color for tree map level. - * @Default {null} - */ - groupBorderColor?: string; - - /** Specifies the group border thickness for tree map level. - * @Default {1} - */ - groupBorderThickness?: number; - - /** Specifies the group gap for tree map level. - * @Default {1} - */ - groupGap?: number; - - /** Specifies the group padding for tree map level. - * @Default {4} - */ - groupPadding?: number; - - /** Specifies the group path for tree map level. - */ - groupPath?: string; - - /** Specifies the header height for tree map level. - * @Default {0} - */ - headerHeight?: number; - - /** Specifies the header template for tree map level. - * @Default {null} - */ - headerTemplate?: string; - - /** Specifies the mode of header visibility - * @Default {visible} - */ - headerVisibilityMode?: ej.datavisualization.TreeMap.VisibilityMode | string; - - /** Specifies the position of the labels. - * @Default {center} - */ - labelPosition?: ej.datavisualization.TreeMap.Position | string; - - /** Specifies the label template for tree map level. - * @Default {null} - */ - labelTemplate?: string; - - /** Specifies the mode of label visibility - * @Default {visible} - */ - labelVisibilityMode?: ej.datavisualization.TreeMap.VisibilityMode | string; - - /** Shows or hides the header for tree map level. - * @Default {false} - */ - showHeader?: boolean; - - /** Shows or hides the labels for tree map level. - * @Default {false} - */ - showLabels?: boolean; - } - } - namespace TreeMap { - enum DockPosition { - //specifies the top position - Top, - //specifies the bottom position - Bottom, - //specifies the bottom position - Right, - //specifies the left position - Left, - } - } - namespace TreeMap { - enum ItemsLayoutMode { - //specifies the squarified as layout type position - Squarified, - //specifies the sliceanddicehorizontal as layout type position - Sliceanddicehorizontal, - //specifies the sliceanddicevertical as layout type position - Sliceanddicevertical, - //specifies the sliceanddiceauto as layout type position - Sliceanddiceauto, - } - } - namespace TreeMap { - enum Position { - //specifies the none position - None, - //specifies the topleft position - Topleft, - //specifies the topcenter position - Topcenter, - //specifies the topright position - Topright, - //specifies the centerleft position - Centerleft, - //specifies the center position - Center, - //specifies the centerright position - Centerright, - //specifies the bottomleft position - Bottomleft, - //specifies the bottomcenter position - Bottomcenter, - //specifies the bottomright position - Bottomright, - } - } - namespace TreeMap { - enum VisibilityMode { - //specifies the visible mode - Top, - //specifies the hide on exceeded length mode - Hideonexceededlength, - } - } - namespace TreeMap { - enum selectionMode { - //specifies the default mode - Default, - //specifies the multiple mode - Multiple, - } - } - namespace TreeMap { - enum groupSelectionMode { - //specifies the default mode - Default, - //specifies the multiple mode - Multiple, - } - } - - class Diagram extends ej.Widget { - static fn: Diagram; - constructor(element: JQuery | Element, options?: Diagram.Model); - static Locale: any; - model: Diagram.Model; - defaults: Diagram.Model; - - /** Add nodes and connectors to diagram at runtime - * @param {any} a JSON to define a node/connector or an array of nodes and connector - * @returns {boolean} - */ - add(node: any): boolean; - - /** Add a label to a node at runtime - * @param {string} name of the node to which label will be added - * @param {any} JSON for the new label to be added - * @returns {void} - */ - addLabel(nodeName: string, newLabel: any): void; - - /** Add dynamic Lanes to swimlane at runtime - * @param {any} JSON for the new lane to be added - * @param {number} Index value to add the lane in swimlane - * @returns {void} - */ - addLane(lane: any, index: number): void; - - /** Add a phase to a swimlane at runtime - * @param {string} name of the swimlane to which the phase will be added - * @param {any} JSON object to define the phase to be added - * @returns {void} - */ - addPhase(name: string, options: any): void; - - /** Add a collection of ports to the node specified by name - * @param {string} name of the node to which the ports have to be added - * @param {Array} a collection of ports to be added to the specified node - * @returns {void} - */ - addPorts(name: string, ports: any[]): void; - - /** Add the specified node to selection list - * @param {any} the node to be selected - * @param {boolean} to define whether to clear the existing selection or not - * @returns {void} - */ - addSelection(node: any, clearSelection?: boolean): void; - - /** Align the selected objects based on the reference object and direction - * @param {string} to specify the direction towards which the selected objects are to be aligned("left","right",top","bottom") - * @returns {void} - */ - align(direction: string): void; - - /** Bring the specified portion of the diagram content to the diagram viewport - * @param {any} the rectangular region that is to be brought into diagram viewport - * @returns {void} - */ - bringIntoView(rect: any): void; - - /** Bring the specified portion of the diagram content to the center of the diagram viewport - * @param {any} the rectangular region that is to be brought to the center of diagram viewport - * @returns {void} - */ - bringToCenter(rect: any): void; - - /** Visually move the selected object over all other intersected objects - * @returns {void} - */ - bringToFront(): void; - - /** Remove all the elements from diagram - * @returns {void} - */ - clear(): void; - - /** Clears the actions which is recorded to perform undo/redo operation in the diagram. - * @returns {void} - */ - clearHistory(): void; - - /** Remove the current selection in diagram - * @returns {void} - */ - clearSelection(): void; - - /** Copy the selected object to internal clipboard and get the copied object - * @returns {any} - */ - copy(): any; - - /** Cut the selected object from diagram to diagram internal clipboard - * @returns {void} - */ - cut(): void; - - /** Export the diagram as downloadable files or as data - * @param {Diagram.Options} options to export the desired region of diagram to the desired formats. - * @returns {string} - */ - exportDiagram(options?: Diagram.Options): string; - - /** Read a node/connector object by its name - * @param {string} name of the node/connector that is to be identified - * @returns {any} - */ - findNode(name: string): any; + /** returns the object of the bullet graph. + */ + Object?: any; + + /** returns the index of current range. + */ + rangeIndex?: number; + + /** returns the settings for current range. + */ + rangeOptions?: any; + + /** returns the end value of current range. + */ + rangeEndValue?: number; + } + + export interface LoadEventArgs { + + /** returns the model of the bullet graph. + */ + model?: any; + + /** returns the name of the event. + */ + type?: string; + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + } + + export interface CaptionSettingsFont { + + /** Specifies the color of the text in caption. + * @Default {null} + */ + color?: string; + + /** Specifies the fontFamily of caption. Caption text render with this fontFamily + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the fontStyle of caption + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.BulletGraph.FontStyle|string; + + /** Specifies the fontWeight of caption + * @Default {regular} + */ + fontWeight?: ej.datavisualization.BulletGraph.FontWeight|string; + + /** Specifies the opacity of caption. Caption text render with this opacity. + * @Default {1} + */ + opacity?: number; + + /** Specifies the size of caption. Caption text render with this size + * @Default {12px} + */ + size?: string; + } + + export interface CaptionSettingsIndicatorFont { + + /** Specifies the color of the indicator's text. + * @Default {null} + */ + color?: string; + + /** Specifies the fontFamily of indicator. Indicator text render with this fontFamily. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the fontStyle of indicator. Indicator text render with this fontStyle. See FontStyle + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.BulletGraph.FontStyle|string; + + /** Specifies the fontWeight of indicator. Indicator text render with this fontWeight. See FontWeight + * @Default {regular} + */ + fontWeight?: ej.datavisualization.BulletGraph.FontWeight|string; + + /** Specifies the opacity of indicator text. Indicator text render with this Opacity. + * @Default {1} + */ + opacity?: number; + + /** Specifies the size of indicator. Indicator text render with this size. + * @Default {12px} + */ + size?: string; + } + + export interface CaptionSettingsIndicatorLocation { + + /** Specifies the horizontal position of the indicator. + * @Default {10} + */ + x?: number; + + /** Specifies the vertical position of the indicator. + * @Default {60} + */ + y?: number; + } + + export interface CaptionSettingsIndicatorSymbolBorder { + + /** Specifies the border color of indicator symbol. + * @Default {null} + */ + color?: string; + + /** Specifies the border width of indicator symbol. + * @Default {1} + */ + width?: number; + } + + export interface CaptionSettingsIndicatorSymbolSize { + + /** Specifies the height of indicator symbol. + * @Default {10} + */ + height?: number; + + /** Specifies the width of indicator symbol. + * @Default {10} + */ + width?: number; + } + + export interface CaptionSettingsIndicatorSymbol { + + /** Contains property to customize the border of indicator symbol. + */ + border?: CaptionSettingsIndicatorSymbolBorder; + + /** Specifies the color of indicator symbol. + * @Default {null} + */ + color?: string; + + /** Specifies the URL of image that represents indicator symbol. + */ + imageURL?: string; + + /** Specifies the opacity of indicator symbol. + * @Default {1} + */ + opacity?: number; + + /** Specifies the shape of indicator symbol. + */ + shape?: string; + + /** Contains property to customize the size of indicator symbol. + */ + size?: CaptionSettingsIndicatorSymbolSize; + } + + export interface CaptionSettingsIndicator { + + /** Contains property to customize the font of indicator. + */ + font?: CaptionSettingsIndicatorFont; + + /** Contains property to customize the location of indicator. + */ + location?: CaptionSettingsIndicatorLocation; + + /** Specifies the padding to be applied when text position is used. + * @Default {2} + */ + padding?: number; + + /** Contains property to customize the symbol of indicator. + */ + symbol?: CaptionSettingsIndicatorSymbol; + + /** Specifies the text to be displayed as indicator text. By default difference between current value and target will be displayed + */ + text?: string; + + /** Specifies the alignment of indicator with respect to scale based on text position + * @Default {'Near'} + */ + textAlignment?: ej.datavisualization.BulletGraph.TextAlignment|string; + + /** Specifies where indicator text should be anchored when indicator overlaps with other caption group text. Text will be anchored when overlapping caption group text are at same + * position. Anchoring is not applicable for float position. + * @Default {'start'} + */ + textAnchor?: ej.datavisualization.BulletGraph.TextAnchor|string; + + /** indicator text render in the specified angle. + * @Default {0} + */ + textAngle?: number; + + /** Specifies where indicator should be placed + * @Default {'float'} + */ + textPosition?: ej.datavisualization.BulletGraph.TextPosition|string; + + /** Specifies the space between indicator symbol and text. + * @Default {3} + */ + textSpacing?: number; + + /** Specifies whether indicator will be visible or not. + * @Default {false} + */ + visible?: boolean; + } + + export interface CaptionSettingsLocation { + + /** Specifies the position in horizontal direction + * @Default {17} + */ + x?: number; + + /** Specifies the position in horizontal direction + * @Default {30} + */ + y?: number; + } + + export interface CaptionSettingsSubTitleFont { + + /** Specifies the color of the subtitle's text. + * @Default {null} + */ + color?: string; + + /** Specifies the fontFamily of subtitle. Subtitle text render with this fontFamily. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the fontStyle of subtitle. Subtitle text render with this fontStyle. See FontStyle + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.BulletGraph.FontStyle|string; + + /** Specifies the fontWeight of subtitle. Subtitle text render with this fontWeight. See FontWeight + * @Default {regular} + */ + fontWeight?: ej.datavisualization.BulletGraph.FontWeight|string; + + /** Specifies the opacity of subtitle. Subtitle text render with this opacity. + * @Default {1} + */ + opacity?: number; + + /** Specifies the size of subtitle. Subtitle text render with this size. + * @Default {12px} + */ + size?: string; + } + + export interface CaptionSettingsSubTitleLocation { + + /** Specifies the horizontal position of the subtitle. + * @Default {10} + */ + x?: number; + + /** Specifies the vertical position of the subtitle. + * @Default {45} + */ + y?: number; + } + + export interface CaptionSettingsSubTitle { + + /** Contains property to customize the font of subtitle. + */ + font?: CaptionSettingsSubTitleFont; + + /** Contains property to customize the location of subtitle. + */ + location?: CaptionSettingsSubTitleLocation; + + /** Specifies the padding to be applied when text position is used. + * @Default {5} + */ + padding?: number; + + /** Specifies the text to be displayed as subtitle. + */ + text?: string; + + /** Specifies the alignment of sub title text with respect to scale. Alignment will not be applied in float position. + * @Default {'Near'} + */ + textAlignment?: ej.datavisualization.BulletGraph.TextAlignment|string; + + /** Specifies where subtitle text should be anchored when sub title text overlaps with other caption group text. Text will be anchored when overlapping caption group text are at same + * position. Anchoring is not applicable for float position. + * @Default {'start'} + */ + textAnchor?: ej.datavisualization.BulletGraph.TextAnchor|string; + + /** Subtitle render in the specified angle. + * @Default {0} + */ + textAngle?: number; + + /** Specifies where sub title text should be placed. + * @Default {'float'} + */ + textPosition?: ej.datavisualization.BulletGraph.TextPosition|string; + } + + export interface CaptionSettings { + + /** Specifies whether trim the labels will be true or false. + * @Default {true} + */ + enableTrim?: boolean; + + /** Contains property to customize the font of caption. + */ + font?: CaptionSettingsFont; + + /** Contains property to customize the indicator. + */ + indicator?: CaptionSettingsIndicator; + + /** Contains property to customize the location. + */ + location?: CaptionSettingsLocation; + + /** Specifies the padding to be applied when text position is used. + * @Default {5} + */ + padding?: number; + + /** Contains property to customize the subtitle. + */ + subTitle?: CaptionSettingsSubTitle; + + /** Specifies the text to be displayed on bullet graph. + */ + text?: string; + + /** Specifies the alignment of caption text with respect to scale. This property will not be applied when text position is float. + * @Default {'Near'} + */ + textAlignment?: ej.datavisualization.BulletGraph.TextAlignment|string; + + /** Specifies caption text anchoring when caption text overlaps with other caption group text. Text will be anchored when overlapping caption group text are at same position. + * Anchoring is not applicable for float position. + * @Default {'start'} + */ + textAnchor?: ej.datavisualization.BulletGraph.TextAnchor|string; + + /** Specifies the angel in which the caption is rendered. + * @Default {0} + */ + textAngle?: number; + + /** Specifies how caption text should be placed. + * @Default {'float'} + */ + textPosition?: ej.datavisualization.BulletGraph.TextPosition|string; + } + + export interface QualitativeRange { + + /** Specifies the ending range to which the qualitative ranges will render. + * @Default {3} + */ + rangeEnd?: number; + + /** Specifies the opacity for the qualitative ranges. + * @Default {1} + */ + rangeOpacity?: number; + + /** Specifies the stroke for the qualitative ranges. + * @Default {null} + */ + rangeStroke?: string; + } + + export interface QuantitativeScaleSettingsComparativeMeasureSettings { + + /** Specifies the stroke of the comparative measure. + * @Default {null} + */ + stroke?: number; + + /** Specifies the width of the comparative measure. + * @Default {5} + */ + width?: number; + } + + export interface QuantitativeScaleSettingsFeaturedMeasureSettings { + + /** Specifies the Stroke of the featured measure in bullet graph. + * @Default {null} + */ + stroke?: number; + + /** Specifies the width of the featured measure in bullet graph. + * @Default {2} + */ + width?: number; + } + + export interface QuantitativeScaleSettingsFeatureMeasure { + + /** Specifies the category of feature measure. + * @Default {null} + */ + category?: string; + + /** Comparative measure render till the specified value. + * @Default {null} + */ + comparativeMeasureValue?: number; + + /** Feature measure render till the specified value. + * @Default {null} + */ + value?: number; + } + + export interface QuantitativeScaleSettingsFields { + + /** Specifies the category of the bullet graph. + * @Default {null} + */ + category?: string; + + /** Comparative measure render based on the values in the specified field. + * @Default {null} + */ + comparativeMeasure?: string; + + /** Specifies the dataSource for the bullet graph. + * @Default {null} + */ + dataSource?: any; + + /** Feature measure render based on the values in the specified field. + * @Default {null} + */ + featureMeasures?: string; + + /** Specifies the query for fetching the values form data source to render the bullet graph. + * @Default {null} + */ + query?: string; + + /** Specifies the name of the table. + * @Default {null} + */ + tableName?: string; + } + + export interface QuantitativeScaleSettingsLabelSettingsFont { + + /** Specifies the fontFamily of labels in bullet graph. Labels render with this fontFamily. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the fontStyle of labels in bullet graph. Labels render with this fontStyle. See FontStyle + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.BulletGraph.FontStyle|string; + + /** Specifies the fontWeight of labels in bullet graph. Labels render with this fontWeight. See FontWeight + * @Default {regular} + */ + fontWeight?: ej.datavisualization.BulletGraph.FontWeight|string; + + /** Specifies the opacity of labels in bullet graph. Labels render with this opacity + * @Default {1} + */ + opacity?: number; + } + + export interface QuantitativeScaleSettingsLabelSettings { + + /** Contains property to customize the font of the labels in bullet graph. + */ + font?: QuantitativeScaleSettingsLabelSettingsFont; + + /** Specifies the placement of labels in bullet graph scale. + * @Default {outside} + */ + labelPlacement?: ej.datavisualization.BulletGraph.LabelPlacement|string; + + /** Specifies the prefix to be added with labels in bullet graph. + * @Default {Empty string} + */ + labelPrefix?: string; + + /** Specifies the suffix to be added after labels in bullet graph. + * @Default {Empty string} + */ + labelSuffix?: string; + + /** Specifies the horizontal/vertical padding of labels. + * @Default {15} + */ + offset?: number; + + /** Specifies the position of the labels to render either above or below the graph. See + * @Default {below} + */ + position?: ej.datavisualization.BulletGraph.LabelPosition|string; + + /** Specifies the Size of the labels. + * @Default {12} + */ + size?: number; + + /** Specifies the stroke color of the labels in bullet graph. + * @Default {null} + */ + stroke?: string; + } + + export interface QuantitativeScaleSettingsLocation { + + /** This property specifies the x position for rendering quantitative scale. + * @Default {10} + */ + x?: number; + + /** This property specifies the y position for rendering quantitative scale. + * @Default {10} + */ + y?: number; + } + + export interface QuantitativeScaleSettingsMajorTickSettings { + + /** Specifies the size of the major ticks. + * @Default {13} + */ + size?: number; + + /** Specifies the stroke color of the major tick lines. + * @Default {null} + */ + stroke?: string; + + /** Specifies the width of the major tick lines. + * @Default {2} + */ + width?: number; + } + + export interface QuantitativeScaleSettingsMinorTickSettings { + + /** Specifies the size of minor ticks. + * @Default {7} + */ + size?: number; + + /** Specifies the stroke color of minor ticks in bullet graph. + * @Default {null} + */ + stroke?: string; + + /** Specifies the width of the minor ticks in bullet graph. + * @Default {2} + */ + width?: number; + } + + export interface QuantitativeScaleSettings { + + /** Contains property to customize the comparative measure. + */ + comparativeMeasureSettings?: QuantitativeScaleSettingsComparativeMeasureSettings; + + /** Contains property to customize the featured measure. + */ + featuredMeasureSettings?: QuantitativeScaleSettingsFeaturedMeasureSettings; + + /** Contains property to customize the featured measure. + */ + featureMeasures?: QuantitativeScaleSettingsFeatureMeasure[]; + + /** Contains property to customize the fields. + */ + fields?: QuantitativeScaleSettingsFields; + + /** Specifies the interval for the Graph. + * @Default {1} + */ + interval?: number; + + /** Contains property to customize the labels. + */ + labelSettings?: QuantitativeScaleSettingsLabelSettings; + + /** Contains property to customize the position of the quantitative scale + */ + location?: QuantitativeScaleSettingsLocation; + + /** Contains property to customize the major tick lines. + */ + majorTickSettings?: QuantitativeScaleSettingsMajorTickSettings; + + /** Specifies the maximum value of the Graph. + * @Default {10} + */ + maximum?: number; + + /** Specifies the minimum value of the Graph. + * @Default {0} + */ + minimum?: number; + + /** Contains property to customize the minor ticks. + */ + minorTickSettings?: QuantitativeScaleSettingsMinorTickSettings; + + /** The specified number of minor ticks will be rendered per interval. + * @Default {4} + */ + minorTicksPerInterval?: number; + + /** Specifies the placement of ticks to render either inside or outside the scale. + * @Default {ej.datavisualization.BulletGraph.TickPlacement.Outside} + */ + tickPlacement?: ej.datavisualization.BulletGraph.TickPlacement|string; + + /** Specifies the position of the ticks to render either above,below or inside + * @Default {ej.datavisualization.BulletGraph.TickPosition.Far} + */ + tickPosition?: ej.datavisualization.BulletGraph.TickPosition|string; + } + + export interface TooltipSettings { + + /** Specifies template for caption tooltip + * @Default {null} + */ + captionTemplate?: string; + + /** Toggles the visibility of caption tooltip + * @Default {false} + */ + enableCaptionTooltip?: boolean; + + /** Specifies the ID of a div, which is to be displayed as tooltip. + * @Default {null} + */ + template?: string; + + /** Toggles the visibility of tooltip + * @Default {true} + */ + visible?: boolean; + } + } + namespace BulletGraph { + enum FontStyle { + //string + Normal, + //string + Italic, + //string + Oblique, + } + } + namespace BulletGraph { + enum FontWeight { + //string + Normal, + //string + Bold, + //string + Bolder, + //string + Lighter, + } + } + namespace BulletGraph { + enum TextAlignment { + //string + Near, + //string + Far, + //string + Center, + } + } + namespace BulletGraph { + enum TextAnchor { + //string + Start, + //string + Middle, + //string + End, + } + } + namespace BulletGraph { + enum TextPosition { + //string + Top, + //string + Right, + //string + Left, + //string + Bottom, + //string + Float, + } + } + namespace BulletGraph { + enum FlowDirection { + //string + Forward, + //string + Backward, + } + } + namespace BulletGraph { + enum Orientation { + //string + Horizontal, + //string + Vertical, + } + } + namespace BulletGraph { + enum LabelPlacement { + //string + Inside, + //string + Outside, + } + } + namespace BulletGraph { + enum LabelPosition { + //string + Above, + //string + Below, + } + } + namespace BulletGraph { + enum TickPlacement { + //string + Inside, + //string + Outside, + } + } + namespace BulletGraph { + enum TickPosition { + //string + Below, + //string + Above, + //string + Cross, + } + } + + class Barcode extends ej.Widget { + static fn: Barcode; + constructor(element: JQuery | Element, options?: Barcode.Model); + static Locale: any; + model: Barcode.Model; + defaults: Barcode.Model; + + /** To disable the barcode + * @returns {void} + */ + disable(): void; + + /** To enable the barcode + * @returns {void} + */ + enable(): void; + } + export namespace Barcode { + + export interface Model { + + /** Specifies the distance between the barcode and text below it. + */ + barcodeToTextGapHeight?: number; + + /** Specifies the height of bars in the Barcode. By modifying the barHeight, the entire barcode height can be customized. Please refer to xDimension for two dimensional barcode height + * customization. + */ + barHeight?: number; + + /** Specifies the dark bar color of the Barcode. One dimensional barcode contains a series of dark and light bars which are usually colored as black and white respectively. + */ + darkBarColor?: any; + + /** Specifies whether the text below the barcode is visible or hidden. + */ + displayText?: boolean; + + /** Specifies whether the control is enabled. + */ + enabled?: boolean; + + /** Specifies the start and stop encode symbol in the Barcode. In one dimensional barcodes, an additional character is added as start and stop delimiters. These symbols are optional + * and the unique of the symbol allows the reader to determine the direction of the barcode being scanned. + */ + encodeStartStopSymbol?: number; + + /** Specifies the light bar color of the Barcode. One dimensional barcode contains a series of dark and light bars which are usually colored as black and white respectively. + */ + lightBarColor?: any; + + /** Specifies the width of the narrow bars in the barcode. The dark bars in the one dimensional barcode contains random narrow and wide bars based on the provided input which can be + * specified during initialization. + */ + narrowBarWidth?: number; + + /** Specifies the width of the quiet zone. In barcode, a quiet zone is the blank margin on either side of a barcode which informs the reader where a barcode's symbology starts and + * stops. The purpose of a quiet zone is to prevent the reader from picking up unrelated information. + */ + quietZone?: QuietZone; + + /** Specifies the type of the Barcode. See SymbologyType + */ + symbologyType?: ej.datavisualization.Barcode.SymbologyType|string; + + /** Specifies the text to be encoded in the barcode. + */ + text?: string; + + /** Specifies the color of the text/data at the bottom of the barcode. + */ + textColor?: any; + + /** Specifies the width of the wide bars in the barcode. One dimensional barcode usually contains random narrow and wide bars based on the provided which can be customized during + * initialization. + */ + wideBarWidth?: number; + + /** Specifies the width of the narrowest element(bar or space) in a barcode. The greater the x dimension, the more easily a barcode reader will scan. + */ + xDimension?: number; + + /** Fires after Barcode control is loaded. + */ + load?(e: LoadEventArgs): void; + } + + export interface LoadEventArgs { + + /** if the event should be canceled; otherwise, false. + */ + cancel?: boolean; + + /** returns the barcode model + */ + model?: any; + + /** returns the name of the event + */ + type?: string; + + /** return the barcode state + */ + status?: boolean; + } + + export interface QuietZone { + + /** Specifies the quiet zone around the Barcode. + */ + all?: number; + + /** Specifies the bottom quiet zone of the Barcode. + */ + bottom?: number; + + /** Specifies the left quiet zone of the Barcode. + */ + left?: number; + + /** Specifies the right quiet zone of the Barcode. + */ + right?: number; + + /** Specifies the top quiet zone of the Barcode. + */ + top?: number; + } + } + namespace Barcode { + enum SymbologyType { + //Represents the QR code + QRBarcode, + //Represents the Data Matrix barcode + DataMatrix, + //Represents the Code 39 barcode + Code39, + //Represents the Code 39 Extended barcode + Code39Extended, + //Represents the Code 11 barcode + Code11, + //Represents the Codabar barcode + Codabar, + //Represents the Code 32 barcode + Code32, + //Represents the Code 93 barcode + Code93, + //Represents the Code 93 Extended barcode + Code93Extended, + //Represents the Code 128 A barcode + Code128A, + //Represents the Code 128 B barcode + Code128B, + //Represents the Code 128 C barcode + Code128C, + } + } + + class Map extends ej.Widget { + static fn: Map; + constructor(element: JQuery | Element, options?: Map.Model); + static Locale: any; + model: Map.Model; + defaults: Map.Model; + + /** Method for navigating to specific shape based on latitude, longitude and zoom level. + * @param {number} Pass the latitude value for map + * @param {number} Pass the longitude value for map + * @param {number} Pass the zoom level for map + * @returns {void} + */ + navigateTo(latitude: number, longitude: number, level: number): void; + + /** Method to perform map panning + * @param {string} Pass the direction in which map should be panned + * @returns {void} + */ + pan(direction: string): void; + + /** Method to reload the map. + * @returns {void} + */ + refresh(): void; + + /** Method to reload the shapeLayers with updated values + * @returns {void} + */ + refreshLayers(): void; + + /** Method to reload the navigation control with updated values. + * @param {any} Pass the navigation control instance + * @returns {void} + */ + refreshNavigationControl(navigation: any): void; + + /** Method to perform map zooming. + * @param {number} Pass the zoom level for map to be zoomed + * @param {boolean} Pass the boolean value to enable or disable animation while zooming + * @returns {void} + */ + zoom(level: number, isAnimate: boolean): void; + } + export namespace Map { + + export interface Model { + + /** Specifies the background color for map + * @Default {transparent} + */ + background?: string; + + /** Specifies the index of the map to determine the shape layer to be displayed + * @Default {0} + */ + baseMapIndex?: number; + + /** Specify the center position where map should be displayed + * @Default {[0,0]} + */ + centerPosition?: any; + + /** Controls the selection through dragging + * @Default {false} + */ + draggingOnSelection?: boolean; + + /** Enables or Disables the map animation + * @Default {false} + */ + enableAnimation?: boolean; + + /** Enables or Disables the animation for layer change in map + * @Default {false} + */ + enableLayerChangeAnimation?: boolean; + + /** Enables or Disables the map panning + * @Default {true} + */ + enablePan?: boolean; + + /** Determines whether map need to resize when container is resized + * @Default {true} + */ + enableResize?: boolean; + + /** Determines whether map need to resize when container is resized + * @Default {true} + */ + isResponsive?: boolean; + + /** Enables or Disables the Zooming for map. + */ + zoomSettings?: ZoomSettings; + + /** Enables or Disables the navigation control for map to perform zooming and panning on map shapes. + */ + navigationControl?: NavigationControl; + + /** Name of the culture based on which map should be localized. Labels are localized with respect to the culture name.String type properties like template text are not localized + * automatically. Provide localized text as value to string type properties. + * @Default {en-US} + */ + locale?: string; + + /** Layer for holding the map shapes + */ + layers?: Layer[]; + + /** Triggered on selecting the map markers. + */ + markerSelected?(e: MarkerSelectedEventArgs): void; + + /** Triggers while leaving the hovered map shape + */ + mouseleave?(e: MouseleaveEventArgs): void; + + /** Triggers while hovering the map shape. + */ + mouseover?(e: MouseoverEventArgs): void; + + /** Triggers once map render completed. + */ + onRenderComplete?(e: OnRenderCompleteEventArgs): void; + + /** Triggers when map panning ends. + */ + panned?(e: PannedEventArgs): void; + + /** Triggered on selecting the map shapes. + */ + shapeSelected?(e: ShapeSelectedEventArgs): void; + + /** Triggered when map is zoomed-in. + */ + zoomedIn?(e: ZoomedInEventArgs): void; + + /** Triggers when map is zoomed out. + */ + zoomedOut?(e: ZoomedOutEventArgs): void; + } + + export interface MarkerSelectedEventArgs { + + /** Returns marker object. + */ + originalEvent?: any; + } + + export interface MouseleaveEventArgs { + + /** Returns hovered map shape object. + */ + originalEvent?: any; + } + + export interface MouseoverEventArgs { + + /** Returns hovered map shape object. + */ + originalEvent?: any; + } + + export interface OnRenderCompleteEventArgs { + + /** Event parameters from map + */ + originalEvent?: any; + } + + export interface PannedEventArgs { + + /** Event parameters from map + */ + originalEvent?: any; + } + + export interface ShapeSelectedEventArgs { + + /** Returns selected shape object. + */ + originalEvent?: any; + } + + export interface ZoomedInEventArgs { + + /** Event parameters from map + */ + originalEvent?: any; + + /** Returns zoom level value for which the map is zoomed. + */ + zoomLevel?: any; + } + + export interface ZoomedOutEventArgs { + + /** Event parameters from map + */ + originalEvent?: any; + + /** Returns zoom level value for which the map is zoomed. + */ + zoomLevel?: any; + } + + export interface ZoomSettings { + + /** Enables or Disables the zooming of map + * @Default {true} + */ + enableZoom?: boolean; + + /** Enables or Disables the zoom on selecting the map shape + * @Default {false} + */ + enableZoomOnSelection?: boolean; + + /** Specifies the zoom factor for map zoom value. + * @Default {1} + */ + factor?: number; + + /** Specifies the zoom level value for which map to be zoomed + * @Default {1} + */ + level?: number; + + /** Specifies the minimum zoomSettings level of the map + * @Default {1} + */ + minValue?: number; + + /** Specifies the maximum zoom level of the map + * @Default {100} + */ + maxValue?: number; + } + + export interface NavigationControl { + + /** Set the absolutePosition for navigation control + * @Default {{x:0,y:0}} + */ + absolutePosition?: any; + + /** Specifies the navigation control template for map + * @Default {null} + */ + content?: string; + + /** Set the dockPosition value for navigation control + * @Default {centerleft} + */ + dockPosition?: ej.datavisualization.Map.Position|string; + + /** Enables or Disables the Navigation for handling zooming map + * @Default {false} + */ + enableNavigation?: boolean; + + /** Set the orientation value for navigation control + * @Default {vertical} + */ + orientation?: ej.datavisualization.Map.LabelOrientation|string; + } + + export interface LayersBubbleSettingsColorMappingsRangeColorMapping { + + /** Start range colorMappings in the bubble layer. + * @Default {null} + */ + from?: number; + + /** End range colorMappings in the bubble layer. + * @Default {null} + */ + to?: number; + + /** GradientColors in the bubble layer of map. + */ + gradientColors?: any[]; + + /** Color of the bubble layer. + * @Default {null} + */ + color?: string; + } + + export interface LayersBubbleSettingsColorMappings { + + /** Specifies the range colorMappings in the bubble layer. + * @Default {null} + */ + rangeColorMapping?: LayersBubbleSettingsColorMappingsRangeColorMapping[]; + } + + export interface LayersBubbleSettings { + + /** Specifies the bubble Opacity value of bubbles for shape layer in map + * @Default {0.9} + */ + bubbleOpacity?: number; + + /** Specifies the mouse hover color of the shape layer in map + * @Default {gray} + */ + color?: string; + + /** Specifies the colorMappings of the shape layer in map + * @Default {null} + */ + colorMappings?: LayersBubbleSettingsColorMappings; + + /** Specifies the bubble color valuePath of the shape layer in map + * @Default {null} + */ + colorValuePath?: string; + + /** Specifies the maximum size value of bubbles for shape layer in map + * @Default {20} + */ + maxValue?: number; + + /** Specifies the minimum size value of bubbles for shape layer in map + * @Default {10} + */ + minValue?: number; + + /** Specifies the showBubble visibility status map + * @Default {true} + */ + showBubble?: boolean; + + /** Specifies the tooltip visibility status of the shape layer in map + * @Default {false} + */ + showTooltip?: boolean; + + /** Specifies the bubble tooltip template of the shape layer in map + * @Default {null} + */ + tooltipTemplate?: string; + + /** Specifies the bubble valuePath of the shape layer in map + * @Default {null} + */ + valuePath?: string; + } + + export interface LayersLabelSettings { + + /** enable or disable the enableSmartLabel property + * @Default {false} + */ + enableSmartLabel?: boolean; + + /** set the labelLength property + * @Default {'2'} + */ + labelLength?: number; + + /** set the labelPath property + * @Default {null} + */ + labelPath?: string; + + /** The property specifies whether to show labels or not. + * @Default {false} + */ + showLabels?: boolean; + + /** set the smartLabelSize property + * @Default {fixed} + */ + smartLabelSize?: ej.datavisualization.Map.LabelSize|string; + } + + export interface LayersLegendSettings { + + /** Determines whether the legend should be placed outside or inside the map bounds + * @Default {false} + */ + dockOnMap?: boolean; + + /** Determines the legend placement and it is valid only when dockOnMap is true + * @Default {top} + */ + dockPosition?: ej.datavisualization.Map.DockPosition|string; + + /** height value for legend setting + * @Default {0} + */ + height?: number; + + /** to get icon value for legend setting + * @Default {rectangle} + */ + icon?: ej.datavisualization.Map.LegendIcons|string; + + /** icon height value for legend setting + * @Default {20} + */ + iconHeight?: number; + + /** icon Width value for legend setting + * @Default {20} + */ + iconWidth?: number; + + /** set the orientation of legend labels + * @Default {vertical} + */ + labelOrientation?: ej.datavisualization.Map.LabelOrientation|string; + + /** to get leftLabel value for legend setting + * @Default {null} + */ + leftLabel?: string; + + /** to get mode of legend setting + * @Default {default} + */ + mode?: ej.datavisualization.Map.Mode|string; + + /** set the position of legend settings + * @Default {topleft} + */ + position?: ej.datavisualization.Map.Position|string; + + /** x position value for legend setting + * @Default {0} + */ + positionX?: number; + + /** y position value for legend setting + * @Default {0} + */ + positionY?: number; + + /** to get rightLabel value for legend setting + * @Default {null} + */ + rightLabel?: string; + + /** Enables or Disables the showLabels + * @Default {false} + */ + showLabels?: boolean; + + /** Enables or Disables the showLegend + * @Default {false} + */ + showLegend?: boolean; + + /** to get title of legend setting + * @Default {null} + */ + title?: string; + + /** to get type of legend setting + * @Default {layers} + */ + type?: ej.datavisualization.Map.LegendType|string; + + /** width value for legend setting + * @Default {0} + */ + width?: number; + } + + export interface LayersShapeSettingsColorMappingsRangeColorMapping { + + /** Specifies the start range colorMappings in the shape layer of map. + * @Default {null} + */ + from?: number; + + /** Specifies the to range colorMappings in the shape layer of map. + * @Default {null} + */ + to?: number; + + /** Specifies the gradientColors in the shape layer of map. + * @Default {null} + */ + gradientColors?: any[]; + } + + export interface LayersShapeSettingsColorMappingsEqualColorMapping { + + /** Specifies the equalColorMapping value in the shape layer of map. + * @Default {null} + */ + value?: string; + + /** Specifies the equalColorMapping color in the shape layer of map. + * @Default {null} + */ + color?: string; + } + + export interface LayersShapeSettingsColorMappings { + + /** Specifies the range colorMappings in the shape layer of map. + * @Default {null} + */ + rangeColorMapping?: LayersShapeSettingsColorMappingsRangeColorMapping[]; + + /** Specifies the equalColorMapping in the shape layer of map. + * @Default {null} + */ + equalColorMapping?: LayersShapeSettingsColorMappingsEqualColorMapping[]; + } + + export interface LayersShapeSettings { + + /** Enables or Disables the auto fill colors for shape layer in map. When this property value set to true, shapes will be filled with palette colors. + * @Default {false} + */ + autoFill?: boolean; + + /** Specifies the colorMappings of the shape layer in map + * @Default {null} + */ + colorMappings?: LayersShapeSettingsColorMappings; + + /** Specifies the shape color palette value of the shape layer in map. Accepted colorPalette values are palette1, palette2, palette3 and custompalette. + * @Default {palette1} + */ + colorPalette?: ej.datavisualization.Map.ColorPalette|string; + + /** Specifies the shape color valuePath of the shape layer in map + * @Default {null} + */ + colorValuePath?: string; + + /** Enables or Disables the gradient colors for map shapes. + * @Default {false} + */ + enableGradient?: boolean; + + /** Specifies the shape fill color of the shape layer in map + * @Default {#E5E5E5} + */ + fill?: string; + + /** Specifies the mouse over width of the shape layer in map + * @Default {1} + */ + highlightBorderWidth?: number; + + /** Specifies the mouse hover color of the shape layer in map + * @Default {gray} + */ + highlightColor?: string; + + /** Specifies the mouse over stroke color of the shape layer in map + * @Default {#C1C1C1} + */ + highlightStroke?: string; + + /** Specifies the shape selection color of the shape layer in map + * @Default {gray} + */ + selectionColor?: string; + + /** Specifies the shape selection stroke color of the shape layer in map + * @Default {#C1C1C1} + */ + selectionStroke?: string; + + /** Specifies the shape selection stroke width of the shape layer in map + * @Default {1} + */ + selectionStrokeWidth?: number; + + /** Specifies the shape stroke color of the shape layer in map + * @Default {#C1C1C1} + */ + stroke?: string; + + /** Specifies the shape stroke thickness value of the shape layer in map + * @Default {0.2} + */ + strokeThickness?: number; + + /** Specifies the shape valuePath of the shape layer in map + * @Default {null} + */ + valuePath?: string; + } + + export interface LayersSublayersBubbleSettingsColorMappingsRangeColorMapping { + + /** Start range colorMappings in the bubble layer. + * @Default {null} + */ + from?: number; + + /** End range colorMappings in the bubble layer. + * @Default {null} + */ + to?: number; + + /** GradientColors in the bubble layer of map. + */ + gradientColors?: any[]; + + /** Color of the bubble layer. + * @Default {null} + */ + color?: string; + } + + export interface LayersSublayersBubbleSettingsColorMappings { + + /** Specifies the range colorMappings in the bubble layer. + * @Default {null} + */ + rangeColorMapping?: LayersSublayersBubbleSettingsColorMappingsRangeColorMapping[]; + } + + export interface LayersSublayersBubbleSettings { + + /** Specifies the bubble Opacity value of bubbles for shape layer in map + * @Default {0.9} + */ + bubbleOpacity?: number; + + /** Specifies the mouse hover color of the shape layer in map + * @Default {gray} + */ + color?: string; + + /** Specifies the colorMappings of the shape layer in map + * @Default {null} + */ + colorMappings?: LayersSublayersBubbleSettingsColorMappings; + + /** Specifies the bubble color valuePath of the shape layer in map + * @Default {null} + */ + colorValuePath?: string; + + /** Specifies the maximum size value of bubbles for shape layer in map + * @Default {20} + */ + maxValue?: number; + + /** Specifies the minimum size value of bubbles for shape layer in map + * @Default {10} + */ + minValue?: number; + + /** Specifies the showBubble visibility status map + * @Default {true} + */ + showBubble?: boolean; + + /** Specifies the tooltip visibility status of the shape layer in map + * @Default {false} + */ + showTooltip?: boolean; + + /** Specifies the bubble tooltip template of the shape layer in map + * @Default {null} + */ + tooltipTemplate?: string; + + /** Specifies the bubble valuePath of the shape layer in map + * @Default {null} + */ + valuePath?: string; + } + + export interface LayersSublayersLabelSettings { + + /** enable or disable the enableSmartLabel property + * @Default {false} + */ + enableSmartLabel?: boolean; + + /** set the labelLength property + * @Default {'2'} + */ + labelLength?: number; + + /** set the labelPath property + * @Default {null} + */ + labelPath?: string; + + /** The property specifies whether to show labels or not. + * @Default {false} + */ + showLabels?: boolean; + + /** set the smartLabelSize property + * @Default {fixed} + */ + smartLabelSize?: ej.datavisualization.Map.LabelSize|string; + } + + export interface LayersSublayersLegendSettings { + + /** Determines whether the legend should be placed outside or inside the map bounds + * @Default {false} + */ + dockOnMap?: boolean; + + /** Determines the legend placement and it is valid only when dockOnMap is true + * @Default {top} + */ + dockPosition?: ej.datavisualization.Map.DockPosition|string; + + /** height value for legend setting + * @Default {0} + */ + height?: number; + + /** to get icon value for legend setting + * @Default {rectangle} + */ + icon?: ej.datavisualization.Map.LegendIcons|string; + + /** icon height value for legend setting + * @Default {20} + */ + iconHeight?: number; + + /** icon Width value for legend setting + * @Default {20} + */ + iconWidth?: number; + + /** set the orientation of legend labels + * @Default {vertical} + */ + labelOrientation?: ej.datavisualization.Map.LabelOrientation|string; + + /** to get leftLabel value for legend setting + * @Default {null} + */ + leftLabel?: string; + + /** to get mode of legend setting + * @Default {default} + */ + mode?: ej.datavisualization.Map.Mode|string; + + /** set the position of legend settings + * @Default {topleft} + */ + position?: ej.datavisualization.Map.Position|string; + + /** x position value for legend setting + * @Default {0} + */ + positionX?: number; + + /** y position value for legend setting + * @Default {0} + */ + positionY?: number; + + /** to get rightLabel value for legend setting + * @Default {null} + */ + rightLabel?: string; + + /** Enables or Disables the showLabels + * @Default {false} + */ + showLabels?: boolean; + + /** Enables or Disables the showLegend + * @Default {false} + */ + showLegend?: boolean; + + /** to get title of legend setting + * @Default {null} + */ + title?: string; + + /** to get type of legend setting + * @Default {layers} + */ + type?: ej.datavisualization.Map.LegendType|string; + + /** width value for legend setting + * @Default {0} + */ + width?: number; + } + + export interface LayersSublayersShapeSettingsColorMappingsRangeColorMapping { + + /** Specifies the start range colorMappings in the shape layer of map. + * @Default {null} + */ + from?: number; + + /** Specifies the to range colorMappings in the shape layer of map. + * @Default {null} + */ + to?: number; + + /** Specifies the gradientColors in the shape layer of map. + * @Default {null} + */ + gradientColors?: any[]; + } + + export interface LayersSublayersShapeSettingsColorMappingsEqualColorMapping { + + /** Specifies the equalColorMapping value in the shape layer of map. + * @Default {null} + */ + value?: string; + + /** Specifies the equalColorMapping color in the shape layer of map. + * @Default {null} + */ + color?: string; + } + + export interface LayersSublayersShapeSettingsColorMappings { + + /** Specifies the range colorMappings in the shape layer of map. + * @Default {null} + */ + rangeColorMapping?: LayersSublayersShapeSettingsColorMappingsRangeColorMapping[]; + + /** Specifies the equalColorMapping in the shape layer of map. + * @Default {null} + */ + equalColorMapping?: LayersSublayersShapeSettingsColorMappingsEqualColorMapping[]; + } + + export interface LayersSublayersShapeSettings { + + /** Enables or Disables the auto fill colors for shape layer in map. When this property value set to true, shapes will be filled with palette colors. + * @Default {false} + */ + autoFill?: boolean; + + /** Specifies the colorMappings of the shape layer in map + * @Default {null} + */ + colorMappings?: LayersSublayersShapeSettingsColorMappings; + + /** Specifies the shape color palette value of the shape layer in map. Accepted colorPalette values are palette1, palette2, palette3 and custompalette. + * @Default {palette1} + */ + colorPalette?: ej.datavisualization.Map.ColorPalette|string; + + /** Specifies the shape color valuePath of the shape layer in map + * @Default {null} + */ + colorValuePath?: string; + + /** Enables or Disables the gradient colors for map shapes. + * @Default {false} + */ + enableGradient?: boolean; + + /** Specifies the shape fill color of the shape layer in map + * @Default {#E5E5E5} + */ + fill?: string; + + /** Specifies the mouse over width of the shape layer in map + * @Default {1} + */ + highlightBorderWidth?: number; + + /** Specifies the mouse hover color of the shape layer in map + * @Default {gray} + */ + highlightColor?: string; + + /** Specifies the mouse over stroke color of the shape layer in map + * @Default {#C1C1C1} + */ + highlightStroke?: string; + + /** Specifies the shape selection color of the shape layer in map + * @Default {gray} + */ + selectionColor?: string; + + /** Specifies the shape selection stroke color of the shape layer in map + * @Default {#C1C1C1} + */ + selectionStroke?: string; + + /** Specifies the shape selection stroke width of the shape layer in map + * @Default {1} + */ + selectionStrokeWidth?: number; + + /** Specifies the shape stroke color of the shape layer in map + * @Default {#C1C1C1} + */ + stroke?: string; + + /** Specifies the shape stroke thickness value of the shape layer in map + * @Default {0.2} + */ + strokeThickness?: number; + + /** Specifies the shape valuePath of the shape layer in map + * @Default {null} + */ + valuePath?: string; + } + + export interface LayersSublayer { + + /** to get the type of bing map. + * @Default {aerial} + */ + bingMapType?: ej.datavisualization.Map.BingMapType|string; + + /** Specifies the bubble settings for map + */ + bubbleSettings?: LayersSublayersBubbleSettings; + + /** Specifies the datasource for the shape layer + */ + dataSource?: any; + + /** Specifies the data path of shape + */ + shapeDataPath?: string; + + /** Specifies the data path of shape + */ + shapePropertyPath?: string; + + /** Enables or disables the shape mouse hover + * @Default {false} + */ + enableMouseHover?: boolean; + + /** Enables or disables the shape selection + * @Default {true} + */ + enableSelection?: boolean; + + /** to get the key of bing map + * @Default {null} + */ + key?: string; + + /** Options for enabling and configuring labelSettings labelPath, smartLabelSize, labelLength etc., + */ + labelSettings?: LayersSublayersLabelSettings; + + /** Specifies the map view type. + * @Default {'geographic'} + */ + geometryType?: ej.datavisualization.Map.GeometryType|string; + + /** Specifies the map type. + * @Default {'geometry'} + */ + layerType?: ej.datavisualization.Map.LayerType|string; + + /** Options for enabling and configuring legendSettings position, height, width, mode, type etc., + */ + legendSettings?: LayersSublayersLegendSettings; + + /** Specifies the map items template for shapes. + */ + mapItemsTemplate?: string; + + /** Specify markers for shape layer. + */ + markers?: any[]; + + /** Specifies the map marker template for map layer. + * @Default {null} + */ + markerTemplate?: string; + + /** Specify selectedMapShapes for shape layer + * @Default {[]} + */ + selectedMapShapes?: any[]; + + /** Specifies the selection mode of the map. Accepted selection mode values are Default and Multiple. + * @Default {default} + */ + selectionMode?: ej.datavisualization.Map.SelectionMode|string; + + /** Specifies the shape data for the shape layer + */ + shapeData?: any; + + /** Specifies the shape settings of map layer + */ + shapeSettings?: LayersSublayersShapeSettings; + + /** Shows or hides the map items. + * @Default {false} + */ + showMapItems?: boolean; + + /** Shows or hides the tooltip for shapes + * @Default {false} + */ + showTooltip?: boolean; + + /** Specifies the tooltip template for shapes. + */ + tooltipTemplate?: string; + + /** Specifies the URL template for the OSM type map. + * @Default {'http://a.tile.openstreetmap.org/level/tileX/tileY.png'} + */ + urlTemplate?: string; + } + + export interface Layer { + + /** to get the type of bing map. + * @Default {aerial} + */ + bingMapType?: ej.datavisualization.Map.BingMapType|string; + + /** Specifies the bubble settings for map + */ + bubbleSettings?: LayersBubbleSettings; + + /** Specifies the datasource for the shape layer + */ + dataSource?: any; + + /** Specifies the data path of shape + */ + shapeDataPath?: string; + + /** Specifies the data path of shape + */ + shapePropertyPath?: string; + + /** Enables or disables the shape mouse hover + * @Default {false} + */ + enableMouseHover?: boolean; + + /** Enables or disables the shape selection + * @Default {true} + */ + enableSelection?: boolean; + + /** to get the key of bing map + * @Default {null} + */ + key?: string; + + /** Options for enabling and configuring labelSettings labelPath, smartLabelSize, labelLength etc., + */ + labelSettings?: LayersLabelSettings; + + /** Specifies the map view type. + * @Default {'geographic'} + */ + geometryType?: ej.datavisualization.Map.GeometryType|string; + + /** Specifies the map type. + * @Default {'geometry'} + */ + layerType?: ej.datavisualization.Map.LayerType|string; + + /** Options for enabling and configuring legendSettings position, height, width, mode, type etc., + */ + legendSettings?: LayersLegendSettings; + + /** Specifies the map items template for shapes. + */ + mapItemsTemplate?: string; + + /** Specify markers for shape layer. + */ + markers?: any[]; + + /** Specifies the map marker template for map layer. + * @Default {null} + */ + markerTemplate?: string; + + /** Specify selectedMapShapes for shape layer + * @Default {[]} + */ + selectedMapShapes?: any[]; + + /** Specifies the selection mode of the map. Accepted selection mode values are Default and Multiple. + * @Default {default} + */ + selectionMode?: ej.datavisualization.Map.SelectionMode|string; + + /** Specifies the shape data for the shape layer + */ + shapeData?: any; + + /** Specifies the shape settings of map layer + */ + shapeSettings?: LayersShapeSettings; + + /** Shows or hides the map items. + * @Default {false} + */ + showMapItems?: boolean; + + /** Shows or hides the tooltip for shapes + * @Default {false} + */ + showTooltip?: boolean; + + /** Specifies the tooltip template for shapes. + */ + tooltipTemplate?: string; + + /** Specifies the URL template for the OSM type map. + * @Default {'http://a.tile.openstreetmap.org/level/tileX/tileY.png'} + */ + urlTemplate?: string; + + /** Sublayer is the collection of shape Layer + */ + sublayers?: LayersSublayer[]; + } + } + namespace Map { + enum Position { + //specifies the none position + None, + //specifies the topleft position + Topleft, + //specifies the topcenter position + Topcenter, + //specifies the topright position + Topright, + //specifies the centerleft position + Centerleft, + //specifies the center position + Center, + //specifies the centerright position + Centerright, + //specifies the bottomleft position + Bottomleft, + //specifies the bottomcenter position + Bottomcenter, + //specifies the bottomright position + Bottomright, + } + } + namespace Map { + enum LabelOrientation { + //specifies the horizontal position + Horizontal, + //specifies the vertical position + Vertical, + } + } + namespace Map { + enum BingMapType { + //specifies the aerial type + Aerial, + //specifies the aerialwithlabel type + Aerialwithlabel, + //specifies the road type + Road, + } + } + namespace Map { + enum LabelSize { + //specifies the fixed size + Fixed, + //specifies the default size + Default, + } + } + namespace Map { + enum GeometryType { + //specifies the geographic view of map + Geographic, + //specifies the normal land view of map + Normal, + } + } + namespace Map { + enum LayerType { + //specifies the geometry type + Geometry, + //specifies the osm type + Osm, + //specifies the bing type + Bing, + } + } + namespace Map { + enum DockPosition { + //specifies the top position + Top, + //specifies the bottom position + Bottom, + //specifies the bottom position + Right, + //specifies the left position + Left, + } + } + namespace Map { + enum LegendIcons { + //specifies the rectangle position + Rectangle, + //specifies the circle position + Circle, + } + } + namespace Map { + enum Mode { + //specifies the default mode + Default, + //specifies the interactive mode + Interactive, + } + } + namespace Map { + enum LegendType { + //specifies the layers type + Layers, + //specifies the bubbles type + Bubbles, + } + } + namespace Map { + enum SelectionMode { + //specifies the default position + Default, + //specifies the multiple position + Multiple, + } + } + namespace Map { + enum ColorPalette { + //specifies the palette1 color + Palette1, + //specifies the palette2 color + Palette2, + //specifies the palette3 color + Palette3, + //specifies the custom color + Custompalette, + } + } + + class TreeMap extends ej.Widget { + static fn: TreeMap; + constructor(element: JQuery | Element, options?: TreeMap.Model); + static Locale: any; + model: TreeMap.Model; + defaults: TreeMap.Model; + + /** Method to reload treemap with updated values. + * @returns {void} + */ + refresh(): void; + } + export namespace TreeMap { + + export interface Model { + + /** Specifies the border brush color of the treemap + * @Default {white} + */ + borderBrush?: string; + + /** Specifies the border thickness of the treemap + * @Default {1} + */ + borderThickness?: number; + + /** Specifies the uniColorMapping settings of the treemap + */ + uniColorMapping?: UniColorMapping; + + /** Specifies the desaturationColorMapping settings of the treemap + */ + desaturationColorMapping?: DesaturationColorMapping; + + /** Specifies the paletteColorMapping of the treemap + */ + paletteColorMapping?: PaletteColorMapping; + + /** Specifies the color value path of the treemap + * @Default {null} + */ + colorValuePath?: string; + + /** Specifies the datasource of the treemap + * @Default {null} + */ + dataSource?: any; + + /** Specifies the dockPosition for legend + * @Default {top} + */ + dockPosition?: ej.datavisualization.TreeMap.DockPosition|string; + + /** specifies the drillDown header color + * @Default {'null'} + */ + drillDownHeaderColor?: string; + + /** specifies the drillDown selection color + * @Default {'#000000'} + */ + drillDownSelectionColor?: string; + + /** Specifies whether datasource is hierarchical or not. + * @Default {false} + */ + isHierarchicalDatasource?: boolean; + + /** Specifies the header for parent item during drilldown. This is applicable only for hierarchical data source. + * @Default {null} + */ + header?: string; + + /** Enable/Disable the drillDown for treemap + * @Default {false} + */ + enableDrillDown?: boolean; + + /** Controls whether Treemap has to be responsive while resizing the window. + * @Default {true} + */ + isResponsive?: boolean; + + /** Specifies whether treemap need to resize when container is resized + * @Default {true} + */ + enableResize?: boolean; + + /** This property is used to select treemap items while clicking and dragging + * @Default {false} + */ + draggingOnSelection?: boolean; + + /** This property is used to select group of treemap items while clicking and dragging + * @Default {false} + */ + draggingGroupOnSelection?: boolean; + + /** Specifies the group color mapping of the treemap + * @Default {[]} + */ + groupColorMapping?: GroupColorMapping[]; + + /** Specifies the legend settings of the treemap + */ + legendSettings?: LegendSettings; + + /** Specifies the highlight border brush of treemap + * @Default {gray} + */ + highlightBorderBrush?: string; + + /** Specifies the border thickness when treemap items is highlighted in the treemap + * @Default {5} + */ + highlightBorderThickness?: number; + + /** Specifies the highlight border brush of treemap + * @Default {gray} + */ + highlightGroupBorderBrush?: string; + + /** Specifies the border thickness when treemap items is highlighted in the treemap + * @Default {5} + */ + highlightGroupBorderThickness?: number; + + /** Specifies whether treemap item need to highlighted on selection + * @Default {false} + */ + highlightGroupOnSelection?: boolean; + + /** Specifies whether treemap item need to highlighted on selection + * @Default {false} + */ + highlightOnSelection?: boolean; + + /** Specifies the items layout mode of the treemap. Accepted itemsLayoutMode values are Squarified, SliceAndDiceHorizontal, SliceAndDiceVertical and SliceAndDiceAuto + * @Default {Squarified} + */ + itemsLayoutMode?: ej.datavisualization.TreeMap.ItemsLayoutMode|string; + + /** Specify to convert the date object to string, using locale settings. + * @Default {false} + */ + enableGroupSeparator?: boolean; + + /** Name of the culture based on which Tree Map should be localized. + * @Default {en-US} + */ + locale?: string; + + /** Specifies the leaf settings of the treemap + */ + leafItemSettings?: LeafItemSettings; + + /** Specifies the rangeColorMapping settings of the treemap + * @Default {[]} + */ + rangeColorMapping?: RangeColorMapping[]; + + /** Specifies the selection mode of treemap item. Accepted selection mode values are Default and Multiple. + * @Default {default} + */ + selectionMode?: ej.datavisualization.TreeMap.selectionMode|string; + + /** Specifies the selection mode of the treemap. Accepted selection mode values are Default and Multiple. + * @Default {default} + */ + groupSelectionMode?: ej.datavisualization.TreeMap.groupSelectionMode|string; + + /** Specifies the legend visibility status of the treemap + * @Default {false} + */ + showLegend?: boolean; + + /** Specifies whether gradient color has to be applied for treemap items + * @Default {false} + */ + enableGradient?: boolean; + + /** Specifies whether treemap showTooltip need to be visible + */ + showTooltip?: boolean; + + /** Specifies the tooltip template of the treemap + * @Default {null} + */ + tooltipTemplate?: string; + + /** Hold the treeMapItems to be displayed in treemap + * @Default {[]} + */ + treeMapItems?: any[]; + + /** Specify levels of treemap for grouped visualization of data + * @Default {[]} + */ + levels?: Level[]; + + /** Specifies the weight value path of the treemap + * @Default {null} + */ + weightValuePath?: string; + + /** Triggers on treemap item selected. + */ + treeMapItemSelected?(e: TreeMapItemSelectedEventArgs): void; + + /** Triggers when drilldown is started + */ + drillStarted?(e: DrillStartedEventArgs): void; + + /** Triggers on treemap drilldown item selected. + */ + drillDownItemSelected?(e: DrillDownItemSelectedEventArgs): void; + + /** Triggers after refreshing the treemap items. + */ + refreshed?(e: RefreshedEventArgs): void; + + /** Triggers when the group selection is performed on treemap items. + */ + treeMapGroupSelected?(e: TreeMapGroupSelectedEventArgs): void; + } + + export interface TreeMapItemSelectedEventArgs { + + /** Returns selected treeMapItem object. + */ + originalEvent?: any; + } + + export interface DrillStartedEventArgs { + + /** Returns selected drilled treeMap object. + */ + originalEvent?: any; + } + + export interface DrillDownItemSelectedEventArgs { + + /** Returns selected drilldown treeMap object. + */ + originalEvent?: any; + } + + export interface RefreshedEventArgs { + + /** Refresh and load the treemap. + */ + originalEvent?: any; + } + + export interface TreeMapGroupSelectedEventArgs { + + /** Returns the selected group of treeMapItems as object. + */ + originalEvent?: any; + } + + export interface UniColorMapping { + + /** Specifies the uniform color mapping of the treemap + * @Default {null} + */ + color?: string; + } + + export interface DesaturationColorMapping { + + /** Specifies the to value for desaturation color mapping + * @Default {0} + */ + to?: number; + + /** Specifies the color for desaturationColorMapping + * @Default {null} + */ + color?: string; + + /** Specifies the from value for desaturation color mapping + * @Default {0} + */ + from?: number; + + /** Specifies the rangeMaximum value for desaturation color mapping + * @Default {0} + */ + rangeMaximum?: number; + + /** Specifies the rangeMinimum value for desaturation color mapping + * @Default {0} + */ + rangeMinimum?: number; + } + + export interface PaletteColorMapping { + + /** Specifies the colors of the paletteColorMapping + * @Default {[]} + */ + colors?: any[]; + } + + export interface GroupColorMapping { + + /** Specifies the groupID for GroupColorMapping. + * @Default {null} + */ + groupID?: string; + } + + export interface LegendSettings { + + /** Specifies the height for legend + * @Default {30} + */ + height?: number; + + /** Specifies the width for legend + * @Default {100} + */ + width?: number; + + /** Specifies the iconHeight for legend + * @Default {15} + */ + iconHeight?: number; + + /** Specifies the iconWidth for legend + * @Default {15} + */ + iconWidth?: number; + + /** Specifies the template for legendSettings + * @Default {null} + */ + template?: string; + + /** Specifies the mode for legendSettings whether default or interactive mode + * @Default {default} + */ + mode?: string; + + /** Specifies the title text for legend + */ + title?: string; + + /** Specifies the leftLabel text for legend + */ + leftLabel?: string; + + /** Specifies the rightLabel text for legend + */ + rightLabel?: string; + + /** Specifies the dockPosition text for legend + * @Default {top} + */ + dockPosition?: string; + + /** Specifies the alignment text for legend + * @Default {near} + */ + alignment?: string; + + /** Specifies the alignment text for legend + * @Default {0} + */ + columnCount?: number; + } + + export interface LeafItemSettings { + + /** Specifies the border brush color of the leaf item. + * @Default {white} + */ + borderBrush?: string; + + /** Specifies the border thickness of the leaf item. + * @Default {1} + */ + borderThickness?: number; + + /** Specifies the space between the leaf items. + * @Default {0} + */ + gap?: number; + + /** Specifies the label template of the leaf item. + * @Default {null} + */ + itemTemplate?: string; + + /** Specifies the label path of the leaf item. + * @Default {null} + */ + labelPath?: string; + + /** Specifies the position of the leaf labels. + * @Default {center} + */ + labelPosition?: ej.datavisualization.TreeMap.Position|string; + + /** Specifies the mode of label visibility + * @Default {visible} + */ + labelVisibilityMode?: ej.datavisualization.TreeMap.VisibilityMode|string; + + /** Shows or hides the label of the leaf item. + * @Default {false} + */ + showLabels?: boolean; + } + + export interface RangeColorMapping { + + /** Specifies the color value for rangeColorMapping. + * @Default {null} + */ + color?: string; + + /** specifies the gradient colors for th given range value + * @Default {[]} + */ + gradientColors?: any[]; + + /** Specifies the from value for rangeColorMapping. + * @Default {-1} + */ + from?: number; + + /** Specifies the legend label value for rangeColorMapping. + * @Default {null} + */ + legendLabel?: string; + + /** Specifies the to value for rangeColorMapping. + * @Default {-1} + */ + to?: number; + } + + export interface Level { + + /** specifies the group background + * @Default {null} + */ + groupBackground?: string; + + /** Specifies the group border color for tree map level. + * @Default {null} + */ + groupBorderColor?: string; + + /** Specifies the group border thickness for tree map level. + * @Default {1} + */ + groupBorderThickness?: number; + + /** Specifies the group gap for tree map level. + * @Default {1} + */ + groupGap?: number; + + /** Specifies the group padding for tree map level. + * @Default {4} + */ + groupPadding?: number; + + /** Specifies the group path for tree map level. + */ + groupPath?: string; + + /** Specifies the header height for tree map level. + * @Default {0} + */ + headerHeight?: number; + + /** Specifies the header template for tree map level. + * @Default {null} + */ + headerTemplate?: string; + + /** Specifies the mode of header visibility + * @Default {visible} + */ + headerVisibilityMode?: ej.datavisualization.TreeMap.VisibilityMode|string; + + /** Specifies the position of the labels. + * @Default {center} + */ + labelPosition?: ej.datavisualization.TreeMap.Position|string; + + /** Specifies the label template for tree map level. + * @Default {null} + */ + labelTemplate?: string; + + /** Specifies the mode of label visibility + * @Default {visible} + */ + labelVisibilityMode?: ej.datavisualization.TreeMap.VisibilityMode|string; + + /** Shows or hides the header for tree map level. + * @Default {false} + */ + showHeader?: boolean; + + /** Shows or hides the labels for tree map level. + * @Default {false} + */ + showLabels?: boolean; + } + } + namespace TreeMap { + enum DockPosition { + //specifies the top position + Top, + //specifies the bottom position + Bottom, + //specifies the bottom position + Right, + //specifies the left position + Left, + } + } + namespace TreeMap { + enum ItemsLayoutMode { + //specifies the squarified as layout type position + Squarified, + //specifies the sliceanddicehorizontal as layout type position + Sliceanddicehorizontal, + //specifies the sliceanddicevertical as layout type position + Sliceanddicevertical, + //specifies the sliceanddiceauto as layout type position + Sliceanddiceauto, + } + } + namespace TreeMap { + enum Position { + //specifies the none position + None, + //specifies the topleft position + Topleft, + //specifies the topcenter position + Topcenter, + //specifies the topright position + Topright, + //specifies the centerleft position + Centerleft, + //specifies the center position + Center, + //specifies the centerright position + Centerright, + //specifies the bottomleft position + Bottomleft, + //specifies the bottomcenter position + Bottomcenter, + //specifies the bottomright position + Bottomright, + } + } + namespace TreeMap { + enum VisibilityMode { + //specifies the visible mode + Top, + //specifies the hide on exceeded length mode + Hideonexceededlength, + } + } + namespace TreeMap { + enum selectionMode { + //specifies the default mode + Default, + //specifies the multiple mode + Multiple, + } + } + namespace TreeMap { + enum groupSelectionMode { + //specifies the default mode + Default, + //specifies the multiple mode + Multiple, + } + } + + class Diagram extends ej.Widget { + static fn: Diagram; + constructor(element: JQuery | Element, options?: Diagram.Model); + static Locale: any; + model: Diagram.Model; + defaults: Diagram.Model; + + /** Add nodes and connectors to diagram at runtime + * @param {any} a JSON to define a node/connector or an array of nodes and connector + * @returns {boolean} + */ + add(node: any): boolean; + + /** Add a label to a node at runtime + * @param {string} name of the node to which label will be added + * @param {any} JSON for the new label to be added + * @returns {void} + */ + addLabel(nodeName: string, newLabel: any): void; + + /** Add dynamic Lanes to swimlane at runtime + * @param {any} JSON for the new lane to be added + * @param {number} Index value to add the lane in swimlane + * @returns {void} + */ + addLane(lane: any, index: number): void; + + /** Add a phase to a swimlane at runtime + * @param {string} name of the swimlane to which the phase will be added + * @param {any} JSON object to define the phase to be added + * @returns {void} + */ + addPhase(name: string, options: any): void; + + /** Add a collection of ports to the node specified by name + * @param {string} name of the node to which the ports have to be added + * @param {any[]} a collection of ports to be added to the specified node + * @returns {void} + */ + addPorts(name: string, ports: any[]): void; + + /** Add the specified node to selection list + * @param {any} the node to be selected + * @param {boolean} to define whether to clear the existing selection or not + * @returns {void} + */ + addSelection(node: any, clearSelection?: boolean): void; + + /** Align the selected objects based on the reference object and direction + * @param {string} to specify the direction towards which the selected objects are to be aligned("left","right",top","bottom") + * @returns {void} + */ + align(direction: string): void; + + /** Bring the specified portion of the diagram content to the diagram viewport + * @param {any} the rectangular region that is to be brought into diagram viewport + * @returns {void} + */ + bringIntoView(rect: any): void; + + /** Bring the specified portion of the diagram content to the center of the diagram viewport + * @param {any} the rectangular region that is to be brought to the center of diagram viewport + * @returns {void} + */ + bringToCenter(rect: any): void; + + /** Visually move the selected object over all other intersected objects + * @returns {void} + */ + bringToFront(): void; + + /** Remove all the elements from diagram + * @returns {void} + */ + clear(): void; + + /** Clears the actions which is recorded to perform undo/redo operation in the diagram. + * @returns {void} + */ + clearHistory(): void; + + /** Remove the current selection in diagram + * @returns {void} + */ + clearSelection(): void; + + /** Copy the selected object to internal clipboard and get the copied object + * @returns {any} + */ + copy(): any; + + /** Cut the selected object from diagram to diagram internal clipboard + * @returns {void} + */ + cut(): void; + + /** Export the diagram as downloadable files or as data + * @param {Diagram.Options} options to export the desired region of diagram to the desired formats. + * @returns {string} + */ + exportDiagram(options?: Diagram.Options): string; + + /** Read a node/connector object by its name + * @param {string} name of the node/connector that is to be identified + * @returns {any} + */ + findNode(name: string): any; /** Fit the diagram content into diagram viewport * @param {ej.datavisualization.Diagram.FitMode} to set the mode of fit to command. @@ -59718,7325 +62159,7418 @@ declare namespace ej.datavisualization { * @param {any} to set the required margin * @returns {void} */ - fitToPage(mode?: ej.datavisualization.Diagram.FitMode, region?: ej.datavisualization.Diagram.Region, margin?: any): void; - - /** Group the selected nodes and connectors - * @returns {void} - */ - group(): void; - - /** Insert a label into a node's label collection at runtime - * @param {string} name of the node to which the label has to be inserted - * @param {any} JSON to define the new label - * @param {number} index to insert the label into the node - * @returns {void} - */ - insertLabel(name: string, label: any, index?: number): void; - - /** Refresh the diagram with the specified layout - * @returns {void} - */ - layout(): void; - - /** Load the diagram - * @param {any} JSON data to load the diagram - * @returns {void} - */ - load(data: any): void; - - /** Visually move the selected object over its closest intersected object - * @returns {void} - */ - moveForward(): void; - - /** Move the selected objects by either one pixel or by the pixels specified through argument - * @param {string} specifies the direction to move the selected objects ("left","right",top","bottom") - * @param {number} specifies the number of pixels by which the selected objects have to be moved - * @returns {void} - */ - nudge(direction: string, delta?: number): void; - - /** Paste the selected object from internal clipboard to diagram - * @param {any} object to be added to diagram - * @param {boolean} to define whether the specified object is to be renamed or not - * @returns {void} - */ - paste(object?: any, rename?: boolean): void; - - /** Print the diagram as image - * @returns {void} - */ - print(): void; - - /** Restore the last action that was reverted - * @returns {void} - */ - redo(): void; - - /** Refresh the diagram at runtime - * @returns {void} - */ - refresh(): void; - - /** Remove either the given node/connector or the selected element from diagram - * @param {any} the node/connector to be removed from diagram - * @returns {void} - */ - remove(node?: any): void; - - /** Remove a particular object from selection list - * @param {any} the node/connector to be removed from selection list - * @returns {void} - */ - removeSelection(node: any): void; - - /** Scale the selected objects to the height of the first selected object - * @returns {void} - */ - sameHeight(): void; - - /** Scale the selected objects to the size of the first selected object - * @returns {void} - */ - sameSize(): void; - - /** Scale the selected objects to the width of the first selected object - * @returns {void} - */ - sameWidth(): void; - - /** Returns the diagram as serialized JSON - * @returns {any} - */ - save(): any; - - /** Bring the node into view - * @param {any} the node/connector to be brought into view - * @returns {void} - */ - scrollToNode(node: any): void; - - /** Select all nodes and connector in diagram - * @returns {void} - */ - selectAll(): void; - - /** Visually move the selected object behind its closest intersected object - * @returns {void} - */ - sendBackward(): void; - - /** Visually move the selected object behind all other intersected objects - * @returns {void} - */ - sendToBack(): void; - - /** Update the horizontal space between the selected objects as equal and within the selection boundary - * @returns {void} - */ - spaceAcross(): void; - - /** Update the vertical space between the selected objects as equal and within the selection boundary - * @returns {void} - */ - spaceDown(): void; - - /** Move the specified label to edit mode - * @param {any} node/connector that contains the label to be edited - * @param {any} to be edited - * @returns {void} - */ - startLabelEdit(node: any, label: any): void; - - /** Reverse the last action that was performed - * @returns {void} - */ - undo(): void; - - /** Ungroup the selected group - * @returns {void} - */ - ungroup(): void; - - /** Update diagram at runtime - * @param {any} JSON to specify the diagram properties that have to be modified - * @returns {void} - */ - update(options: any): void; - - /** Update Connectors at runtime - * @param {string} name of the connector to be updated - * @param {any} JSON to specify the connector properties that have to be updated - * @returns {void} - */ - updateConnector(name: string, options: any): void; - - /** Update the given label at runtime - * @param {string} the name of node/connector which contains the label to be updated - * @param {any} the label to be modified - * @param {any} JSON to specify the label properties that have to be updated - * @returns {any} - */ - updateLabel(nodeName: string, label: any, options: any): any; - - /** Update nodes at runtime - * @param {string} name of the node that is to be updated - * @param {any} JSON to specify the properties of node that have to be updated - * @returns {void} - */ - updateNode(name: string, options: any): void; - - /** Update a port with its modified properties at runtime - * @param {string} the name of node which contains the port to be updated - * @param {any} the port to be updated - * @param {any} JSON to specify the properties of the port that have to be updated - * @returns {void} - */ - updatePort(nodeName: string, port: any, options: any): void; - - /** Update the specified node as selected object - * @param {string} name of the node to be updated as selected object - * @returns {void} - */ - updateSelectedObject(name: string): void; - - /** Update the selection at runtime - * @param {boolean} to specify whether to show the user handles or not - * @returns {void} - */ - updateSelection(showUserHandles?: boolean): void; - - /** Update user handles with respect to the given node - * @param {any} node/connector with respect to which, the user handles have to be updated - * @returns {void} - */ - updateUserHandles(node: any): void; - - /** Update the diagram viewport at runtime - * @returns {void} - */ - updateViewPort(): void; - - /** Upgrade the diagram from old version - * @param {any} to be upgraded - * @returns {void} - */ - upgrade(data: any): void; - - /** Used to zoomIn/zoomOut diagram - * @param {Diagram.Zoom} options to zoom the diagram(zoom factor, zoomIn/zoomOut) - * @returns {void} - */ - zoomTo(Zoom?: Diagram.Zoom): void; - } - export namespace Diagram { - - export interface Options { - - /** name of the file to be downloaded. - */ - fileName?: string; - - /** format of the exported file/data. - */ - format?: ej.datavisualization.Diagram.FileFormats; - - /** to set whether to export diagram as a file or as raw data. - */ - mode?: ej.datavisualization.Diagram.ExportModes; - - /** to set the region of the diagram to be exported. - */ - region?: ej.datavisualization.Diagram.Region; - - /** to export any custom region of diagram. - */ - bounds?: any; - - /** to set margin to the exported data. - */ - margin?: any; - - /** to resize the diagram content to fill its allocated space. - */ - stretch?: ej.datavisualization.Diagram.Stretch; - } - - export interface Zoom { - - /** Used to increase the zoom-in or zoom-out based on the zoom factor value. - */ - zoomFactor?: number; - - /** Used to zoom-in or zoom-out the diagram. - */ - zoomCommand?: ej.datavisualization.Diagram.ZoomCommand; - - /** Used to zoom-in or zoom-out the diagram based on the point. - */ - focusPoint?: ej.datavisualization.Diagram.ConnectorsSourcePoint; - } - - export interface Model { - - /** Defines the background color of diagram elements - * @Default {transparent} - */ - backgroundColor?: string; - - /** Defines the path of the background image of diagram elements - */ - backgroundImage?: string; - - /** Sets the direction of line bridges. - * @Default {ej.datavisualization.Diagram.BridgeDirection.Top} - */ - bridgeDirection?: ej.datavisualization.Diagram.BridgeDirection | string; - - /** Defines a set of custom commands and binds them with a set of desired key gestures. - */ - commandManager?: CommandManager; - - /** A collection of JSON objects where each object represents a connector - * @Default {[]} - */ - connectors?: Connector[]; - - /** Binds the custom JSON data with connector properties - * @Default {null} - */ - connectorTemplate?: any; - - /** Enables/Disables the default behaviors of the diagram. - * @Default {ej.datavisualization.Diagram.DiagramConstraints.All} - */ - constraints?: ej.datavisualization.Diagram.DiagramConstraints | string; - - /** An object to customize the context menu of diagram - */ - contextMenu?: ContextMenu; - - /** Configures the data source that is to be bound with diagram - */ - dataSourceSettings?: DataSourceSettings; - - /** Initializes the default values for nodes and connectors - * @Default {{}} - */ - defaultSettings?: DefaultSettings; - - /** Sets the type of JSON object to be drawn through drawing tool - * @Default {{}} - */ - drawType?: any; - - /** Enables or disables auto scroll in diagram - * @Default {true} - */ - enableAutoScroll?: boolean; - - /** Enables or disables diagram context menu - * @Default {true} - */ - enableContextMenu?: boolean; - - /** Specifies the height of the diagram - * @Default {null} - */ - height?: string; - - /** Customizes the undo redo functionality - */ - historyManager?: HistoryManager; - - /** Defines the type of the rendering mode of label. - * @Default {Html} - */ - labelRenderingMode?: ej.datavisualization.Diagram.LabelRenderingMode | string; - - /** Automatically arranges the nodes and connectors in a predefined manner. - */ - layout?: Layout; - - /** Defines the current culture of diagram - * @Default {en-US} - */ - locale?: string; + fitToPage(mode?: ej.datavisualization.Diagram.FitMode, region?: ej.datavisualization.Diagram.Region, margin?: any): void; + + /** Group the selected nodes and connectors + * @returns {void} + */ + group(): void; + + /** Insert a label into a node's label collection at runtime + * @param {string} name of the node to which the label has to be inserted + * @param {any} JSON to define the new label + * @param {number} index to insert the label into the node + * @returns {void} + */ + insertLabel(name: string, label: any, index?: number): void; + + /** Refresh the diagram with the specified layout + * @returns {void} + */ + layout(): void; + + /** Load the diagram + * @param {any} JSON data to load the diagram + * @returns {void} + */ + load(data: any): void; + + /** Visually move the selected object over its closest intersected object + * @returns {void} + */ + moveForward(): void; + + /** Move the selected objects by either one pixel or by the pixels specified through argument + * @param {string} specifies the direction to move the selected objects ("left","right",top","bottom") + * @param {number} specifies the number of pixels by which the selected objects have to be moved + * @returns {void} + */ + nudge(direction: string, delta?: number): void; + + /** Paste the selected object from internal clipboard to diagram + * @param {any} object to be added to diagram + * @param {boolean} to define whether the specified object is to be renamed or not + * @returns {void} + */ + paste(object?: any, rename?: boolean): void; + + /** Print the diagram as image + * @returns {void} + */ + print(): void; + + /** Restore the last action that was reverted + * @returns {void} + */ + redo(): void; + + /** Refresh the diagram at runtime + * @returns {void} + */ + refresh(): void; + + /** Remove either the given node/connector or the selected element from diagram + * @param {any} the node/connector to be removed from diagram + * @returns {void} + */ + remove(node?: any): void; + + /** Remove a particular object from selection list + * @param {any} the node/connector to be removed from selection list + * @returns {void} + */ + removeSelection(node: any): void; + + /** Scale the selected objects to the height of the first selected object + * @returns {void} + */ + sameHeight(): void; + + /** Scale the selected objects to the size of the first selected object + * @returns {void} + */ + sameSize(): void; + + /** Scale the selected objects to the width of the first selected object + * @returns {void} + */ + sameWidth(): void; + + /** Returns the diagram as serialized JSON + * @returns {any} + */ + save(): any; + + /** Bring the node into view + * @param {any} the node/connector to be brought into view + * @returns {void} + */ + scrollToNode(node: any): void; + + /** Select all nodes and connector in diagram + * @returns {void} + */ + selectAll(): void; + + /** Visually move the selected object behind its closest intersected object + * @returns {void} + */ + sendBackward(): void; + + /** Visually move the selected object behind all other intersected objects + * @returns {void} + */ + sendToBack(): void; + + /** Update the horizontal space between the selected objects as equal and within the selection boundary + * @returns {void} + */ + spaceAcross(): void; + + /** Update the vertical space between the selected objects as equal and within the selection boundary + * @returns {void} + */ + spaceDown(): void; + + /** Move the specified label to edit mode + * @param {any} node/connector that contains the label to be edited + * @param {any} to be edited + * @returns {void} + */ + startLabelEdit(node: any, label: any): void; + + /** Reverse the last action that was performed + * @returns {void} + */ + undo(): void; + + /** Ungroup the selected group + * @returns {void} + */ + ungroup(): void; + + /** Update diagram at runtime + * @param {any} JSON to specify the diagram properties that have to be modified + * @returns {void} + */ + update(options: any): void; + + /** Update Connectors at runtime + * @param {string} name of the connector to be updated + * @param {any} JSON to specify the connector properties that have to be updated + * @returns {void} + */ + updateConnector(name: string, options: any): void; + + /** Update the given label at runtime + * @param {string} the name of node/connector which contains the label to be updated + * @param {any} the label to be modified + * @param {any} JSON to specify the label properties that have to be updated + * @returns {any} + */ + updateLabel(nodeName: string, label: any, options: any): any; + + /** Update nodes at runtime + * @param {string} name of the node that is to be updated + * @param {any} JSON to specify the properties of node that have to be updated + * @returns {void} + */ + updateNode(name: string, options: any): void; + + /** Update a port with its modified properties at runtime + * @param {string} the name of node which contains the port to be updated + * @param {any} the port to be updated + * @param {any} JSON to specify the properties of the port that have to be updated + * @returns {void} + */ + updatePort(nodeName: string, port: any, options: any): void; + + /** Update the specified node as selected object + * @param {string} name of the node to be updated as selected object + * @returns {void} + */ + updateSelectedObject(name: string): void; + + /** Update the selection at runtime + * @param {boolean} to specify whether to show the user handles or not + * @returns {void} + */ + updateSelection(showUserHandles?: boolean): void; + + /** Update user handles with respect to the given node + * @param {any} node/connector with respect to which, the user handles have to be updated + * @returns {void} + */ + updateUserHandles(node: any): void; + + /** Update the diagram viewport at runtime + * @returns {void} + */ + updateViewPort(): void; + + /** Upgrade the diagram from old version + * @param {any} to be upgraded + * @returns {void} + */ + upgrade(data: any): void; + + /** Used to zoomIn/zoomOut diagram + * @param {Diagram.Zoom} options to zoom the diagram(zoom factor, zoomIn/zoomOut) + * @returns {void} + */ + zoomTo(Zoom?: Diagram.Zoom): void; + } + export namespace Diagram { + + export interface Options { + + /** name of the file to be downloaded. + */ + fileName?: string; + + /** format of the exported file/data. + */ + format?: ej.datavisualization.Diagram.FileFormats; + + /** to set whether to export diagram as a file or as raw data. + */ + mode?: ej.datavisualization.Diagram.ExportModes; + + /** to set the region of the diagram to be exported. + */ + region?: ej.datavisualization.Diagram.Region; + + /** to export any custom region of diagram. + */ + bounds?: any; + + /** to set margin to the exported data. + */ + margin?: any; + + /** to resize the diagram content to fill its allocated space. + */ + stretch?: ej.datavisualization.Diagram.Stretch; + } + + export interface Zoom { + + /** Used to increase the zoom-in or zoom-out based on the zoom factor value. + */ + zoomFactor?: number; + + /** Used to zoom-in or zoom-out the diagram. + */ + zoomCommand?: ej.datavisualization.Diagram.ZoomCommand; + + /** Used to zoom-in or zoom-out the diagram based on the point. + */ + focusPoint?: ej.datavisualization.Diagram.ConnectorsSourcePoint; + } + + export interface Model { + + /** Defines the background color of diagram elements + * @Default {transparent} + */ + backgroundColor?: string; + + /** Defines the path of the background image of diagram elements + */ + backgroundImage?: string; + + /** Sets the direction of line bridges. + * @Default {ej.datavisualization.Diagram.BridgeDirection.Top} + */ + bridgeDirection?: ej.datavisualization.Diagram.BridgeDirection|string; + + /** Defines a set of custom commands and binds them with a set of desired key gestures. + */ + commandManager?: CommandManager; + + /** A collection of JSON objects where each object represents a connector + * @Default {[]} + */ + connectors?: Connector[]; + + /** Binds the custom JSON data with connector properties + * @Default {null} + */ + connectorTemplate?: any; + + /** Enables/Disables the default behaviors of the diagram. + * @Default {ej.datavisualization.Diagram.DiagramConstraints.All} + */ + constraints?: ej.datavisualization.Diagram.DiagramConstraints|string; + + /** An object to customize the context menu of diagram + */ + contextMenu?: ContextMenu; + + /** Configures the data source that is to be bound with diagram + */ + dataSourceSettings?: DataSourceSettings; + + /** Initializes the default values for nodes and connectors + * @Default {{}} + */ + defaultSettings?: DefaultSettings; + + /** Sets the type of JSON object to be drawn through drawing tool + * @Default {{}} + */ + drawType?: any; + + /** Enables or disables auto scroll in diagram + * @Default {true} + */ + enableAutoScroll?: boolean; + + /** Enables or disables diagram context menu + * @Default {true} + */ + enableContextMenu?: boolean; + + /** Specifies the height of the diagram + * @Default {null} + */ + height?: string; + + /** Customizes the undo redo functionality + */ + historyManager?: HistoryManager; + + /** Defines the type of the rendering mode of label. + * @Default {Html} + */ + labelRenderingMode?: ej.datavisualization.Diagram.LabelRenderingMode|string; + + /** Automatically arranges the nodes and connectors in a predefined manner. + */ + layout?: Layout; + + /** Defines the current culture of diagram + * @Default {en-US} + */ + locale?: string; + + /** Array of JSON objects where each object represents a node + * @Default {[]} + */ + nodes?: Node[]; + + /** Binds the custom JSON data with node properties + * @Default {null} + */ + nodeTemplate?: any; + + /** Defines the size and appearance of diagram page + */ + pageSettings?: PageSettings; + + /** Defines the zoom value, zoom factor, scroll status and view port size of the diagram + */ + scrollSettings?: ScrollSettings; + + /** Defines the size and position of selected items and defines the appearance of selector + */ + selectedItems?: SelectedItems; + + /** Enables or disables tooltip of diagram + * @Default {true} + */ + showTooltip?: boolean; + + /** Defines the gridlines and defines how and when the objects have to be snapped + */ + snapSettings?: SnapSettings; + + /** Enables/Disables the interactive behaviors of diagram. + * @Default {ej.datavisualization.Diagram.Tool.All} + */ + tool?: ej.datavisualization.Diagram.Tool|string; + + /** An object that defines the description, appearance and alignments of tooltips + * @Default {null} + */ + tooltip?: Tooltip; + + /** Specifies the width of the diagram + * @Default {null} + */ + width?: string; + + /** Sets the factor by which we can zoom in or zoom out + * @Default {0.2} + */ + zoomFactor?: number; + + /** Triggers When auto scroll is changed + */ + autoScrollChange?(e: AutoScrollChangeEventArgs): void; + + /** Triggers when a node, connector or diagram is clicked + */ + click?(e: ClickEventArgs): void; + + /** Triggers when the connection is changed + */ + connectionChange?(e: ConnectionChangeEventArgs): void; + + /** Triggers when the connector collection is changed + */ + connectorCollectionChange?(e: ConnectorCollectionChangeEventArgs): void; + + /** Triggers when the connectors' source point is changed + */ + connectorSourceChange?(e: ConnectorSourceChangeEventArgs): void; + + /** Triggers when the connectors' target point is changed + */ + connectorTargetChange?(e: ConnectorTargetChangeEventArgs): void; + + /** Triggers before opening the context menu + */ + contextMenuBeforeOpen?(e: ContextMenuBeforeOpenEventArgs): void; + + /** Triggers when a context menu item is clicked + */ + contextMenuClick?(e: ContextMenuClickEventArgs): void; + + /** Triggers when a node, connector or diagram model is clicked twice + */ + doubleClick?(e: DoubleClickEventArgs): void; + + /** Triggers while dragging the elements in diagram + */ + drag?(e: DragEventArgs): void; + + /** Triggers when a symbol is dragged into diagram from symbol palette + */ + dragEnter?(e: DragEnterEventArgs): void; + + /** Triggers when a symbol is dragged outside of the diagram. + */ + dragLeave?(e: DragLeaveEventArgs): void; + + /** Triggers when a symbol is dragged over diagram + */ + dragOver?(e: DragOverEventArgs): void; + + /** Triggers when a symbol is dragged and dropped from symbol palette to drawing area + */ + drop?(e: DropEventArgs): void; + + /** Triggers when editor got focus at the time of node's label or text node editing. + */ + editorFocusChange?(e: EditorFocusChangeEventArgs): void; + + /** Triggers when a child is added to or removed from a group + */ + groupChange?(e: GroupChangeEventArgs): void; + + /** Triggers when a change is reverted or restored(undo/redo) + */ + historyChange?(e: HistoryChangeEventArgs): void; + + /** Triggers when a diagram element is clicked + */ + itemClick?(e: ItemClickEventArgs): void; + + /** Triggers when mouse enters a node/connector + */ + mouseEnter?(e: MouseEnterEventArgs): void; - /** Array of JSON objects where each object represents a node - * @Default {[]} - */ - nodes?: Node[]; + /** Triggers when mouse leaves node/connector + */ + mouseLeave?(e: MouseLeaveEventArgs): void; - /** Binds the custom JSON data with node properties - * @Default {null} - */ - nodeTemplate?: any; + /** Triggers when mouse hovers over a node/connector + */ + mouseOver?(e: MouseOverEventArgs): void; - /** Defines the size and appearance of diagram page - */ - pageSettings?: PageSettings; + /** Triggers when node collection is changed + */ + nodeCollectionChange?(e: NodeCollectionChangeEventArgs): void; - /** Defines the zoom value, zoom factor, scroll status and view port size of the diagram - */ - scrollSettings?: ScrollSettings; + /** Triggers when the node properties(x, y,width and height alone) are changed using nudge commands or updateNode API. + */ + propertyChange?(e: PropertyChangeEventArgs): void; - /** Defines the size and position of selected items and defines the appearance of selector - */ - selectedItems?: SelectedItems; + /** Triggers when the diagram elements are rotated + */ + rotationChange?(e: RotationChangeEventArgs): void; - /** Enables or disables tooltip of diagram - * @Default {true} - */ - showTooltip?: boolean; + /** Triggers when the diagram is zoomed or panned + */ + scrollChange?(e: ScrollChangeEventArgs): void; - /** Defines the gridlines and defines how and when the objects have to be snapped - */ - snapSettings?: SnapSettings; + /** Triggers when a connector segment is edited + */ + segmentChange?(e: SegmentChangeEventArgs): void; - /** Enables/Disables the interactive behaviors of diagram. - * @Default {ej.datavisualization.Diagram.Tool.All} - */ - tool?: ej.datavisualization.Diagram.Tool | string; + /** Triggers when the selection is changed in diagram + */ + selectionChange?(e: SelectionChangeEventArgs): void; - /** An object that defines the description, appearance and alignments of tooltips - * @Default {null} - */ - tooltip?: Tooltip; + /** Triggers when a node is resized + */ + sizeChange?(e: SizeChangeEventArgs): void; - /** Specifies the width of the diagram - * @Default {null} - */ - width?: string; + /** Triggers when label editing is ended + */ + textChange?(e: TextChangeEventArgs): void; - /** Sets the factor by which we can zoom in or zoom out - * @Default {0.2} - */ - zoomFactor?: number; + /** Triggered when the diagram is rendered completely. + */ + create?(e: CreateEventArgs): void; + } - /** Triggers When auto scroll is changed */ - autoScrollChange?(e: AutoScrollChangeEventArgs): void; + export interface AutoScrollChangeEventArgs { - /** Triggers when a node, connector or diagram is clicked */ - click?(e: ClickEventArgs): void; + /** Returns the delay between subsequent auto scrolls + */ + delay?: string; - /** Triggers when the connection is changed */ - connectionChange?(e: ConnectionChangeEventArgs): void; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** Triggers when the connector collection is changed */ - connectorCollectionChange?(e: ConnectorCollectionChangeEventArgs): void; + export interface ClickEventArgs { - /** Triggers when the connectors' source point is changed */ - connectorSourceChange?(e: ConnectorSourceChangeEventArgs): void; + /** parameter returns the clicked node, connector or diagram + */ + element?: any; - /** Triggers when the connectors' target point is changed */ - connectorTargetChange?(e: ConnectorTargetChangeEventArgs): void; + /** parameter returns the object that is actually clicked + */ + actualObject?: number; - /** Triggers before opening the context menu */ - contextMenuBeforeOpen?(e: ContextMenuBeforeOpenEventArgs): void; + /** parameter returns the horizontal coordinate of the mouse pointer, relative to the diagram + */ + offsetX?: number; - /** Triggers when a context menu item is clicked */ - contextMenuClick?(e: ContextMenuClickEventArgs): void; + /** parameter returns the vertical coordinate of the mouse pointer, relative to the diagram + */ + offsetY?: number; - /** Triggers when a node, connector or diagram model is clicked twice */ - doubleClick?(e: DoubleClickEventArgs): void; + /** parameter returns the count of how many times the mouse button is pressed + */ + count?: number; - /** Triggers while dragging the elements in diagram */ - drag?(e: DragEventArgs): void; + /** parameter returns the event triggered + */ + event?: any; - /** Triggers when a symbol is dragged into diagram from symbol palette */ - dragEnter?(e: DragEnterEventArgs): void; + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** Triggers when a symbol is dragged outside of the diagram. */ - dragLeave?(e: DragLeaveEventArgs): void; + /** parameter to specify whether or not to cancel the event + */ + cancel?: boolean; + } - /** Triggers when a symbol is dragged over diagram */ - dragOver?(e: DragOverEventArgs): void; + export interface ConnectionChangeEventArgs { - /** Triggers when a symbol is dragged and dropped from symbol palette to drawing area */ - drop?(e: DropEventArgs): void; + /** parameter returns the connection that is changed between nodes, ports or points + */ + element?: any; - /** Triggers when editor got focus at the time of node's label or text node editing. */ - editorFocusChange?(e: EditorFocusChangeEventArgs): void; + /** parameter returns the new source node or target node of the connector + */ + connection?: string; - /** Triggers when a child is added to or removed from a group */ - groupChange?(e: GroupChangeEventArgs): void; + /** parameter returns the new source port or target port of the connector + */ + port?: any; - /** Triggers when a change is reverted or restored(undo/redo) */ - historyChange?(e: HistoryChangeEventArgs): void; + /** parameter defines whether to cancel the change or not + */ + cancel?: boolean; - /** Triggers when a diagram element is clicked */ - itemClick?(e: ItemClickEventArgs): void; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** Triggers when mouse enters a node/connector */ - mouseEnter?(e: MouseEnterEventArgs): void; + export interface ConnectorCollectionChangeEventArgs { - /** Triggers when mouse leaves node/connector */ - mouseLeave?(e: MouseLeaveEventArgs): void; + /** parameter returns whether the connector is inserted or removed + */ + changeType?: string; - /** Triggers when mouse hovers over a node/connector */ - mouseOver?(e: MouseOverEventArgs): void; + /** parameter returns the connector that is to be added or deleted + */ + element?: any; - /** Triggers when node collection is changed */ - nodeCollectionChange?(e: NodeCollectionChangeEventArgs): void; + /** parameter defines whether to cancel the collection change or not + */ + cancel?: boolean; - /** Triggers when the node properties(x, y,width and height alone) are changed using nudge commands or updateNode API. */ - propertyChange?(e: PropertyChangeEventArgs): void; + /** triggers before and after adding the connector in the diagram which can be differentiated through `state` argument. We can cancel the event only before adding the connector. + */ + state?: string; - /** Triggers when the diagram elements are rotated */ - rotationChange?(e: RotationChangeEventArgs): void; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** Triggers when the diagram is zoomed or panned */ - scrollChange?(e: ScrollChangeEventArgs): void; + export interface ConnectorSourceChangeEventArgs { - /** Triggers when a connector segment is edited */ - segmentChange?(e: SegmentChangeEventArgs): void; + /** returns the connector, the source point of which is being dragged + */ + element?: any; - /** Triggers when the selection is changed in diagram */ - selectionChange?(e: SelectionChangeEventArgs): void; + /** returns the source node of the element + */ + node?: any; - /** Triggers when a node is resized */ - sizeChange?(e: SizeChangeEventArgs): void; + /** returns the source point of the element + */ + point?: any; - /** Triggers when label editing is ended */ - textChange?(e: TextChangeEventArgs): void; + /** returns the source port of the element + */ + port?: any; - /** Triggered when the diagram is rendered completely. */ - create?(e: CreateEventArgs): void; - } + /** returns the state of connection end point dragging(starting, dragging, completed) + */ + dragState?: string; - export interface AutoScrollChangeEventArgs { + /** parameter defines whether to cancel the change or not + */ + cancel?: boolean; - /** Returns the delay between subsequent auto scrolls - */ - delay?: string; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + export interface ConnectorTargetChangeEventArgs { - export interface ClickEventArgs { + /** parameter returns the connector, the target point of which is being dragged + */ + element?: any; - /** parameter returns the clicked node, connector or diagram - */ - element?: any; + /** returns the target node of the element + */ + node?: any; - /** parameter returns the object that is actually clicked - */ - actualObject?: number; + /** returns the target point of the element + */ + point?: any; - /** parameter returns the horizontal coordinate of the mouse pointer, relative to the diagram - */ - offsetX?: number; + /** returns the target port of the element + */ + port?: any; - /** parameter returns the vertical coordinate of the mouse pointer, relative to the diagram - */ - offsetY?: number; + /** returns the state of connection end point dragging(starting, dragging, completed) + */ + dragState?: string; - /** parameter returns the count of how many times the mouse button is pressed - */ - count?: number; + /** parameter defines whether to cancel the change or not + */ + cancel?: boolean; - /** parameter returns the actual click event arguments that explains which button is clicked - */ - event?: any; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the id of the diagram - */ - diagramId?: string; + export interface ContextMenuBeforeOpenEventArgs { - /** parameter to specify whether or not to cancel the event - */ - cancel?: boolean; - } + /** parameter returns the diagram object + */ + diagram?: any; - export interface ConnectionChangeEventArgs { + /** parameter returns the actual arguments from context menu + */ + contextmenu?: any; - /** parameter returns the connection that is changed between nodes, ports or points - */ - element?: any; + /** parameter returns the object that was clicked + */ + target?: any; - /** parameter returns the new source node or target node of the connector - */ - connection?: string; + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** parameter returns the new source port or target port of the connector - */ - port?: any; + /** parameter returns whether or not to cancel the dragOver event + */ + cancel?: boolean; - /** parameter defines whether to cancel the change or not - */ - cancel?: boolean; + /** parameter returns the actual click event arguments that explains which button is clicked + */ + model?: any; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter returns the type of the event triggered + */ + type?: string; + } - export interface ConnectorCollectionChangeEventArgs { + export interface ContextMenuClickEventArgs { - /** parameter returns whether the connector is inserted or removed - */ - changeType?: string; + /** parameter returns the id of the selected context menu item + */ + id?: string; - /** parameter returns the connector that is to be added or deleted - */ - element?: any; + /** parameter returns the text of the selected context menu item + */ + text?: string; - /** parameter defines whether to cancel the collection change or not - */ - cancel?: boolean; + /** parameter returns the parent id of the selected context menu item + */ + parentId?: string; - /** triggers before and after adding the connector in the diagram which can be differentiated through `state` argument. We can cancel the event only before adding the connector. - */ - state?: string; + /** parameter returns the parent text of the selected context menu item + */ + parentText?: string; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter returns the object that was clicked + */ + target?: any; - export interface ConnectorSourceChangeEventArgs { + /** parameter defines whether to execute the click event or not + */ + canExecute?: boolean; - /** returns the connector, the source point of which is being dragged - */ - element?: any; + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** returns the source node of the element - */ - node?: any; + /** parameter to specify whether or not to cancel the event + */ + cancel?: boolean; - /** returns the source point of the element - */ - point?: any; + /** parameter returns the elementof the object that was clicked + */ + element?: any; - /** returns the source port of the element - */ - port?: any; + /** parameter returns the object that is selected + */ + selectedItem?: any; - /** returns the state of connection end point dragging(starting, dragging, completed) - */ - dragState?: string; + /** parameter returns the model of the diagram + */ + events?: any; + } - /** parameter defines whether to cancel the change or not - */ - cancel?: boolean; + export interface DoubleClickEventArgs { - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter returns the object that is actually clicked + */ + actualObject?: any; - export interface ConnectorTargetChangeEventArgs { + /** parameter returns the selected object + */ + element?: any; - /** parameter returns the connector, the target point of which is being dragged - */ - element?: any; + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** returns the target node of the element - */ - node?: any; + /** parameter to specify whether or not to cancel the event + */ + cancel?: boolean; + } - /** returns the target point of the element - */ - point?: any; + export interface DragEventArgs { - /** returns the target port of the element - */ - port?: any; + /** parameter returns the node or connector that is being dragged + */ + element?: any; - /** returns the state of connection end point dragging(starting, dragging, completed) - */ - dragState?: string; + /** parameter returns the previous position of the node/connector + */ + oldValue?: any; - /** parameter defines whether to cancel the change or not - */ - cancel?: boolean; + /** parameter returns the new position of the node/connector + */ + newValue?: any; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter returns the state of drag event (Starting, dragging, completed) + */ + dragState?: string; - export interface ContextMenuBeforeOpenEventArgs { + /** parameter returns whether or not to cancel the drag event + */ + cancel?: boolean; - /** parameter returns the diagram object - */ - diagram?: any; + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** parameter returns the actual arguments from context menu - */ - contextmenu?: any; + /** parameter returns the offset of the selecteditems + */ + offset?: any; + } - /** parameter returns the object that was clicked - */ - target?: any; + export interface DragEnterEventArgs { - /** parameter returns the id of the diagram - */ - diagramId?: string; - /** parameter returns whether or not to cancel the dragOver event - */ - cancel?: boolean; + /** parameter returns the node or connector that is dragged into diagram + */ + element?: any; - /** parameter returns the actual click event arguments that explains which button is clicked - */ - model?: any; + /** parameter returns whether to add or remove the symbol from diagram + */ + cancel?: boolean; - /** parameter returns the type of the event triggered - */ - type?: string; - } + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - export interface ContextMenuClickEventArgs { + export interface DragLeaveEventArgs { - /** parameter returns the id of the selected context menu item - */ - id?: string; + /** parameter returns the node or connector that is dragged outside of the diagram + */ + element?: any; - /** parameter returns the text of the selected context menu item - */ - text?: string; + /** parameter returns whether or not to cancel the dragOver event + */ + cancel?: boolean; - /** parameter returns the parent id of the selected context menu item - */ - parentId?: string; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the parent text of the selected context menu item - */ - parentText?: string; + export interface DragOverEventArgs { - /** parameter returns the object that was clicked - */ - target?: any; + /** parameter returns the node or connector that is dragged over diagram + */ + element?: any; - /** parameter defines whether to execute the click event or not - */ - canExecute?: boolean; + /** parameter defines whether the symbol can be dropped at the current mouse position + */ + allowDrop?: boolean; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** parameter returns the node/connector over which the symbol is dragged + */ + target?: any; - /** parameter to specify whether or not to cancel the event - */ - cancel?: boolean; + /** parameter returns the previous position of the node/connector + */ + oldValue?: any; - /** parameter returns the elementof the object that was clicked - */ - element?: any; + /** parameter returns the new position of the node/connector + */ + newValue?: any; - /** parameter returns the object that is selected - */ - selectedItem?: any; + /** parameter returns whether or not to cancel the dragOver event + */ + cancel?: boolean; - /** parameter returns the model of the diagram - */ - events?: any; - } + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - export interface DoubleClickEventArgs { + export interface DropEventArgs { - /** parameter returns the object that is actually clicked - */ - actualObject?: any; + /** parameter returns node or connector that is being dropped + */ + element?: any; - /** parameter returns the selected object - */ - element?: any; + /** parameter returns whether or not to cancel the drop event + */ + cancel?: boolean; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** parameter returns the object from where the element is dragged + */ + source?: any; - /** parameter to specify whether or not to cancel the event - */ - cancel?: boolean; - } + /** parameter returns the object over which the object will be dropped + */ + target?: any; - export interface DragEventArgs { + /** parameter returns the enum which defines the type of the source + */ + objectType?: string; - /** parameter returns the node or connector that is being dragged - */ - element?: any; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the previous position of the node/connector - */ - oldValue?: any; + export interface EditorFocusChangeEventArgs { - /** parameter returns the new position of the node/connector - */ - newValue?: any; + /** Returns the diagram model. + */ + model?: any; - /** parameter returns the state of drag event (Starting, dragging, completed) - */ - dragState?: string; + /** parameter returns the editor element + */ + event?: any; - /** parameter returns whether or not to cancel the drag event - */ - cancel?: boolean; + /** Returns the name of the event + */ + type?: string; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the offset of the selecteditems - */ - offset?: any; - } + export interface GroupChangeEventArgs { - export interface DragEnterEventArgs { + /** parameter returns the object that is added to/removed from a group + */ + element?: any; - /** parameter returns the node or connector that is dragged into diagram - */ - element?: any; + /** parameter returns the old parent group(if any) of the object + */ + oldParent?: any; - /** parameter returns whether to add or remove the symbol from diagram - */ - cancel?: boolean; + /** parameter returns the new parent group(if any) of the object + */ + newParent?: any; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter returns the cause of group change("group", unGroup") + */ + cause?: string; - export interface DragLeaveEventArgs { + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the node or connector that is dragged outside of the diagram - */ - element?: any; + export interface HistoryChangeEventArgs { - /** parameter returns whether or not to cancel the dragOver event - */ - cancel?: boolean; + /** An array of objects, where each object represents the changes made in last undo/redo. To explore how the changes are defined, refer [Undo Redo Changes](#undo-redo-changes) + */ + changes?: any[]; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** A collection of objects that are changed in the last undo/redo + */ + Source?: any[]; - export interface DragOverEventArgs { + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** parameter returns the node or connector that is dragged over diagram - */ - element?: any; + /** parameter to specify whether or not to cancel the event + */ + cancel?: boolean; - /** parameter defines whether the symbol can be dropped at the current mouse position - */ - allowDrop?: boolean; + /** parameter returns the model of the diagram + */ + cause?: boolean; + } - /** parameter returns the node/connector over which the symbol is dragged - */ - target?: any; + export interface ItemClickEventArgs { - /** parameter returns the previous position of the node/connector - */ - oldValue?: any; + /** parameter returns the object that was actually clicked + */ + actualObject?: any; - /** parameter returns the new position of the node/connector - */ - newValue?: any; + /** parameter returns the object that is selected + */ + selectedObject?: any; - /** parameter returns whether or not to cancel the dragOver event - */ - cancel?: boolean; + /** parameter returns whether or not to cancel the drop event + */ + cancel?: boolean; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter returns the model of the diagram + */ + event?: any; - export interface DropEventArgs { + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns node or connector that is being dropped - */ - element?: any; + export interface MouseEnterEventArgs { - /** parameter returns whether or not to cancel the drop event - */ - cancel?: boolean; + /** parameter returns the target node or connector + */ + element?: any; - /** parameter returns the object from where the element is dragged - */ - source?: any; + /** parameter returns the object from where the selected object is dragged + */ + source?: any; - /** parameter returns the object over which the object will be dropped - */ - target?: any; + /** parameter returns the target object over which the selected object is dragged + */ + target?: any; - /** parameter returns the enum which defines the type of the source - */ - objectType?: string; + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter returns whether or not to cancel the dragOver event + */ + cancel?: boolean; + } - export interface EditorFocusChangeEventArgs { - /** parameter to specify whether or not to cancel the event - */ - cancel?: boolean; - } + export interface MouseLeaveEventArgs { - export interface GroupChangeEventArgs { + /** parameter returns the target node or connector + */ + element?: any; - /** parameter returns the object that is added to/removed from a group - */ - element?: any; + /** parameter returns the object from where the selected object is dragged + */ + source?: any; - /** parameter returns the old parent group(if any) of the object - */ - oldParent?: any; + /** parameter returns the target object over which the selected object is dragged + */ + target?: any; - /** parameter returns the new parent group(if any) of the object - */ - newParent?: any; + /** parameter returns whether or not to cancel the dragOver event + */ + cancel?: boolean; - /** parameter returns the cause of group change("group", unGroup") - */ - cause?: string; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + export interface MouseOverEventArgs { - export interface HistoryChangeEventArgs { + /** parameter returns the target node or connector + */ + element?: any; - /** An array of objects, where each object represents the changes made in last undo/redo. To explore how the changes are defined, refer [Undo Redo Changes](#undo-redo-changes) - */ - changes?: any[]; + /** parameter returns the object from where the element is dragged + */ + source?: any; - /** A collection of objects that are changed in the last undo/redo - */ - Source?: any[]; + /** parameter returns the object over which the element is being dragged. + */ + target?: any; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** parameter returns whether or not to cancel the dragOver event + */ + cancel?: boolean; - /** parameter to specify whether or not to cancel the event - */ - cancel?: boolean; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the model of the diagram - */ - cause?: boolean; - } + export interface NodeCollectionChangeEventArgs { - export interface ItemClickEventArgs { + /** parameter returns whether the node is to be added or removed + */ + changeType?: string; - /** parameter returns the object that was actually clicked - */ - actualObject?: any; + /** parameter returns the node which needs to be added or deleted + */ + element?: any; - /** parameter returns the object that is selected - */ - selectedObject?: any; + /** parameter defines whether to cancel the collection change or not + */ + cancel?: boolean; - /** parameter returns whether or not to cancel the drop event - */ - cancel?: boolean; + /** triggers before and after adding the node in the diagram which can be differentiated through `state` argument. We can cancel the event only before adding the node + */ + state?: string; - /** parameter returns the model of the diagram - */ - event?: any; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + export interface PropertyChangeEventArgs { - export interface MouseEnterEventArgs { + /** parameter returns the selected element + */ + element?: any; - /** parameter returns the target node or connector - */ - element?: any; + /** parameter returns the action is nudge or not + */ + cause?: string; - /** parameter returns the object from where the selected object is dragged - */ - source?: any; + /** parameter returns the new value of the node property that is being changed + */ + newValue?: any; - /** parameter returns the target object over which the selected object is dragged - */ - target?: any; + /** parameter returns the old value of the property that is being changed + */ + oldValue?: any; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** parameter returns the name of the property that is changed + */ + propertyName?: string; - /** parameter returns whether or not to cancel the dragOver event - */ - cancel?: boolean; - } + /** parameter returns the id of the diagram + */ + diagramId?: string; - export interface MouseLeaveEventArgs { + /** parameter defines whether to cancel the property change or not + */ + cancel?: boolean; + } - /** parameter returns the target node or connector - */ - element?: any; + export interface RotationChangeEventArgs { - /** parameter returns the object from where the selected object is dragged - */ - source?: any; + /** parameter returns the node that is rotated + */ + element?: any; - /** parameter returns the target object over which the selected object is dragged - */ - target?: any; + /** parameter returns the previous rotation angle + */ + oldValue?: any; - /** parameter returns whether or not to cancel the dragOver event - */ - cancel?: boolean; + /** parameter returns the new rotation angle + */ + newValue?: any; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter to specify whether or not to cancel the event + */ + cancel?: boolean; - export interface MouseOverEventArgs { + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** parameter returns the target node or connector - */ - element?: any; + /** parameter returns the actual click event arguments that explains which button is clicked + */ + cause?: string; + } - /** parameter returns the object from where the element is dragged - */ - source?: any; + export interface ScrollChangeEventArgs { - /** parameter returns the object over which the element is being dragged. - */ - target?: any; + /** Parameter returns the new zoom value, horizontal and vertical scroll offsets. + */ + newValues?: any; - /** parameter returns whether or not to cancel the dragOver event - */ - cancel?: boolean; + /** parameter returns the previous zoom value, horizontal and vertical scroll offsets. + */ + oldValues?: any; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter returns whether or not to cancel the dragOver event + */ + cancel?: boolean; - export interface NodeCollectionChangeEventArgs { + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** parameter returns whether the node is to be added or removed - */ - changeType?: string; + /** Parameter returns the new zoom value, horizontal and vertical scroll offsets. + */ + cause?: string; + } - /** parameter returns the node which needs to be added or deleted - */ - element?: any; + export interface SegmentChangeEventArgs { - /** parameter defines whether to cancel the collection change or not - */ - cancel?: boolean; + /** Parameter returns the connector that is being edited + */ + element?: any; - /** triggers before and after adding the node in the diagram which can be differentiated through `state` argument. We can cancel the event only before adding the node - */ - state?: string; + /** parameter returns the state of editing (starting, dragging, completed) + */ + dragState?: string; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter returns the current mouse position + */ + point?: any; - export interface PropertyChangeEventArgs { + /** parameter to specify whether or not to cancel the event + */ + cancel?: boolean; - /** parameter returns the selected element - */ - element?: any; + /** parameter returns the id of the diagram + */ + diagramId?: string; + } - /** parameter returns the action is nudge or not - */ - cause?: string; + export interface SelectionChangeEventArgs { - /** parameter returns the new value of the node property that is being changed - */ - newValue?: any; + /** parameter returns whether the item is selected or removed selection + */ + changeType?: string; - /** parameter returns the old value of the property that is being changed - */ - oldValue?: any; + /** parameter returns the item which is selected or to be selected + */ + element?: any; - /** parameter returns the name of the property that is changed - */ - propertyName?: string; + /** parameter returns the collection of nodes and connectors that have to be removed from selection list + */ + oldItems?: any[]; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** parameter returns the collection of nodes and connectors that have to be added to selection list + */ + newItems?: any[]; - /** parameter defines whether to cancel the property change or not - */ - cancel?: boolean; - } + /** parameter returns the collection of nodes and connectors that will be selected after selection change + */ + selectedItems?: any[]; - export interface RotationChangeEventArgs { + /** parameter to specify whether or not to cancel the selection change event + */ + cancel?: boolean; - /** parameter returns the node that is rotated - */ - element?: any; + /** triggers before and after adding the selection to the object in the diagram which can be differentiated through `state` argument. We can cancel the event only before the selection + * of the object. + */ + state?: string; - /** parameter returns the previous rotation angle - */ - oldValue?: any; + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** parameter returns the new rotation angle - */ - newValue?: any; + /** parameter returns the actual cause of the event + */ + cause?: string; + } - /** parameter to specify whether or not to cancel the event - */ - cancel?: boolean; + export interface SizeChangeEventArgs { - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** parameter returns node that was resized + */ + element?: any; - /** parameter returns the actual click event arguments that explains which button is clicked - */ - cause?: string; - } + /** parameter to cancel the size change + */ + cancel?: boolean; - export interface ScrollChangeEventArgs { + /** parameter returns the new width, height, offsetX and offsetY values of the element that is being resized + */ + newValue?: any; - /** Parameter returns the new zoom value, horizontal and vertical scroll offsets. - */ - newValues?: any; + /** parameter returns the previous width,height,offsetX and offsetY values of the element that is being resized + */ + oldValue?: any; - /** parameter returns the previous zoom value, horizontal and vertical scroll offsets. - */ - oldValues?: any; + /** parameter returns the state of resizing(starting,resizing,completed) + */ + resizeState?: string; - /** parameter returns whether or not to cancel the dragOver event - */ - cancel?: boolean; + /** parameter returns the difference between new and old value + */ + offset?: any; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** Parameter returns the new zoom value, horizontal and vertical scroll offsets. - */ - cause?: string; - } + /** parameter returns the direction of the node is resized + */ + direction?: string; + } - export interface SegmentChangeEventArgs { + export interface TextChangeEventArgs { - /** Parameter returns the connector that is being edited - */ - element?: any; + /** parameter returns the node that contains the text being edited + */ + element?: any; - /** parameter returns the state of editing (starting, dragging, completed) - */ - dragState?: string; + /** parameter returns the new text + */ + value?: string; - /** parameter returns the current mouse position - */ - point?: any; + /** parameter returns the keyCode of the key entered + */ + keyCode?: string; - /** parameter to specify whether or not to cancel the event - */ - cancel?: boolean; + /** parameter returns the id of the diagram + */ + diagramId?: string; - /** parameter returns the id of the diagram - */ - diagramId?: string; - } + /** parameter to specify whether or not to cancel the event + */ + cancel?: boolean; + } - export interface SelectionChangeEventArgs { + export interface CreateEventArgs { - /** parameter returns whether the item is selected or removed selection - */ - changeType?: string; + /** Returns the diagram model. + */ + model?: any; + + /** Returns the name of the event + */ + type?: string; + + /** parameter returns the id of the diagram + */ + diagramId?: string; + } + + export interface BackgroundImage { + + /** Defines how to align the background image over the diagram area. + * @Default {ej.datavisualization.Diagram.ImageAlignment.XMidYMid} + */ + alignment?: ej.datavisualization.Diagram.ImageAlignment|string; + } + + export interface CommandManagerCommandsGesture { + + /** Sets the key value, on recognition of which the command will be executed. + * @Default {ej.datavisualization.Diagram.Keys.None} + */ + key?: ej.datavisualization.Diagram.Keys|string; + + /** Sets a combination of key modifiers, on recognition of which the command will be executed. + * @Default {ej.datavisualization.Diagram.KeyModifiers.None} + */ + keyModifiers?: ej.datavisualization.Diagram.KeyModifiers|string; + } + + export interface CommandManagerCommands { + + /** A method that defines whether the command is executable at the moment or not. + */ + canExecute?: '() => void'; + + /** A method that defines what to be executed when the key combination is recognized. + */ + execute?: '() => void'; + + /** Defines a combination of keys and key modifiers, on recognition of which the command will be executed + */ + gesture?: CommandManagerCommandsGesture; + + /** Defines any additional parameters that are required at runtime + * @Default {null} + */ + parameter?: any; + } + + export interface CommandManager { + + /** An object that maps a set of command names with the corresponding command objects + * @Default {{}} + */ + commands?: CommandManagerCommands; + } + + export interface ConnectorsLabelsMargin { + + /** To set the margin of the label in right direction + * @Default {0} + */ + right?: number; + + /** To set the margin of the label in left direction + * @Default {0} + */ + left?: number; + + /** To set the margin of the label in top direction + * @Default {0} + */ + top?: number; + + /** To set the margin of the label in bottom direction + * @Default {0} + */ + bottom?: number; + } + + export interface ConnectorsLabel { + + /** Defines how the label should be aligned with respect to the segment + * @Default {ej.datavisualization.Diagram.Alignment.Center} + */ + alignment?: ej.datavisualization.Diagram.Alignment|string; + + /** Enables/disables the bold style + * @Default {false} + */ + bold?: boolean; + + /** Sets the border color of the label + * @Default {transparent} + */ + borderColor?: string; + + /** Sets the border width of the label + * @Default {0} + */ + borderWidth?: number; + + /** Defines whether the label should be aligned within the connector boundaries + * @Default {true} + */ + boundaryConstraints?: boolean; + + /** Sets the fill color of the text area + * @Default {transparent} + */ + fillColor?: string; + + /** Sets the font color of the text + * @Default {black} + */ + fontColor?: string; + + /** Sets the font family of the text + * @Default {Arial} + */ + fontFamily?: string; + + /** Defines the font size of the text + * @Default {12} + */ + fontSize?: number; + + /** Sets the horizontal alignment of the label. + * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} + */ + horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment|string; + + /** Sets the hyperlink for the labels in the connectors. + * @Default {none} + */ + hyperlink?: string; + + /** Enables/disables the italic style + * @Default {false} + */ + italic?: boolean; + + /** Gets whether the label is currently being edited or not. + * @Default {ej.datavisualization.Diagram.LabelEditMode.Edit} + */ + mode?: ej.datavisualization.Diagram.LabelEditMode|string; + + /** Sets the unique identifier of the label + */ + name?: string; + + /** Sets the fraction/ratio(relative to connector) that defines the position of the label + * @Default {ej.datavisualization.Diagram.Point(0.5, 0.5)} + */ + offset?: any; + + /** Sets the fraction/ratio(relative to connector) that defines the position of the label + * @Default {ej.datavisualization.Diagram.Point(0.5, 0.5)} + */ + margin?: ConnectorsLabelsMargin; + + /** Defines the transparency of labels + * @Default {1} + */ + opacity?: number; + + /** Defines whether the label is editable or not + * @Default {false} + */ + readOnly?: boolean; + + /** Defines whether the label should be positioned whether relative to segments or connector boundaries + * @Default {ej.datavisualization.Diagram.LabelRelativeMode.SegmentPath} + */ + relativeMode?: ej.datavisualization.Diagram.LabelRelativeMode|string; + + /** Defines the angle to which the label needs to be rotated + * @Default {0} + */ + rotateAngle?: number; + + /** Sets the position of the label with respect to the total segment length + * @Default {0.5} + */ + segmentOffset?: string; + + /** Defines the label text + */ + text?: string; + + /** Defines how to align the text inside the label. + * @Default {ej.datavisualization.Diagram.TextAlign.Center} + */ + textAlign?: ej.datavisualization.Diagram.TextAlign|string; + + /** Sets how to decorate the label text. + * @Default {ej.datavisualization.Diagram.TextDecorations.None} + */ + textDecoration?: ej.datavisualization.Diagram.TextDecorations|string; + + /** Sets the vertical alignment of the label. + * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} + */ + verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment|string; + + /** Enables or disables the visibility of the label + * @Default {true} + */ + visible?: boolean; + + /** Sets the width of the label(the maximum value of label width and the connector width will be considered as label width) + * @Default {50} + */ + width?: number; + + /** Defines how the label text needs to be wrapped. + * @Default {ej.datavisualization.Diagram.TextWrapping.WrapWithOverflow} + */ + wrapping?: ej.datavisualization.Diagram.TextWrapping|string; + } + + export interface ConnectorsSegment { + + /** Sets the direction of orthogonal segment + */ + direction?: string; + + /** Describes the length of orthogonal segment + * @Default {undefined} + */ + length?: number; + + /** Describes the end point of bezier/straight segment + * @Default {Diagram.Point()} + */ + point?: ej.datavisualization.Diagram.ConnectorsSourcePoint; + + /** Defines the first control point of the bezier segment + * @Default {null} + */ + point1?: ej.datavisualization.Diagram.ConnectorsSourcePoint; + + /** Defines the second control point of bezier segment + * @Default {null} + */ + point2?: ej.datavisualization.Diagram.ConnectorsSourcePoint; + + /** Sets the type of the segment. + * @Default {ej.datavisualization.Diagram.Segments.Straight} + */ + type?: ej.datavisualization.Diagram.Segments|string; + + /** Describes the length and angle between the first control point and the start point of bezier segment + * @Default {null} + */ + vector1?: any; + + /** Describes the length and angle between the second control point and end point of bezier segment + * @Default {null} + */ + vector2?: any; + } + + export interface ConnectorsShapeMultiplicitySource { + + /** Defines the source label to connector. Applicable, if the connector is of type "UML" + * @Default {true} + */ + optional?: boolean; + + /** Defines the source label to connector. Applicable, if the connector is of type "UML" + * @Default {null} + */ + lowerBounds?: number; + + /** Defines the source label to connector. Applicable, if the connector is of type "UML" + * @Default {null} + */ + upperBounds?: number; + } + + export interface ConnectorsShapeMultiplicity { + + /** Sets the type of the multiplicity. Applicable, if the connector is of type "classifier" + * @Default {ej.datavisualization.Diagram.Multiplicity.OneToOne} + */ + type?: ej.datavisualization.Diagram.Multiplicity|string; + + /** Defines the source label to connector. Applicable, if the connector is of type "UML" + */ + source?: ConnectorsShapeMultiplicitySource; + + /** Defines the target label to connector. Applicable, if the connector is of type "UML" + * @Default {true} + */ + target?: ej.datavisualization.Diagram.ConnectorsShapeMultiplicitySource; + } + + export interface ConnectorsShape { + + /** Sets the type of the connector + * @Default {ej.datavisualization.Diagram.ConnectorShapes.BPMN} + */ + type?: ej.datavisualization.Diagram.ConnectorShapes|string; + + /** Sets the type of the flow in a BPMN Process + * @Default {ej.datavisualization.Diagram.BPMNFlows.Sequence} + */ + flow?: ej.datavisualization.Diagram.BPMNFlows|string; + + /** Sets the type of the Association in a BPMN Process + * @Default {ej.datavisualization.Diagram.AssociationFlows.Default} + */ + association?: ej.datavisualization.Diagram.AssociationFlows|string; + + /** Sets the type of the message flow. Applicable, if the connector is of type "BPMN" + * @Default {ej.datavisualization.Diagram.BPMNMessageFlows.Default} + */ + message?: ej.datavisualization.Diagram.BPMNMessageFlows|string; + + /** Sets the type of BPMN sequence flow + * @Default {ej.datavisualization.Diagram.BPMNSequenceFlows.Normal} + */ + sequence?: ej.datavisualization.Diagram.BPMNSequenceFlows|string; + + /** Defines the role of the connector in a UML Class Diagram. Applicable, if the type of the connector is "classifier". + * @Default {ej.datavisualization.Diagram.ClassifierShapes.Association} + */ + relationship?: ej.datavisualization.Diagram.ClassifierShapes|string; + + /** Defines the multiplicity option of the connector + * @Default {null} + */ + multiplicity?: ConnectorsShapeMultiplicity; + + /** Defines the shape of UMLActivity to connector. Applicable, if the connector is of type UMLActivity + * @Default {ej.datavisualization.Diagram.UMLActivityFlow.Control} + */ + ActivityFlow?: ej.datavisualization.Diagram.UMLActivityFlow|string; + } + + export interface ConnectorsSourceDecorator { + + /** Sets the border color of the source decorator + * @Default {black} + */ + borderColor?: string; + + /** Sets the border width of the decorator + * @Default {1} + */ + borderWidth?: number; + + /** Sets the fill color of the source decorator + * @Default {black} + */ + fillColor?: string; + + /** Sets the height of the source decorator + * @Default {8} + */ + height?: number; + + /** Defines the custom shape of the source decorator + */ + pathData?: string; + + /** Defines the shape of the source decorator. + * @Default {ej.datavisualization.Diagram.DecoratorShapes.Arrow} + */ + shape?: ej.datavisualization.Diagram.DecoratorShapes|string; + + /** Defines the width of the source decorator + * @Default {8} + */ + width?: number; + } + + export interface ConnectorsSourcePoint { + + /** Defines the x-coordinate of a position + * @Default {0} + */ + x?: number; + + /** Defines the y-coordinate of a position + * @Default {0} + */ + y?: number; + } + + export interface ConnectorsTargetDecorator { + + /** Sets the border color of the decorator + * @Default {black} + */ + borderColor?: string; + + /** Sets the color with which the decorator will be filled + * @Default {black} + */ + fillColor?: string; + + /** Defines the height of the target decorator + * @Default {8} + */ + height?: number; + + /** Defines the custom shape of the target decorator + */ + pathData?: string; + + /** Defines the shape of the target decorator. + * @Default {ej.datavisualization.Diagram.DecoratorShapes.Arrow} + */ + shape?: ej.datavisualization.Diagram.DecoratorShapes|string; + + /** Defines the width of the target decorator + * @Default {8} + */ + width?: number; + } + + export interface Connector { + + /** To maintain additional information about connectors + * @Default {null} + */ + addInfo?: any; + + /** Defines the width of the line bridges + * @Default {10} + */ + bridgeSpace?: number; + + /** Enables or disables the behaviors of connectors. + * @Default {ej.datavisualization.Diagram.ConnectorConstraints.Default} + */ + constraints?: ej.datavisualization.Diagram.ConnectorConstraints|string; + + /** Defines the radius of the rounded corner + * @Default {0} + */ + cornerRadius?: number; + + /** Configures the styles of shapes + */ + cssClass?: string; + + /** Sets the horizontal alignment of the connector. Applicable, if the parent of the connector is a container. + * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Left} + */ + horizontalAlign?: ej.datavisualization.Diagram.HorizontalAlignment|string; + + /** A collection of JSON objects where each object represents a label. + * @Default {[]} + */ + labels?: ConnectorsLabel[]; + + /** Sets the stroke color of the connector + * @Default {black} + */ + lineColor?: string; + + /** Sets the pattern of dashes and gaps used to stroke the path of the connector + */ + lineDashArray?: string; + + /** Defines the padding value to ease the interaction with connectors + * @Default {10} + */ + lineHitPadding?: number; + + /** Sets the width of the line + * @Default {1} + */ + lineWidth?: number; + + /** Defines the minimum space to be left between the bottom of parent bounds and the connector. Applicable, if the parent is a container. + * @Default {0} + */ + marginBottom?: number; + + /** Defines the minimum space to be left between the left of parent bounds and the connector. Applicable, if the parent is a container. + * @Default {0} + */ + marginLeft?: number; + + /** Defines the minimum space to be left between the right of parent bounds and the connector. Applicable, if the parent is a container. + * @Default {0} + */ + marginRight?: number; + + /** Defines the minimum space to be left between the top of parent bounds and the connector. Applicable, if the parent is a container. + * @Default {0} + */ + marginTop?: number; + + /** Sets a unique name for the connector + */ + name?: string; + + /** Defines the transparency of the connector + * @Default {1} + */ + opacity?: number; + + /** Defines the size and preview size of the node to add that to symbol palette. To explore palette item, refer Palette Item + * @Default {null} + */ + paletteItem?: any; + + /** Sets the parent name of the connector. + */ + parent?: string; + + /** An array of JSON objects where each object represents a segment + * @Default {[ { type:straight } ]} + */ + segments?: ConnectorsSegment[]; + + /** Defines the role/meaning of the connector + * @Default {null} + */ + shape?: ConnectorsShape; + + /** Defines the source decorator of the connector + * @Default {{ shape:arrow, width: 8, height:8, borderColor:black, fillColor:black }} + */ + sourceDecorator?: ConnectorsSourceDecorator; + + /** Sets the source node of the connector + */ + sourceNode?: string; + + /** Defines the space to be left between the source node and the source point of a connector + * @Default {0} + */ + sourcePadding?: number; + + /** Describes the start point of the connector + * @Default {ej.datavisualization.Diagram.Point()} + */ + sourcePoint?: ConnectorsSourcePoint; + + /** Sets the source port of the connector + */ + sourcePort?: string; + + /** Defines the target decorator of the connector + * @Default {{ shape:arrow, width: 8, height:8, borderColor:black, fillColor:black }} + */ + targetDecorator?: ConnectorsTargetDecorator; + + /** Sets the target node of the connector + */ + targetNode?: string; + + /** Defines the space to be left between the target node and the target point of the connector + * @Default {0} + */ + targetPadding?: number; + + /** Describes the end point of the connector + * @Default {ej.datavisualization.Diagram.Point()} + */ + targetPoint?: ej.datavisualization.Diagram.ConnectorsSourcePoint; + + /** Sets the targetPort of the connector + */ + targetPort?: string; + + /** Defines the tooltip that should be shown when the mouse hovers over connector. For tooltip properties, refer Tooltip + * @Default {null} + */ + tooltip?: any; + + /** To set the vertical alignment of connector (Applicable,if the parent is group). + * @Default {ej.datavisualization.Diagram.VerticalAlignment.Top} + */ + verticalAlign?: ej.datavisualization.Diagram.VerticalAlignment|string; + + /** Enables or disables the visibility of connector + * @Default {true} + */ + visible?: boolean; + + /** Sets the z-index of the connector + * @Default {0} + */ + zOrder?: number; + } + + export interface ContextMenuItem { + + /** Defines the text for the collection of context menu item + * @Default {null} + */ + text?: string; + + /** Defines the name for the collection of context menu items + * @Default {null} + */ + name?: string; + + /** Defines the image url for the collection of context menu items + * @Default {null} + */ + imageUrl?: string; + + /** Defines the CssClass for the collection of context menu items + * @Default {null} + */ + cssClass?: string; + + /** Defines the collection of sub items for the context menu items + * @Default {[]} + */ + subItems?: any[]; + } + + export interface ContextMenu { + + /** Defines the collection of context menu items + * @Default {[]} + */ + items?: ContextMenuItem[]; + + /** To set whether to display the default context menu items or not + * @Default {false} + */ + showCustomMenuItemsOnly?: boolean; + } + + export interface DataSourceSettingsCrudAction { + + /** Specifies the create method which is used to get the nodes to be added from client side to the server side + * @Default {null} + */ + create?: string; + + /** Specifies the update method which is used to get the updated data from client side to the server side + * @Default {null} + */ + update?: string; + + /** Specifies the destroy method which is used to get the deleted items data from client side to the server side + * @Default {null} + */ + destroy?: string; + + /** Specifies the read method to get the created nodes from client side to the server side + * @Default {null} + */ + read?: string; + } + + export interface DataSourceSettingsConnectionDataSourceCrudAction { + + /** Specifies the create method which is used to get the connectors to be added from client side to the server side + * @Default {null} + */ + create?: string; + + /** Specifies the update method which is used to get the updated connectors from client side to the server side + * @Default {null} + */ + update?: string; + + /** Specifies the destroy method which is used to get the deleted items data from client side to the server side + * @Default {null} + */ + destroy?: string; + + /** Specifies the read method which is used to get the data from client side to the server side + * @Default {null} + */ + read?: string; + } + + export interface DataSourceSettingsConnectionDataSource { + + /** Sets the datasource for the connection datasource settings items. + * @Default {null} + */ + dataSource?: string; + + /** Sets the unique id of the connection data source item + * @Default {null} + */ + id?: string; + + /** Sets the sourcenode of the connection data source item + * @Default {null} + */ + sourceNode?: string; + + /** Sets the targetnode of the connection data source item + * @Default {null} + */ + targetNode?: string; + + /** Sets the sourcepoint-x value of the connection data source item + * @Default {null} + */ + sourcePointX?: string; + + /** Sets the sourcePoint-y value of the connection data source item + * @Default {null} + */ + sourcePointY?: string; + + /** Sets the targetPoint-x value of the connection data source item + * @Default {null} + */ + targetPointX?: string; + + /** Sets the targetPoint-y value of the connection data source item + * @Default {null} + */ + targetPointY?: string; + + /** Specifies the method name which is used to get updated connectors from client side to the server side + * @Default {null} + */ + crudAction?: DataSourceSettingsConnectionDataSourceCrudAction; + + /** Specifies the customfields to get the updated data from client side to the server side + * @Default {[]} + */ + customFields?: any[]; + } + + export interface DataSourceSettings { + + /** Defines the data source either as a collection of objects or as an instance of ej.DataManager + * @Default {null} + */ + dataSource?: any; + + /** Sets the unique id of the data source items + */ + id?: string; + + /** Defines the parent id of the data source item + * @Default {''} + */ + parent?: string; + + /** Describes query to retrieve a set of data from the specified datasource + * @Default {null} + */ + query?: string; + + /** Sets the unique id of the root data source item + */ + root?: string; + + /** Describes the name of the table on which the specified query has to be executed + * @Default {null} + */ + tableName?: string; + + /** Specifies the method name which is used to get the updated data from client side to the server side + * @Default {null} + */ + crudAction?: DataSourceSettingsCrudAction; + + /** Specifies the customfields to get the updated data from client side to the server side + * @Default {[]} + */ + customFields?: any[]; + + /** Defines the data source either as a collection of objects or as an instance of ej.DataManager + * @Default {null} + */ + connectionDataSource?: DataSourceSettingsConnectionDataSource; + } + + export interface DefaultSettings { + + /** Initializes the default connector properties + * @Default {null} + */ + connector?: any; + + /** Initializes the default properties of groups + * @Default {null} + */ + group?: any; + + /** Initializes the default properties for nodes + * @Default {null} + */ + node?: any; + } + + export interface HistoryManager { + + /** A method that takes a history entry as argument and returns whether the specific entry can be popped or not + */ + canPop?: '() => void'; + + /** A method that ends grouping the changes + */ + closeGroupAction?: '() => void'; + + /** A method that removes the history of a recent change made in diagram + */ + pop?: '() => void'; + + /** A method that allows to track the custom changes made in diagram + */ + push?: '() => void'; + + /** Defines what should be happened while trying to restore a custom change + * @Default {null} + */ + redo?: '() => void'; + + /** The redoStack property is used to get the number of redo actions to be stored on the history manager. Its an read-only property and the collection should not be modified. + * @Default {[]} + */ + redoStack?: any[]; + + /** The stackLimit property used to restrict the undo and redo actions to a certain limit. + * @Default {null} + */ + stackLimit?: number; + + /** A method that starts to group the changes to revert/restore them in a single undo or redo + */ + startGroupAction?: '() => void'; + + /** Defines what should be happened while trying to revert a custom change + */ + undo?: '() => void'; + + /** The undoStack property is used to get the number of undo actions to be stored on the history manager. Its an read-only property and the collection should not be modified. + * @Default {[]} + */ + undoStack?: any[]; + } + + export interface Layout { + + /** Specifies the custom bounds to arrange/align the layout + * @Default {ej.datavisualization.Diagram.Rectangle()} + */ + bounds?: any; + + /** Defines the fixed node with reference to which, the layout will be arranged and fixed node will not be repositioned + */ + fixedNode?: string; + + /** Customizes the orientation of trees/sub trees. For orientations, see Chart Orientations. For chart types, see Chart Types + * @Default {null} + */ + getLayoutInfo?: any; + + /** Defines a method to customize the segments based on source and target nodes. + * @Default {null} + */ + getConnectorSegments?: any; + + /** Sets the space to be horizontally left between nodes + * @Default {30} + */ + horizontalSpacing?: number; + + /** Defines the space to be left between layout bounds and layout. + * @Default {ej.datavisualization.Diagram.Margin()} + */ + margin?: any; + + /** Defines how to horizontally align the layout within the layout bounds + * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} + */ + horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment|string; + + /** Defines how to vertically align the layout within the layout bounds + * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} + */ + verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment|string; + + /** Sets the orientation/direction to arrange the diagram elements. + * @Default {ej.datavisualization.Diagram.LayoutOrientations.TopToBottom} + */ + orientation?: ej.datavisualization.Diagram.LayoutOrientations|string; + + /** Sets the type of the layout based on which the elements will be arranged. + * @Default {ej.datavisualization.Diagram.LayoutTypes.None} + */ + type?: ej.datavisualization.Diagram.LayoutTypes|string; + + /** Sets the space to be vertically left between nodes + * @Default {30} + */ + verticalSpacing?: number; + } + + export interface NodesAnnotation { + + /** Sets the angle between the BPMN shape and the annotation + * @Default {0} + */ + angle?: number; + + /** Sets the direction of the text annotation + * @Default {ej.datavisualization.Diagram.BPMNAnnotationDirections.Left} + */ + direction?: ej.datavisualization.Diagram.BPMNAnnotationDirection|string; + + /** Sets the height of the text annotation + * @Default {20} + */ + height?: number; + + /** Sets the distance between the BPMN shape and the annotation + * @Default {0} + */ + length?: number; + + /** Defines the additional information about the flow object in a BPMN Process + */ + text?: string; + + /** Sets the width of the text annotation + * @Default {20} + */ + width?: number; + } + + export interface NodesClassAttribute { + + /** Sets the name of the attribute + */ + name?: string; + + /** Sets the data type of attribute + */ + type?: string; + + /** Defines the visibility of the attribute + * @Default {ej.datavisualization.Diagram.ScopeValueDefaults.Public} + */ + scope?: string; + } + + export interface NodesClassMethod { + + /** Sets the visibility of the method. + * @Default {ej.datavisualization.Diagram.ScopeValueDefaults.Public} + */ + scope?: string; + } + + export interface NodesClass { + + /** Sets the name of class. + */ + name?: string; + + /** Defines the collection of attributes + * @Default {[]} + */ + attributes?: NodesClassAttribute[]; + + /** Defines the collection of methods of a Class. + * @Default {[]} + */ + methods?: NodesClassMethod[]; + } + + export interface NodesCollapseIcon { + + /** Sets the border color for collapse icon of node + * @Default {black} + */ + borderColor?: string; + + /** Sets the border width for collapse icon of node + * @Default {1} + */ + borderWidth?: number; + + /** Sets the fill color for collapse icon of node + * @Default {white} + */ + fillColor?: string; + + /** Defines the height for collapse icon of node + * @Default {15} + */ + height?: number; + + /** Sets the horizontal alignment of the icon. + * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} + */ + horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment|string; + + /** To set the margin for the collapse icon of node + * @Default {ej.datavisualization.Diagram.Margin()} + */ + margin?: any; + + /** Sets the fraction/ratio(relative to node) that defines the position of the icon + * @Default {ej.datavisualization.Diagram.Point(0.5, 1)} + */ + offset?: any; + + /** Defines the shape of the collapsed state of the node. + * @Default {ej.datavisualization.Diagram.IconShapes.None} + */ + shape?: ej.datavisualization.Diagram.IconShapes|string; + + /** Sets the vertical alignment of the icon. + * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} + */ + verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment|string; + } + + export interface NodesContainer { + + /** Defines the orientation of the container. Applicable, if the group is a container. + * @Default {vertical} + */ + orientation?: string; + + /** Sets the type of the container. Applicable if the group is a container. + * @Default {ej.datavisualization.Diagram.ContainerType.Canvas} + */ + type?: ej.datavisualization.Diagram.ContainerType|string; + } + + export interface NodesData { + + /** Sets the type of the BPMN Data object + * @Default {ej.datavisualization.Diagram.BPMNDataObjects.None} + */ + type?: ej.datavisualization.Diagram.BPMNDataObjects|string; + + /** Defines whether the BPMN data object is a collection or not + * @Default {false} + */ + collection?: boolean; + } + + export interface NodesEnumerationMember { + + /** Sets the name of the enumeration member + */ + name?: string; + } + + export interface NodesEnumeration { + + /** Sets the name of the Enumeration + */ + name?: string; + + /** Defines the collection of enumeration members + * @Default {[]} + */ + members?: NodesEnumerationMember[]; + } + + export interface NodesExpandIcon { + + /** Sets the border color for expand icon of node + * @Default {black} + */ + borderColor?: string; + + /** Sets the border width for expand icon of node + * @Default {1} + */ + borderWidth?: number; + + /** Sets the fill color for expand icon of node + * @Default {white} + */ + fillColor?: string; + + /** Defines the height for expand icon of node + * @Default {15} + */ + height?: number; + + /** Sets the horizontal alignment of the icon. + * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} + */ + horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment|string; + + /** To set the margin for the expand icon of node + * @Default {ej.datavisualization.Diagram.Margin()} + */ + margin?: any; + + /** Sets the fraction/ratio(relative to node) that defines the position of the icon + * @Default {ej.datavisualization.Diagram.Point(0.5, 1)} + */ + offset?: any; + + /** Defines the shape of the expanded state of the node. + * @Default {ej.datavisualization.Diagram.IconShapes.None} + */ + shape?: ej.datavisualization.Diagram.IconShapes|string; + + /** Sets the vertical alignment of the icon. + * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} + */ + verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment|string; + } + + export interface NodesGradientLinearGradient { + + /** Defines the different colors and the region of color transitions + * @Default {[]} + */ + stops?: any[]; + + /** Defines the left most position(relative to node) of the rectangular region that needs to be painted + * @Default {0} + */ + x1?: number; + + /** Defines the right most position(relative to node) of the rectangular region that needs to be painted + * @Default {0} + */ + x2?: number; + + /** Defines the top most position(relative to node) of the rectangular region that needs to be painted + * @Default {0} + */ + y1?: number; + + /** Defines the bottom most position(relative to node) of the rectangular region that needs to be painted + * @Default {0} + */ + y2?: number; + } + + export interface NodesGradientRadialGradient { + + /** Defines the position of the outermost circle + * @Default {0} + */ + cx?: number; + + /** Defines the outer most circle of the radial gradient + * @Default {0} + */ + cy?: number; + + /** Defines the innermost circle of the radial gradient + * @Default {0} + */ + fx?: number; + + /** Defines the innermost circle of the radial gradient + * @Default {0} + */ + fy?: number; + + /** Defines the different colors and the region of color transitions. + * @Default {[]} + */ + stops?: any[]; + } + + export interface NodesGradientStop { + + /** Sets the color to be filled over the specified region + */ + color?: string; + + /** Sets the position where the previous color transition ends and a new color transition starts + * @Default {0} + */ + offset?: number; + + /** Describes the transparency level of the region + * @Default {1} + */ + opacity?: number; + } + + export interface NodesGradient { + + /** Paints the node with linear color transitions + */ + LinearGradient?: NodesGradientLinearGradient; + + /** Paints the node with radial color transitions. A focal point defines the beginning of the gradient, and a circle defines the end point of the gradient. + */ + RadialGradient?: NodesGradientRadialGradient; + + /** Defines the color and a position where the previous color transition ends and a new color transition starts + */ + Stop?: NodesGradientStop; + } + + export interface NodesInterfaceAttribute { + + /** Sets the name of the attribute + */ + name?: string; + + /** Sets the type of the attribute + */ + type?: string; + + /** Sets the visibility of the attribute + */ + scope?: string; + } + + export interface NodesInterfaceMethod { + + /** Sets the visibility of the method + */ + scope?: string; + } + + export interface NodesInterface { + + /** Sets the name of the interface + */ + name?: string; + + /** Defines a collection of attributes of the interface + * @Default {[]} + */ + attributes?: NodesInterfaceAttribute[]; + + /** Defines the collection of public methods of an interface + * @Default {[]} + */ + methods?: NodesInterfaceMethod[]; + } + + export interface NodesLabel { + + /** Enables/disables the bold style + * @Default {false} + */ + bold?: boolean; + + /** Sets the border color of the label + * @Default {transparent} + */ + borderColor?: string; + + /** Sets the border width of the label + * @Default {0} + */ + borderWidth?: number; + + /** Sets the fill color of the text area + * @Default {transparent} + */ + fillColor?: string; + + /** Sets the font color of the text + * @Default {black} + */ + fontColor?: string; + + /** Sets the font family of the text + * @Default {Arial} + */ + fontFamily?: string; + + /** Defines the font size of the text + * @Default {12} + */ + fontSize?: number; + + /** Sets the horizontal alignment of the label. + * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} + */ + horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment|string; + + /** Enables/disables the italic style + * @Default {false} + */ + italic?: boolean; + + /** To set the margin of the label + * @Default {ej.datavisualization.Diagram.Margin()} + */ + margin?: any; + + /** Gets whether the label is currently being edited or not. + * @Default {ej.datavisualization.Diagram.LabelEditMode.Edit} + */ + mode?: ej.datavisualization.Diagram.LabelEditMode|string; + + /** Sets the unique identifier of the label + */ + name?: string; + + /** Sets the fraction/ratio(relative to node) that defines the position of the label + * @Default {ej.datavisualization.Diagram.Point(0.5, 0.5)} + */ + offset?: any; + + /** Defines the transparency of the labels + * @Default {1} + */ + opacity?: number; + + /** Sets the overflowType of the labels + * @Default {ej.datavisualization.Diagram.OverflowType.Ellipsis} + */ + overflowType?: ej.datavisualization.Diagram.OverflowType|string; + + /** Defines whether the label is editable or not + * @Default {false} + */ + readOnly?: boolean; + + /** Defines the angle to which the label needs to be rotated + * @Default {0} + */ + rotateAngle?: number; + + /** Defines the label text + */ + text?: string; + + /** Defines how to align the text inside the label. + * @Default {ej.datavisualization.Diagram.TextAlign.Center} + */ + textAlign?: ej.datavisualization.Diagram.TextAlign|string; + + /** Sets how to decorate the label text. + * @Default {ej.datavisualization.Diagram.TextDecorations.None} + */ + textDecoration?: ej.datavisualization.Diagram.TextDecorations|string; + + /** Defines the overflowed content is displayed or not. + * @Default {false} + */ + textOverflow?: boolean; + + /** Sets the vertical alignment of the label. + * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} + */ + verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment|string; + + /** Enables or disables the visibility of the label + * @Default {true} + */ + visible?: boolean; + + /** Sets the width of the label(the maximum value of label width and the node width will be considered as label width) + * @Default {50} + */ + width?: number; + + /** Defines how the label text needs to be wrapped. + * @Default {ej.datavisualization.Diagram.TextWrapping.WrapWithOverflow} + */ + wrapping?: ej.datavisualization.Diagram.TextWrapping|string; + } + + export interface NodesLane { + + /** Defines the width of lane + * @Default {0} + */ + width?: number; + + /** Defines the height of lane + * @Default {0} + */ + height?: number; + + /** Defines the z-index of the lane + * @Default {0} + */ + zorder?: number; + + /** Allows to maintain additional information about lane + * @Default {{}} + */ + addInfo?: any; + + /** An array of objects where each object represents a child node of the lane + * @Default {[]} + */ + children?: any[]; + + /** Defines the fill color of the lane + * @Default {white} + */ + fillColor?: string; + + /** Defines the header of the lane + * @Default {{ text: Function, fontSize: 11 }} + */ + header?: any; + + /** Defines the object as a lane + * @Default {false} + */ + isLane?: boolean; + + /** Sets the unique identifier of the lane + */ + name?: string; + + /** Sets the orientation of the lane. + * @Default {vertical} + */ + orientation?: string; + } + + export interface NodesPaletteItem { + + /** Defines whether the symbol should be drawn at its actual size regardless of precedence factors or not + * @Default {true} + */ + enableScale?: boolean; + + /** Defines the height of the symbol + * @Default {0} + */ + height?: number; + + /** To display a name for nodes in the symbol palette + * @Default {null} + */ + label?: string; + + /** Defines the margin of the symbol item + * @Default {{ left: 4, right: 4, top: 4, bottom: 4 }} + */ + margin?: any; + + /** Defines the preview height of the symbol + * @Default {undefined} + */ + previewHeight?: number; + + /** Defines the preview width of the symbol + * @Default {undefined} + */ + previewWidth?: number; + + /** Defines the width of the symbol + * @Default {0} + */ + width?: number; + } + + export interface NodesPhase { + + /** Defines the header of the smaller regions + * @Default {null} + */ + label?: any; + + /** Defines the line color of the splitter that splits adjacent phases. + * @Default {#606060} + */ + lineColor?: string; + + /** Sets the dash array that used to stroke the phase splitter + * @Default {3,3} + */ + lineDashArray?: string; + + /** Sets the lineWidth of the phase + * @Default {1} + */ + lineWidth?: number; + + /** Sets the unique identifier of the phase + */ + name?: string; + + /** Sets the length of the smaller region(phase) of a swimlane + * @Default {100} + */ + offset?: number; + + /** Sets the orientation of the phase + * @Default {horizontal} + */ + orientation?: string; + + /** Sets the type of the object as phase + * @Default {phase} + */ + type?: string; + } + + export interface NodesPort { + + /** Sets the border color of the port + * @Default {#1a1a1a} + */ + borderColor?: string; + + /** Sets the stroke width of the port + * @Default {1} + */ + borderWidth?: number; + + /** Defines the space to be left between the port bounds and its incoming and outgoing connections. + * @Default {0} + */ + connectorPadding?: number; + + /** Defines whether connections can be created with the port + * @Default {ej.datavisualization.Diagram.PortConstraints.Connect} + */ + constraints?: ej.datavisualization.Diagram.PortConstraints|string; + + /** Sets the fill color of the port + * @Default {white} + */ + fillColor?: string; + + /** Sets the unique identifier of the port + */ + name?: string; + + /** Defines the position of the port as fraction/ ratio relative to node + * @Default {ej.datavisualization.Diagram.Point(0, 0)} + */ + offset?: any; + + /** Defines the path data to draw the port. Applicable, if the port shape is path. + */ + pathData?: string; + + /** Defines the shape of the port. + * @Default {ej.datavisualization.Diagram.PortShapes.Square} + */ + shape?: ej.datavisualization.Diagram.PortShapes|string; + + /** Defines the size of the port + * @Default {8} + */ + size?: number; + + /** Defines when the port should be visible. + * @Default {ej.datavisualization.Diagram.PortVisibility.Default} + */ + visibility?: ej.datavisualization.Diagram.PortVisibility|string; + } + + export interface NodesShadow { + + /** Defines the angle of the shadow relative to node + * @Default {45} + */ + angle?: number; + + /** Sets the distance to move the shadow relative to node + * @Default {5} + */ + distance?: number; + + /** Defines the opaque of the shadow + * @Default {0.7} + */ + opacity?: number; + } + + export interface NodesSubProcess { + + /** Defines whether the BPMN sub process is without any prescribed order or not + * @Default {false} + */ + adhoc?: boolean; + + /** Sets the boundary of the BPMN process + * @Default {ej.datavisualization.Diagram.BPMNBoundary.Default} + */ + boundary?: ej.datavisualization.Diagram.BPMNBoundary|string; + + /** Sets whether the BPMN subprocess is triggered as a compensation of a specific activity + * @Default {false} + */ + compensation?: boolean; + + /** Sets whether the BPMN subprocess is triggered as a collapsed of a specific activity + * @Default {true} + */ + collapsed?: boolean; + + /** Sets the type of the event by which the sub-process will be triggered + * @Default {ej.datavisualization.Diagram.BPMNEvents.Start} + */ + event?: ej.datavisualization.Diagram.BPMNEvents|string; + + /** Defines the collection of events that need to be appended with BPMN Sub-Process + */ + events?: any[]; + + /** Defines the loop type of a sub process. + * @Default {ej.datavisualization.Diagram.BPMNLoops.None} + */ + loop?: ej.datavisualization.Diagram.BPMNLoops|string; + + /** Defines the children for BPMN's SubProcess + * @Default {[]} + */ + Processes?: any[]; + + /** Defines the type of the event trigger + * @Default {ej.datavisualization.Diagram.BPMNTriggers.Message} + */ + trigger?: ej.datavisualization.Diagram.BPMNTriggers|string; + + /** Defines the type of a sub process + * @Default {ej.datavisualization.Diagram.BPMNSubProcessTypes.None} + */ + type?: ej.datavisualization.Diagram.BPMNSubProcessTypes|string; + } + + export interface NodesTask { + + /** To set whether the task is a global task or not + * @Default {false} + */ + call?: boolean; + + /** Sets whether the task is triggered as a compensation of another specific activity + * @Default {false} + */ + compensation?: boolean; + + /** Sets the loop type of a BPMN task. + * @Default {ej.datavisualization.Diagram.BPMNLoops.None} + */ + loop?: ej.datavisualization.Diagram.BPMNLoops|string; + + /** Sets the type of the BPMN task. + * @Default {ej.datavisualization.Diagram.BPMNTasks.None} + */ + type?: ej.datavisualization.Diagram.BPMNTasks|string; + } + + export interface Node { + + /** Defines the type of BPMN Activity. Applicable, if the node is a BPMN activity. + * @Default {ej.datavisualization.Diagram.BPMNActivity.Task} + */ + activity?: ej.datavisualization.Diagram.BPMNActivity|string; + + /** To maintain additional information about nodes + * @Default {{}} + */ + addInfo?: any; + + /** Defines the additional information of a process. It is not directly related to the message flows or sequence flows of the process. + * @Default {ej.datavisualization.Diagram.BPMNTextAnnotation()} + */ + annotation?: NodesAnnotation; + + /** Sets the border color of node + * @Default {black} + */ + borderColor?: string; + + /** Sets the pattern of dashes and gaps to stroke the border + */ + borderDashArray?: string; + + /** Sets the border width of the node + * @Default {1} + */ + borderWidth?: number; + + /** Defines whether the group can be ungrouped or not + * @Default {true} + */ + canUngroup?: boolean; + + /** Array of JSON objects where each object represents a child node/connector + * @Default {[]} + */ + children?: any[]; + + /** Sets the type of UML classifier. Applicable, if the node is a UML Class Diagram shape. + * @Default {ej.datavisualization.Diagram.ClassifierShapes.Class} + */ + classifier?: ej.datavisualization.Diagram.ClassifierShapes|string; + + /** Defines the name, attributes and methods of a Class. Applicable, if the node is a Class. + * @Default {null} + */ + class?: NodesClass; + + /** Defines the state of the node is collapsed. + */ + collapseIcon?: NodesCollapseIcon; + + /** Defines the distance to be left between a node and its connections(In coming and out going connections). + * @Default {0} + */ + connectorPadding?: number; + + /** Enables or disables the default behaviors of the node. + * @Default {ej.datavisualization.Diagram.NodeConstraints.Default} + */ + constraints?: ej.datavisualization.Diagram.NodeConstraints|string; + + /** Defines how the child objects need to be arranged(Either in any predefined manner or automatically). Applicable, if the node is a group. + * @Default {null} + */ + container?: NodesContainer; + + /** Defines the corner radius of rectangular shapes. + * @Default {0} + */ + cornerRadius?: number; + + /** Configures the styles of shapes + */ + cssClass?: string; + + /** Defines the BPMN data object + */ + data?: NodesData; + + /** Defines an Enumeration in a UML Class Diagram + * @Default {null} + */ + enumeration?: NodesEnumeration; + + /** Sets the type of the BPMN Events. Applicable, if the node is a BPMN event. + * @Default {ej.datavisualization.Diagram.BPMNEvents.Start} + */ + event?: ej.datavisualization.Diagram.BPMNEvents|string; + + /** Defines whether the node can be automatically arranged using layout or not + * @Default {false} + */ + excludeFromLayout?: boolean; + + /** Defines the state of the node is expanded or collapsed. + */ + expandIcon?: NodesExpandIcon; + + /** Defines the fill color of the node + * @Default {white} + */ + fillColor?: string; + + /** Sets the type of the BPMN Gateway. Applicable, if the node is a BPMN gateway. + * @Default {ej.datavisualization.Diagram.BPMNGateways.None} + */ + gateway?: ej.datavisualization.Diagram.BPMNGateways|string; + + /** Paints the node with a smooth transition from one color to another color + */ + gradient?: NodesGradient; + + /** Sets the type of the BPMN Shapes as group. Applicable, if the node is a BPMN. + * @Default {ej.datavisualization.Diagram.BPMNShapes} + */ + group?: any; + + /** Defines the header of a swimlane/lane + * @Default {{ text: Title, fontSize: 11 }} + */ + header?: any; + + /** Defines the height of the node + * @Default {0} + */ + height?: number; + + /** Sets the horizontal alignment of the node. Applicable, if the parent of the node is a container. + * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Left} + */ + horizontalAlign?: ej.datavisualization.Diagram.HorizontalAlignment|string; + + /** A read only collection of the incoming connectors/edges of the node + * @Default {[]} + */ + inEdges?: any[]; + + /** Defines an interface in a UML Class Diagram + * @Default {null} + */ + interface?: NodesInterface; + + /** Defines whether the sub tree of the node is expanded or collapsed + * @Default {true} + */ + isExpanded?: boolean; + + /** Sets the node as a swimlane + * @Default {false} + */ + isSwimlane?: boolean; + + /** A collection of objects where each object represents a label + * @Default {[]} + */ + labels?: NodesLabel[]; + + /** An array of objects where each object represents a lane. Applicable, if the node is a swimlane. + * @Default {[]} + */ + lanes?: NodesLane[]; + + /** Defines the minimum space to be left between the bottom of parent bounds and the node. Applicable, if the parent is a container. + * @Default {0} + */ + marginBottom?: number; + + /** Defines the minimum space to be left between the left of parent bounds and the node. Applicable, if the parent is a container. + * @Default {0} + */ + marginLeft?: number; + + /** Defines the minimum space to be left between the right of the parent bounds and the node. Applicable, if the parent is a container. + * @Default {0} + */ + marginRight?: number; + + /** Defines the minimum space to be left between the top of parent bounds and the node. Applicable, if the parent is a container. + * @Default {0} + */ + marginTop?: number; + + /** Defines the maximum height limit of the node + * @Default {0} + */ + maxHeight?: number; + + /** Defines the maximum width limit of the node + * @Default {0} + */ + maxWidth?: number; + + /** Defines the minimum height limit of the node + * @Default {0} + */ + minHeight?: number; + + /** Defines the minimum width limit of the node + * @Default {0} + */ + minWidth?: number; + + /** Sets the unique identifier of the node + */ + name?: string; + + /** Defines the position of the node on X-Axis + * @Default {0} + */ + offsetX?: number; + + /** Defines the position of the node on Y-Axis + * @Default {0} + */ + offsetY?: number; + + /** Defines the opaque of the node + * @Default {1} + */ + opacity?: number; + + /** Defines the orientation of nodes. Applicable, if the node is a swimlane. + * @Default {vertical} + */ + orientation?: string; + + /** A read only collection of outgoing connectors/edges of the node + * @Default {[]} + */ + outEdges?: any[]; + + /** Defines the minimum padding value to be left between the bottom most position of a group and its children. Applicable, if the group is a container. + * @Default {0} + */ + paddingBottom?: number; + + /** Defines the minimum padding value to be left between the left most position of a group and its children. Applicable, if the group is a container. + * @Default {0} + */ + paddingLeft?: number; + + /** Defines the minimum padding value to be left between the right most position of a group and its children. Applicable, if the group is a container. + * @Default {0} + */ + paddingRight?: number; + + /** Defines the minimum padding value to be left between the top most position of a group and its children. Applicable, if the group is a container. + * @Default {0} + */ + paddingTop?: number; + + /** Defines the size and preview size of the node to add that to symbol palette + * @Default {null} + */ + paletteItem?: NodesPaletteItem; + + /** Sets the name of the parent group + */ + parent?: string; + + /** Sets the path geometry that defines the shape of a path node + */ + pathData?: string; + + /** An array of objects, where each object represents a smaller region(phase) of a swimlane. + * @Default {[]} + */ + phases?: NodesPhase[]; + + /** Sets the height of the phase headers + * @Default {0} + */ + phaseSize?: number; + + /** Sets the ratio/ fractional value relative to node, based on which the node will be transformed(positioning, scaling and rotation) + * @Default {ej.datavisualization.Diagram.Points(0.5,0.5)} + */ + pivot?: any; + + /** Defines a collection of points to draw a polygon. Applicable, if the shape is a polygon. + * @Default {[]} + */ + points?: any[]; + + /** An array of objects where each object represents a port + * @Default {[]} + */ + ports?: NodesPort[]; + + /** Sets the angle to which the node should be rotated + * @Default {0} + */ + rotateAngle?: number; + + /** Defines the opacity and the position of shadow + * @Default {ej.datavisualization.Diagram.Shadow()} + */ + shadow?: NodesShadow; + + /** Sets the shape of the node. It depends upon the type of node. + * @Default {ej.datavisualization.Diagram.BasicShapes.Rectangle} + */ + shape?: + ej.datavisualization.Diagram.BasicShapes|ej.datavisualization.Diagram.FlowShapes|ej.datavisualization.Diagram.BPMNShapes|ej.datavisualization.Diagram.UMLActivityShapes|string; + + /** Sets the source path of the image. Applicable, if the type of the node is image. + */ + source?: string; + + /** Defines the sub process of a BPMN Activity. Applicable, if the type of the BPMN activity is sub process. + * @Default {ej.datavisualization.Diagram.BPMNSubProcess()} + */ + subProcess?: NodesSubProcess; + + /** Defines the task of the BPMN activity. Applicable, if the type of activity is set as task. + * @Default {ej.datavisualization.Diagram.BPMNTask()} + */ + task?: NodesTask; + + /** Sets the id of svg/html templates. Applicable, if the node is HTML or native. + */ + templateId?: string; + + /** Defines the textBlock of a text node + * @Default {null} + */ + textBlock?: any; + + /** Defines the tooltip that should be shown when the mouse hovers over node. For tooltip properties, refer Tooltip + * @Default {null} + */ + tooltip?: any; + + /** Sets the type of BPMN Event Triggers. + * @Default {ej.datavisualization.Diagram.BPMNTriggers.None} + */ + trigger?: ej.datavisualization.Diagram.BPMNTriggers|string; + + /** Defines the type of the node. + * @Default {ej.datavisualization.Diagram.Shapes.Basic} + */ + type?: ej.datavisualization.Diagram.Shapes|string; + + /** Sets the vertical alignment of a node. Applicable, if the parent of a node is a container. + * @Default {ej.datavisualization.Diagram.VerticalAlignment.Top} + */ + verticalAlign?: ej.datavisualization.Diagram.VerticalAlignment|string; + + /** Defines the visibility of the node + * @Default {true} + */ + visible?: boolean; + + /** Defines the width of the node + * @Default {0} + */ + width?: number; + + /** Defines the z-index of the node + * @Default {0} + */ + zOrder?: number; + } + + export interface PageSettings { + + /** Defines the maximum distance to be left between the object and the scroll bar to trigger auto scrolling + * @Default {{ left: 15, top: 15, right: 15, bottom: 15 }} + */ + autoScrollBorder?: any; + + /** Sets whether multiple pages can be created to fit all nodes and connectors + * @Default {false} + */ + multiplePage?: boolean; + + /** Defines the background color of diagram pages + * @Default {#ffffff} + */ + pageBackgroundColor?: string; + + /** Defines the page border color + * @Default {#565656} + */ + pageBorderColor?: string; + + /** Sets the border width of diagram pages + * @Default {0} + */ + pageBorderWidth?: number; + + /** Defines the height of a page + * @Default {null} + */ + pageHeight?: number; + + /** Defines the page margin + * @Default {24} + */ + pageMargin?: number; + + /** Sets the orientation of the page. + * @Default {ej.datavisualization.Diagram.PageOrientations.Portrait} + */ + pageOrientation?: ej.datavisualization.Diagram.PageOrientations|string; + + /** Defines the height of a diagram page + * @Default {null} + */ + pageWidth?: number; + + /** Defines the scrollable area of diagram. Applicable, if the scroll limit is "limited". + * @Default {null} + */ + scrollableArea?: any; + + /** Defines the scrollable region of diagram. + * @Default {ej.datavisualization.Diagram.ScrollLimit.Infinite} + */ + scrollLimit?: ej.datavisualization.Diagram.ScrollLimit|string; + + /** Defines the draggable region of diagram elements. + * @Default {ej.datavisualization.Diagram.BoundaryConstraints.Infinite} + */ + boundaryConstraints?: ej.datavisualization.Diagram.BoundaryConstraints|string; + + /** Enables or disables the page breaks + * @Default {false} + */ + showPageBreak?: boolean; + } + + export interface ScrollSettings { + + /** Allows to read the zoom value of diagram + * @Default {0} + */ + currentZoom?: number; + + /** Sets the horizontal scroll offset + * @Default {0} + */ + horizontalOffset?: number; + + /** Allows to extend the scrollable region that is based on the scroll limit + * @Default {{left: 0, right: 0, top:0, bottom: 0}} + */ + padding?: any; + + /** Sets the vertical scroll offset + * @Default {0} + */ + verticalOffset?: number; + + /** Allows to read the view port height of the diagram + * @Default {0} + */ + viewPortHeight?: number; + + /** Allows to read the view port width of the diagram + * @Default {0} + */ + viewPortWidth?: number; + } + + export interface SelectedItemsUserHandle { + + /** Defines the name of the user handle + */ + name?: string; + + /** Defines the background color of the user handle + * @Default {#2382c3} + */ + backgroundColor?: string; + + /** Sets the border color of the user handle + * @Default {transparent} + */ + borderColor?: string; + + /** Defines whether the user handle should be added, when more than one element is selected + * @Default {false} + */ + enableMultiSelection?: boolean; + + /** Sets the stroke color of the user handle + * @Default {transparent} + */ + pathColor?: string; + + /** Defines the custom shape of the user handle + */ + pathData?: string; + + /** Defines the position of the user handle + * @Default {ej.datavisualization.Diagram.UserHandlePositions.BottomCenter} + */ + position?: ej.datavisualization.Diagram.UserHandlePositions|string; + + /** Defines the size of the user handle + * @Default {8} + */ + size?: number; + + /** Defines the interactive behaviors of the user handle + */ + tool?: any; + + /** Defines the visibility of the user handle + * @Default {true} + */ + visible?: boolean; + } + + export interface SelectedItems { + + /** A read only collection of the selected items + * @Default {[]} + */ + children?: any[]; + + /** Controls the visibility of selector. + * @Default {ej.datavisualization.Diagram.SelectorConstraints.All} + */ + constraints?: ej.datavisualization.Diagram.SelectorConstraints|string; + + /** Defines a method that dynamically enables/ disables the interaction with multiple selection. + * @Default {null} + */ + getConstraints?: any; + + /** Sets the height of the selected items + * @Default {0} + */ + height?: number; + + /** Sets the x position of the selector + * @Default {0} + */ + offsetX?: number; + + /** Sets the y position of the selector + * @Default {0} + */ + offsetY?: number; + + /** Sets the angle to rotate the selected items + * @Default {0} + */ + rotateAngle?: number; + + /** Sets the angle to rotate the selected items. For tooltip properties, refer Tooltip + * @Default {ej.datavisualization.Diagram.Tooltip()} + */ + tooltip?: any; + + /** A collection of frequently used commands that will be added around the selector + * @Default {[]} + */ + userHandles?: SelectedItemsUserHandle[]; + + /** Sets the width of the selected items + * @Default {0} + */ + width?: number; + } + + export interface SnapSettingsHorizontalGridLines { + + /** Defines the line color of horizontal grid lines + * @Default {lightgray} + */ + lineColor?: string; + + /** Specifies the pattern of dashes and gaps used to stroke horizontal grid lines + */ + lineDashArray?: string; + + /** A pattern of lines and gaps that defines a set of horizontal gridlines + * @Default {[1.25, 18.75, 0.25, 19.75, 0.25, 19.75, 0.25, 19.75, 0.25, 19.75]} + */ + linesInterval?: any[]; + + /** Specifies a set of intervals to snap the objects + * @Default {[20]} + */ + snapInterval?: any[]; + } + + export interface SnapSettingsVerticalGridLines { + + /** Defines the line color of horizontal grid lines + * @Default {lightgray} + */ + lineColor?: string; + + /** Specifies the pattern of dashes and gaps used to stroke horizontal grid lines + */ + lineDashArray?: string; + + /** A pattern of lines and gaps that defines a set of horizontal gridlines + * @Default {[1.25, 18.75, 0.25, 19.75, 0.25, 19.75, 0.25, 19.75, 0.25, 19.75]} + */ + linesInterval?: any[]; + + /** Specifies a set of intervals to snap the objects + * @Default {[20]} + */ + snapInterval?: any[]; + } + + export interface SnapSettings { + + /** Enables or disables snapping nodes/connectors to objects + * @Default {true} + */ + enableSnapToObject?: boolean; + + /** Defines the appearance of horizontal gridlines + */ + horizontalGridLines?: SnapSettingsHorizontalGridLines; + + /** Defines the angle by which the object needs to be snapped + * @Default {5} + */ + snapAngle?: number; + + /** Defines and sets the snapConstraints + */ + snapConstraints?: ej.datavisualization.Diagram.SnapConstraints|string; + + /** Defines the minimum distance between the selected object and the nearest object + * @Default {5} + */ + snapObjectDistance?: number; + + /** Defines the appearance of horizontal gridlines + */ + verticalGridLines?: SnapSettingsVerticalGridLines; + } + + export interface TooltipAlignment { + + /** Defines the horizontal alignment of tooltip. + * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} + */ + horizontal?: ej.datavisualization.Diagram.HorizontalAlignment|string; + + /** Defines the vertical alignment of tooltip. + * @Default {ej.datavisualization.Diagram.VerticalAlignment.Bottom} + */ + vertical?: ej.datavisualization.Diagram.VerticalAlignment|string; + } + + export interface Tooltip { + + /** Aligns the tooltip around nodes/connectors + */ + alignment?: TooltipAlignment; + + /** Sets the margin of the tooltip + * @Default {{ left: 5, right: 5, top: 5, bottom: 5 }} + */ + margin?: any; + + /** Defines whether the tooltip should be shown at the mouse position or around node. + * @Default {ej.datavisualization.Diagram.RelativeMode.Object} + */ + relativeMode?: ej.datavisualization.Diagram.RelativeMode|string; + + /** Sets the svg/html template to be bound with tooltip + */ + templateId?: string; + } + } + namespace Diagram { + enum ImageAlignment { + //Scales the graphic content non-uniformly to the width and height of the diagram area + None, + //Used to align the image at the top left of diagram area + XMinYMin, + //Used to align the image at the left center of diagram area + XMinYMid, + //Used to align the image at the bottom left of diagram area + XMinYMax, + //Used to align the image at the top center of diagram area + XMidYMin, + //Used to align the image at the center of diagram area + XMidYMid, + //Used to align the image at the bottom center of diagram area + XMidYMax, + //Used to align the image at the top right of diagram area/node + XMaxYMin, + //Used to align the image at the right center of diagram area/node + XMaxYMid, + //Used to align the image at the bottom right of diagram area/node + XMaxYMax, + } + } + namespace Diagram { + enum BridgeDirection { + //Used to set the direction of line bridges as left + Left, + //Used to set the direction of line bridges as right + Right, + //Used to set the direction of line bridges as top + Top, + //Used to set the direction of line bridges as bottom + Bottom, + } + } + namespace Diagram { + enum Keys { + //No key pressed. + None, + //The A key. + A, + //The B key. + B, + //The C key. + C, + //The D Key. + D, + //The E key. + E, + //The F key. + F, + //The G key. + G, + //The H Key. + H, + //The I key. + I, + //The J key. + J, + //The K key. + K, + //The L Key. + L, + //The M key. + M, + //The N key. + N, + //The O key. + O, + //The P Key. + P, + //The Q key. + Q, + //The R key. + R, + //The S key. + S, + //The T Key. + T, + //The U key. + U, + //The V key. + V, + //The W key. + W, + //The X key. + X, + //The Y key. + Y, + //The Z key. + Z, + //The 0 key. + Number0, + //The 1 key. + Number1, + //The 2 key. + Number2, + //The 3 key. + Number3, + //The 4 key. + Number4, + //The 5 key. + Number5, + //The 6 key. + Number6, + //The 7 key. + Number7, + //The 8 key. + Number8, + //The 9 key. + Number9, + //The LEFT ARROW key. + Left, + //The UP ARROW key. + Up, + //The RIGHT ARROW key. + Right, + //The DOWN ARROW key. + Down, + //The ESC key. + Escape, + //The DEL key. + Delete, + //The TAB key. + Tab, + //The ENTER key. + Enter, + } + } + namespace Diagram { + enum KeyModifiers { + //No modifiers are pressed. + None, + //The ALT key. + Alt, + //The CTRL key. + Control, + //The SHIFT key. + Shift, + } + } + namespace Diagram { + enum ConnectorConstraints { + //Disable all connector Constraints + None, + //Enables connector to be selected + Select, + //Enables connector to be Deleted + Delete, + //Enables connector to be Dragged + Drag, + //Enables connectors source end to be selected + DragSourceEnd, + //Enables connectors target end to be selected + DragTargetEnd, + //Enables control point and end point of every segment in a connector for editing + DragSegmentThumb, + //Enables bridging to the connector + Bridging, + //Enables label of node to be Dragged + DragLabel, + //Enables bridging to the connector + InheritBridging, + //Enables user interaction to the connector + PointerEvents, + //Enables the contrast between clean edges of connector over rendering speed and geometric precision + CrispEdges, + //Enables all constraints + Default, + } + } + namespace Diagram { + enum HorizontalAlignment { + //Used to align text horizontally on left side of node/connector + Left, + //Used to align text horizontally on center of node/connector + Center, + //Used to align text horizontally on right side of node/connector + Right, + } + } + namespace Diagram { + enum Alignment { + //Used to align the label either top or left(before) of the connector segment + Before, + //Used to align the label at center of the connector segment + Center, + //Used to align the label either bottom or right(after) of the connector segment + After, + } + } + namespace Diagram { + enum LabelRelativeMode { + //Sets the relativeMode as SegmentPath + SegmentPath, + //Sets the relativeMode as SegmentBounds + SegmentBounds, + } + } + namespace Diagram { + enum Segments { + //Used to specify the lines as Straight + Straight, + //Used to specify the lines as Orthogonal + Orthogonal, + //Used to specify the lines as Bezier + Bezier, + } + } + namespace Diagram { + enum ConnectorShapes { + //Used to specify connector type as BPMN + BPMN, + //Used to specify connector type as UMLClassifier + UMLClassifier, + //Used to specify connector type as UMLActivity + UMLActivity, + } + } + namespace Diagram { + enum BPMNFlows { + //Used to specify the Sequence flow in a BPMN Process + Sequence, + //Used to specify the Association flow in a BPMN Process + Association, + //Used to specify the Message flow in a BPMN Process + Message, + } + } + namespace Diagram { + enum AssociationFlows { + //Used to notate default association in a BPMN Process + Default, + //Used to notate directional association in a BPMN Process + Directional, + //User to notate bi-directional association in a BPMN Process + BiDirectional, + } + } + namespace Diagram { + enum BPMNMessageFlows { + //Used to notate the default message flow in a BPMN Process + Default, + //Used to notate the instantiating message flow in a BPMN Process + InitiatingMessage, + //Used to notate the non-instantiating message flow in a BPMN Process + NonInitiatingMessage, + } + } + namespace Diagram { + enum BPMNSequenceFlows { + //Used to notate the normal sequence flow in a BPMN Process + Normal, + //Used to notate the conditional sequence flow in a BPMN Process + Conditional, + //Used to notate the default sequence flow in a BPMN Process + Default, + } + } + namespace Diagram { + enum ClassifierShapes { + //Used to define a Class + Class, + //Used to define an Interface + Interface, + //Used to define an Enumeration + Enumeration, + //Used to notate association in UML Class Diagram + Association, + //Used to notate aggregation in a UML Class Diagram + Aggregation, + //Used to notate composition in a UML Class Diagram + Composition, + //Used to notate dependency in a UML Class Diagram + Dependency, + //Used to notate inheritance in a UML Class Diagram + Inheritance, + } + } + namespace Diagram { + enum Multiplicity { + //Each entity instance is related to a single instance of another entity + OneToOne, + //An entity instance can be related to multiple instances of the other entities + OneToMany, + //Multiple instances of an entity can be related to a single instance of the other entity + ManyToOne, + //The entity instances can be related to multiple instances of each other + ManyToMany, + } + } + namespace Diagram { + enum UMLActivityFlow { + //Defines a activity flow as Object in UML Activity Diagram + Object, + //Defines a activity flow as Control in UML Activity Diagram + Control, + //Defines a activity flow as Exception in UML Activity Diagram + Exception, + } + } + namespace Diagram { + enum DecoratorShapes { + //Used to set decorator shape as none + None, + //Used to set decorator shape as Arrow + Arrow, + //Used to set decorator shape as Open Arrow + OpenArrow, + //Used to set decorator shape as Circle + Circle, + //Used to set decorator shape as Diamond + Diamond, + //Used to set decorator shape as path + Path, + } + } + namespace Diagram { + enum VerticalAlignment { + //Used to align text Vertically on left side of node/connector + Top, + //Used to align text Vertically on center of node/connector + Center, + //Used to align text Vertically on bottom of node/connector + Bottom, + } + } + namespace Diagram { + enum DiagramConstraints { + //Disables all DiagramConstraints + None, + //Enables/Disables interaction done with the help of API methods + APIUpdate, + //Enables/Disables UserInteraction + UserInteraction, + //Enables/Disables PageEditing + PageEditable, + //Enables/Disables Bridging + Bridging, + //Enables/Disables Zooming + Zoomable, + //Enables/Disables panning on horizontal axis + PannableX, + //Enables/Disables panning on vertical axis + PannableY, + //Enables/Disables Panning + Pannable, + //Enables/Disables undo actions + Undoable, + //Enables/Disables the sharp edges + CrispEdges, + //Enables/Disables the Diagram size updation on the window resize function + Resizable, + //Enables/Disables the Zooming of labels text editor + ZoomTextEditor, + //Enables/Disables the drag and drop of element from one diagram to the other + FloatElements, + //Enables all Constraints + Default, + } + } + namespace Diagram { + enum LabelRenderingMode { + //Sets the labelRenderingMode as Html + Html, + //Sets the labelRenderingMode as Svg + Svg, + } + } + namespace Diagram { + enum LayoutOrientations { + //Used to set LayoutOrientation from top to bottom + TopToBottom, + //Used to set LayoutOrientation from bottom to top + BottomToTop, + //Used to set LayoutOrientation from left to right + LeftToRight, + //Used to set LayoutOrientation from right to left + RightToLeft, + } + } + namespace Diagram { + enum LayoutTypes { + //Used not to set any specific layout + None, + //Used to set layout type as hierarchical layout + HierarchicalTree, + //Used to set layout type as organnizational chart + OrganizationalChart, + } + } + namespace Diagram { + enum BPMNActivity { + //Used to set BPMN Activity as None + None, + //Used to set BPMN Activity as Task + Task, + //Used to set BPMN Activity as SubProcess + SubProcess, + } + } + namespace Diagram { + enum BPMNAnnotationDirection { + //Used to set the direction of BPMN Annotation as left + Left, + //Used to set the direction of BPMN Annotation as right + Right, + //Used to set the direction of BPMN Annotation as top + Top, + //Used to set the direction of BPMN Annotation as bottom + Bottom, + } + } + namespace Diagram { + enum IconShapes { + //Used to set collapse icon shape as none + None, + //Used to set collapse icon shape as Arrow(Up/Down) + Arrow, + //Used to set collapse icon shape as Plus + Plus, + //Used to set collapse icon shape as Minus + Minus, + //Used to set collapse icon shape as path + Path, + //Used to set icon shape as template + Template, + //Used to set icon shape as image + Image, + } + } + namespace Diagram { + enum NodeConstraints { + //Disable all node Constraints + None, + //Enables node to be selected + Select, + //Enables node to be Deleted + Delete, + //Enables node to be Dragged + Drag, + //Enables node to be Rotated + Rotate, + //Enables node to be connected + Connect, + //Enables node to be resize north east + ResizeNorthEast, + //Enables node to be resize east + ResizeEast, + //Enables node to be resize south east + ResizeSouthEast, + //Enables node to be resize south + ResizeSouth, + //Enables node to be resize south west + ResizeSouthWest, + //Enables node to be resize west + ResizeWest, + //Enables node to be resize north west + ResizeNorthWest, + //Enables node to be resize north + ResizeNorth, + //Enables node to be Resized + Resize, + //Enables shadow + Shadow, + //Enables label of node to be Dragged + DragLabel, + //Enables panning should be done while node dragging + AllowPan, + //Enables Proportional resize for node + AspectRatio, + //Enables the user interaction with the node + PointerEvents, + //Enables contrast between clean edges for the node over rendering speed and geometric precision + CrispEdges, + //Enables all node constraints + Default, + } + } + namespace Diagram { + enum ContainerType { + //Sets the container type as Canvas + Canvas, + //Sets the container type as Stack + Stack, + } + } + namespace Diagram { + enum BPMNDataObjects { + //Used to notate the Input type BPMN data object + Input, + //Used to notate the Output type BPMN data object + Output, + //Used to set BPMN data object type as None + None, + } + } + namespace Diagram { + enum BPMNEvents { + //Used to set BPMN Event as Start + Start, + //Used to set BPMN Event as Intermediate + Intermediate, + //Used to set BPMN Event as End + End, + //Used to set BPMN Event as NonInterruptingStart + NonInterruptingStart, + //Used to set BPMN Event as NonInterruptingIntermediate + NonInterruptingIntermediate, + //Used to set BPMN Event as ThrowingIntermediate + ThrowingIntermediate, + } + } + namespace Diagram { + enum BPMNGateways { + //Used to set BPMN Gateway as None + None, + //Used to set BPMN Gateway as Exclusive + Exclusive, + //Used to set BPMN Gateway as Inclusive + Inclusive, + //Used to set BPMN Gateway as Parallel + Parallel, + //Used to set BPMN Gateway as Complex + Complex, + //Used to set BPMN Gateway as EventBased + EventBased, + //Used to set BPMN Gateway as ExclusiveEventBased + ExclusiveEventBased, + //Used to set BPMN Gateway as ParallelEventBased + ParallelEventBased, + } + } + namespace Diagram { + enum LabelEditMode { + //Used to set label edit mode as edit + Edit, + //Used to set label edit mode as view + View, + } + } + namespace Diagram { + enum OverflowType { + //Set overflow Type as ellipsis + Ellipsis, + //Set overflow Type as Clip + Clip, + } + } + namespace Diagram { + enum TextAlign { + //Used to align text on left side of node/connector + Left, + //Used to align text on center of node/connector + Center, + //Used to align text on Right side of node/connector + Right, + } + } + namespace Diagram { + enum TextDecorations { + //Used to set text decoration of the label as Underline + Underline, + //Used to set text decoration of the label as Overline + Overline, + //Used to set text decoration of the label as LineThrough + LineThrough, + //Used to set text decoration of the label as None + None, + } + } + namespace Diagram { + enum TextWrapping { + //Disables wrapping + NoWrap, + //Enables Line-break at normal word break points + Wrap, + //Enables Line-break at normal word break points with longer word overflows + WrapWithOverflow, + } + } + namespace Diagram { + enum PortConstraints { + //Disable all constraints + None, + //Enables connections with connector + Connect, + //Enables to create the connection when mouse hover on the port. + ConnectOnDrag, + } + } + namespace Diagram { + enum PortShapes { + //Used to set port shape as X + X, + //Used to set port shape as Circle + Circle, + //Used to set port shape as Square + Square, + //Used to set port shape as Path + Path, + } + } + namespace Diagram { + enum PortVisibility { + //Set the port visibility as Visible + Visible, + //Set the port visibility as Hidden + Hidden, + //Port get visible when hover connector on node + Hover, + //Port gets visible when connect connector to node + Connect, + //Specifies the port visibility as default + Default, + } + } + namespace Diagram { + enum BasicShapes { + //Used to specify node Shape as Rectangle + Rectangle, + //Used to specify node Shape as Ellipse + Ellipse, + //Used to specify node Shape as Path + Path, + //Used to specify node Shape as Polygon + Polygon, + //Used to specify node Shape as Triangle + Triangle, + //Used to specify node Shape as Plus + Plus, + //Used to specify node Shape as Star + Star, + //Used to specify node Shape as Pentagon + Pentagon, + //Used to specify node Shape as Heptagon + Heptagon, + //Used to specify node Shape as Octagon + Octagon, + //Used to specify node Shape as Trapezoid + Trapezoid, + //Used to specify node Shape as Decagon + Decagon, + //Used to specify node Shape as RightTriangle + RightTriangle, + //Used to specify node Shape as Cylinder + Cylinder, + } + } + namespace Diagram { + enum FlowShapes { + //Used to specify node Shape as Process + Process, + //Used to specify node Shape as Decision + Decision, + //Used to specify node Shape as Document + Document, + //Used to specify node Shape as PreDefinedProcess + PreDefinedProcess, + //Used to specify node Shape as Terminator + Terminator, + //Used to specify node Shape as PaperTap + PaperTap, + //Used to specify node Shape as DirectData + DirectData, + //Used to specify node Shape as SequentialData + SequentialData, + //Used to specify node Shape as Sort + Sort, + //Used to specify node Shape as MultiDocument + MultiDocument, + //Used to specify node Shape as Collate + Collate, + //Used to specify node Shape as SummingJunction + SummingJunction, + //Used to specify node Shape as Or + Or, + //Used to specify node Shape as InternalStorage + InternalStorage, + //Used to specify node Shape as Extract + Extract, + //Used to specify node Shape as ManualOperation + ManualOperation, + //Used to specify node Shape as Merge + Merge, + //Used to specify node Shape as OffPageReference + OffPageReference, + //Used to specify node Shape as SequentialAccessStorage + SequentialAccessStorage, + //Used to specify node Shape as Annotation1 + Annotation1, + //Used to specify node Shape as Annotation2 + Annotation2, + //Used to specify node Shape as Data + Data, + //Used to specify node Shape as Card + Card, + } + } + namespace Diagram { + enum BPMNShapes { + //Used to specify node Shape as Event + Event, + //Used to specify node Shape as Gateway + Gateway, + //Used to specify node Shape as Message + Message, + //Used to specify node Shape as DataObject + DataObject, + //Used to specify node Shape as DataSource + DataSource, + //Used to specify node Shape as Activity + Activity, + //Used to specify node Shape as Group + Group, + } + } + namespace Diagram { + enum UMLActivityShapes { + //Used to set UML ActivityShapes as Action + Action, + //Used to set UML ActivityShapes as Decision + Decision, + //Used to set UML ActivityShapes as MergeNode + MergeNode, + //Used to set UML ActivityShapes as InitialNode + InitialNode, + //Used to set UML ActivityShapes as FinalNode + FinalNode, + //Used to set UML ActivityShapes as ForkNode + ForkNode, + //Used to set UML ActivityShapes as JoinNode + JoinNode, + //Used to set UML ActivityShapes as TimeEvent + TimeEvent, + //Used to set UML ActivityShapes as AcceptingEvent + AcceptingEvent, + //Used to set UML ActivityShapes as SendSignal + SendSignal, + //Used to set UML ActivityShapes as ReceiveSignal + ReceiveSignal, + //Used to set UML ActivityShapes as StructuredNode + StructuredNode, + //Used to set UML ActivityShapes as Note + Note, + } + } + namespace Diagram { + enum BPMNBoundary { + //Used to set BPMN SubProcess's Boundary as Default + Default, + //Used to set BPMN SubProcess's Boundary as Call + Call, + //Used to set BPMN SubProcess's Boundary as Event + Event, + } + } + namespace Diagram { + enum BPMNLoops { + //Used to set BPMN Activity's Loop as None + None, + //Used to set BPMN Activity's Loop as Standard + Standard, + //Used to set BPMN Activity's Loop as ParallelMultiInstance + ParallelMultiInstance, + //Used to set BPMN Activity's Loop as SequenceMultiInstance + SequenceMultiInstance, + } + } + namespace Diagram { + enum BPMNSubProcessTypes { + //Used to set BPMN SubProcess type as None + None, + //Used to set BPMN SubProcess type as Transaction + Transaction, + //Used to set BPMN SubProcess type as Event + Event, + } + } + namespace Diagram { + enum BPMNTasks { + //Used to set BPMN Task Type as None + None, + //Used to set BPMN Task Type as Service + Service, + //Used to set BPMN Task Type as Receive + Receive, + //Used to set BPMN Task Type as Send + Send, + //Used to set BPMN Task Type as InstantiatingReceive + InstantiatingReceive, + //Used to set BPMN Task Type as Manual + Manual, + //Used to set BPMN Task Type as BusinessRule + BusinessRule, + //Used to set BPMN Task Type as User + User, + //Used to set BPMN Task Type as Script + Script, + //Used to set BPMN Task Type as Parallel + Parallel, + } + } + namespace Diagram { + enum BPMNTriggers { + //Used to set Event Trigger as None + None, + //Used to set Event Trigger as Message + Message, + //Used to set Event Trigger as Timer + Timer, + //Used to set Event Trigger as Escalation + Escalation, + //Used to set Event Trigger as Link + Link, + //Used to set Event Trigger as Error + Error, + //Used to set Event Trigger as Compensation + Compensation, + //Used to set Event Trigger as Signal + Signal, + //Used to set Event Trigger as Multiple + Multiple, + //Used to set Event Trigger as Parallel + Parallel, + //Used to set Event Trigger as Conditional + Conditional, + //Used to set Event Trigger as Termination + Termination, + //Used to set Event Trigger as Cancel + Cancel, + } + } + namespace Diagram { + enum Shapes { + //Used to specify node type as Text + Text, + //Used to specify node type as Image + Image, + //Used to specify node type as Html + Html, + //Used to specify node type as Native + Native, + //Used to specify node type as Basic + Basic, + //Used to specify node type as Flow + Flow, + //Used to specify node type as BPMN + BPMN, + //Used to specify node type as UMLClassifier + UMLClassifier, + //Used to specify node type as UMLActivity + UMLActivity, + } + } + namespace Diagram { + enum PageOrientations { + //Used to set orientation as Landscape + Landscape, + //Used to set orientation as portrait + Portrait, + } + } + namespace Diagram { + enum ScrollLimit { + //Used to set scrollLimit as Infinite + Infinite, + //Used to set scrollLimit as Diagram + Diagram, + //Used to set scrollLimit as Limited + Limited, + } + } + namespace Diagram { + enum BoundaryConstraints { + //Used to set boundaryConstraints as Infinite + Infinite, + //Used to set boundaryConstraints as Diagram + Diagram, + //Used to set boundaryConstraints as Page + Page, + } + } + namespace Diagram { + enum SelectorConstraints { + //Hides the selector + None, + //Sets the visibility of rotation handle as visible + Rotator, + //Sets the visibility of resize handles as visible + Resizer, + //Sets the visibility of user handles as visible + UserHandles, + //Sets the visibility of all selection handles as visible + All, + } + } + namespace Diagram { + enum UserHandlePositions { + //Set the position of the userhandle as topleft + TopLeft, + //Set the position of the userhandle as topcenter + TopCenter, + //Set the position of the userhandle as topright + TopRight, + //Set the position of the userhandle as middleleft + MiddleLeft, + //Set the position of the userhandle as middleright + MiddleRight, + //Set the position of the userhandle as bottomleft + BottomLeft, + //Set the position of the userhandle as bottomcenter + BottomCenter, + //Set the position of the userhandle as bottom right + BottomRight, + } + } + namespace Diagram { + enum SnapConstraints { + //Enables node to be snapped to horizontal gridlines + None, + //Enables node to be snapped to vertical gridlines + SnapToHorizontalLines, + //Enables node to be snapped to horizontal gridlines + SnapToVerticalLines, + //Enables node to be snapped to gridlines + SnapToLines, + //Enable horizontal lines + ShowHorizontalLines, + //Enable vertical lines + ShowVerticalLines, + //Enable both horizontal and vertical lines + ShowLines, + //Enable all the constraints + All, + } + } + namespace Diagram { + enum Tool { + //Disables all Tools + None, + //Enables/Disables SingleSelect tool + SingleSelect, + //Enables/Disables MultiSelect tool + MultipleSelect, + //Enables/Disables ZoomPan tool + ZoomPan, + //Enables/Disables DrawOnce tool + DrawOnce, + //Enables/Disables ContinuousDraw tool + ContinuesDraw, + } + } + namespace Diagram { + enum RelativeMode { + //Shows tooltip around the node + Object, + //Shows tooltip at the mouse position + Mouse, + } + } + namespace Diagram { + enum FileFormats { + //Used to export the diagram into JPG format. + JPG, + //Used to export the diagram into PNG format. + PNG, + //Used to export the diagram into BMP format. + BMP, + //Used to export the diagram into SVG format. + SVG, + } + } + namespace Diagram { + enum ExportModes { + //Used to export the diagram as a file. + Download, + //Used to export the diagram as raw data. + Data, + } + } + namespace Diagram { + enum Region { + //Used to export the content of the diagram only. + Content, + //Used to export the page region of the diagram. + PageSettings, + } + } + namespace Diagram { + enum Stretch { + //The diagram content preserves its original size. + None, + //The diagram content is resized to fill the destination dimensions. The aspect ratio is not preserved. + Fill, + //The diagram content is resized to fit in the destination dimensions while it preserves its native aspect ratio. + Uniform, + //The diagram content is resized to fill the destination dimensions while it preserves its native aspect ratio. If the aspect ratio of the destination rectangle differs from the + //source, the source content is clipped to fit in the destination dimensions. + UniformToFill, + } + } + namespace Diagram { + enum FitMode { + //Used to fit the diagram content based on page size. + Page, + //Used to fit the diagram content based on diagram width. + Width, + //Used to fit the diagram content based on diagram height. + Height, + } + } + namespace Diagram { + enum ZoomCommand { + //Used to zoom in the Diagram + ZoomIn, + //Used to zoom out the diagram + ZoomOut, + } + } + + class HeatMap extends ej.Widget { + static fn: HeatMap; + constructor(element: JQuery | Element, options?: HeatMap.Model); + static Locale: any; + model: HeatMap.Model; + defaults: HeatMap.Model; + } + export namespace HeatMap { + + export interface Model { + + /** Specifies the width of the heat map. + * @Default {null} + */ + width?: any; + + /** Specifies the width of the heat map. + * @Default {null} + */ + height?: any; + + /** Specifies the name of the heat map. + * @Default {null} + */ + id?: number; + + /** Enables or disables tooltip of heatmap + * @Default {true} + */ + showTooltip?: boolean; + + /** Defines the tooltip that should be shown when the mouse hovers over rows/columns. + */ + tooltipSettings?: TooltipSettings; + + /** Specifies the source data of the heat map. + * @Default {[]} + */ + itemsSource?: any; + + /** Specifies the property of the heat map cell. + * @Default {Null} + */ + heatMapCell?: HeatMapCell; + + /** Specifies can enable responsive mode or not for heat map. + * @Default {false} + */ + isResponsive?: boolean; + + /** Specifies whether the virtualization can be enable or not. + * @Default {false} + */ + enableVirtualization?: boolean; + + /** Specifies the default column properties for all the column style not specified in column properties. + * @Default {[]} + */ + defaultColumnStyle?: DefaultColumnStyle; + + /** Specifies the no of legends can sync with heat map. + * @Default {[]} + */ + legendCollection?: any[]; + + /** Specifies the property and display value of the heat map column. + * @Default {[]} + */ + itemsMapping?: ItemsMapping; + + /** Specifies the color values of the heat map column data. + * @Default {[]} + */ + colorMappingCollection?: ColorMappingCollection[]; + + /** Triggered when the mouse over on the cell. + */ + cellMouseOver?(e: CellMouseOverEventArgs): void; + + /** Triggered when the mouse over on the cell. + */ + cellMouseEnter?(e: CellMouseEnterEventArgs): void; + + /** Triggered when the mouse over on the cell. + */ + cellMouseLeave?(e: CellMouseLeaveEventArgs): void; + + /** Triggered when the mouse over on the cell. + */ + cellSelected?(e: CellSelectedEventArgs): void; + } + + export interface CellMouseOverEventArgs { + + /** Value displayed on the cell + */ + cellValue?: string; + + /** Returns the HeatMap cell data + */ + source?: any; + + /** Returns the specific HeatMap cell + */ + cell?: any; + } + + export interface CellMouseEnterEventArgs { + + /** Value displayed on the cell + */ + cellValue?: string; + + /** Returns the HeatMap cell data + */ + source?: any; + + /** Returns the specific HeatMap cell + */ + cell?: any; + } + + export interface CellMouseLeaveEventArgs { + + /** Value displayed on the cell + */ + cellValue?: string; + + /** Returns the HeatMap cell data + */ + source?: any; + + /** Returns the specific HeatMap cell + */ + cell?: any; + } + + export interface CellSelectedEventArgs { + + /** Value displayed on the cell + */ + cellValue?: string; + + /** Returns the HeatMap cell data + */ + source?: any; + + /** Returns the specific HeatMap cell + */ + cell?: any; + } + + export interface TooltipSettingsPositionTarget { + + /** Sets the arrow position again popup based on horizontal(x) value + * @Default {center} + */ + horizontal?: ej.datavisualization.HeatMap.Horizontal|string; + + /** Sets the arrow position again popup based on vertical(y) value + * @Default {top} + */ + vertical?: ej.datavisualization.HeatMap.Vertical|string; + } - /** parameter returns the item which is selected or to be selected - */ - element?: any; + export interface TooltipSettingsPositionStem { + + /** Sets the arrow position again popup based on horizontal(x) value + * @Default {center} + */ + horizontal?: ej.datavisualization.HeatMap.Horizontal|string; + + /** Sets the arrow position again popup based on vertical(y) value + * @Default {bottom} + */ + vertical?: ej.datavisualization.HeatMap.Vertical|string; + } - /** parameter returns the collection of nodes and connectors that have to be removed from selection list - */ - oldItems?: any[]; + export interface TooltipSettingsPosition { + + /** Sets the Tooltip position against target. + */ + target?: TooltipSettingsPositionTarget; + + /** Sets the arrow position again popup. + */ + stem?: TooltipSettingsPositionStem; + } - /** parameter returns the collection of nodes and connectors that have to be added to selection list - */ - newItems?: any[]; + export interface TooltipSettingsAnimation { - /** parameter returns the collection of nodes and connectors that will be selected after selection change - */ - selectedItems?: any[]; + /** Defines the animation effect for the tooltip that should be shown when the mouse hovers over rows/columns. + * @Default {none} + */ + effect?: ej.datavisualization.HeatMap.Effect|string; - /** parameter to specify whether or not to cancel the selection change event - */ - cancel?: boolean; + /** Defines the animation speed for the tooltip that should be shown when the mouse hovers over rows/columns. + * @Default {0} + */ + speed?: number; + } - /** triggers before and after adding the selection to the object in the diagram which can be differentiated through `state` argument. We can cancel the event only - * before the selection of the object. - */ - state?: string; + export interface TooltipSettings { + + /** Defines the tooltip that should be shown when the mouse hovers over rows/columns. + * @Default {null} + */ + templateId?: string; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** Defines the tooltip of associate that should be shown when the mouse hovers over rows/columns. + * @Default {mouseFollow} + */ + associate?: ej.datavisualization.HeatMap.Associate|string; + + /** Enables/ disables the balloon for the tooltip to be shown + * @Default {true} + */ + isBalloon?: boolean; - /** parameter returns the actual cause of the event - */ - cause?: string; - } + /** Defines various attributes of the Tooltip position + */ + position?: TooltipSettingsPosition; - export interface SizeChangeEventArgs { + /** Defines the tooltip to be triggered. + * @Default {hover} + */ + trigger?: ej.datavisualization.HeatMap.Trigger|string; - /** parameter returns node that was resized - */ - element?: any; + /** Defines the animation for the tooltip that should be shown when the mouse hovers over rows/columns. + */ + animation?: TooltipSettingsAnimation; + } + + export interface HeatMapCell { - /** parameter to cancel the size change - */ - cancel?: boolean; + /** Specifies whether the cell content can be visible or not. + * @Default {ej.HeatMap.CellVisibility.Visible} + */ + showContent?: ej.datavisualization.HeatMap.CellVisibility|string; + + /** Specifies whether the cell color can be visible or not. + * @Default {true} + */ + showColor?: boolean; + } + + export interface DefaultColumnStyle { + + /** Specifies the alignment mode of the heat map column. + * @Default {ej.HeatMap.TextAlign.Center} + */ + textAlign?: any; + + /** Specifies the template id of the heat map column header. + */ + headerTemplateID?: string; + + /** Specifies the template id of all individual cell data of the heat map. + */ + templateID?: string; + } + + export interface ItemsMappingColumnStyle { + + /** Specifies the width of the heat map column. + * @Default {0} + */ + width?: number; + + /** Specifies the text align mode of the heat map column. + * @Default {ej.HeatMap.TextAlign.Center} + */ + textAlign?: string; + + /** Specifies the template id of the column header. + */ + headerTemplateID?: string; + + /** Specifies the template id of all individual cell data. + */ + templateID?: string; + } + + export interface ItemsMappingColumn { + + /** Specifies the name of the column or row. + */ + propertyName?: string; + + /** Specifies the value of the column or row. + */ + displayName?: string; + } + + export interface ItemsMappingRow { + + /** Specifies the name of the column or row. + */ + propertyName?: string; + + /** Specifies the value of the column or row. + */ + displayName?: string; + } + + export interface ItemsMappingValue { + + /** Specifies the name of the column or row. + */ + propertyName?: string; + + /** Specifies the value of the column or row. + */ + displayName?: string; + } + + export interface ItemsMappingHeaderMapping { + + /** Specifies the name of the column or row. + */ + propertyName?: string; + + /** Specifies the value of the column or row. + */ + displayName?: string; + + /** Specifies the property and display value of the header. + * @Default {null} + */ + columnStyle?: any; + } + + export interface ItemsMapping { + + /** Column settings for the individual heat map column. + * @Default {null} + */ + columnStyle?: ItemsMappingColumnStyle; + + /** Specifies the property and display value of the column. + * @Default {null} + */ + column?: ItemsMappingColumn; + + /** Specifies the row property and display value of the heat map. + * @Default {null} + */ + row?: ItemsMappingRow; + + /** Specifies the property and display value of the column value. + * @Default {null} + */ + value?: ItemsMappingValue; + + /** Specifies the property and display value of the header. + * @Default {null} + */ + headerMapping?: ItemsMappingHeaderMapping; + + /** Specifies the property and display value of the collection of column. + * @Default {[]} + */ + columnMapping?: any[]; + } + + export interface ColorMappingCollectionLabel { + + /** Enables/disables the bold style of the heat map label. + * @Default {false} + */ + bold?: boolean; + + /** Enables/disables the italic style of the heat map label. + * @Default {false} + */ + italic?: boolean; + + /** specifies the text value of the heat map label. + */ + text?: string; + + /** Specifies the text style of the heat map label. + * @Default {ej.HeatMap.TextDecoration.None} + */ + textDecoration?: ej.datavisualization.HeatMap.TextDecoration|string; + + /** Specifies the font size of the heat map label. + * @Default {10} + */ + fontSize?: number; + + /** Specifies the font family of the heat map label. + * @Default {Arial} + */ + fontFamily?: string; + + /** Specifies the font color of the heat map label. + * @Default {black} + */ + fontColor?: string; + } + + export interface ColorMappingCollection { + + /** Specifies the color of the heat map column data. + * @Default {white} + */ + color?: string; + + /** Specifies the color values of the heat map column data. + * @Default {0} + */ + value?: number; + + /** Specifies the label properties of the heat map color. + * @Default {null} + */ + label?: ColorMappingCollectionLabel; + } + } + namespace HeatMap { + enum Associate { + //Used to set the associate of tooltip as Target + Target, + //Used to set the associate of tooltip as MouseFollow + MouseFollow, + //Used to set the associate of tooltip as MouseEnter + MouseEnter, + } + } + namespace HeatMap { + enum Horizontal { + //Used to display the tooltip horizontally on left side of rows/columns + Left, + //Used to display the tooltip horizontally on center side of rows/columns + Center, + //Used to display the tooltip horizontally on right side of rows/columns + Right, + } + } + namespace HeatMap { + enum Vertical { + //Used to display the tooltip horizontally on left side of rows/columns + Top, + //Used to display the tooltip horizontally on center side of rows/columns + Center, + //Used to display the tooltip horizontally on right side of rows/columns + Bottom, + } + } + namespace HeatMap { + enum Trigger { + //Tooltip can be triggered on mouse hovers + Hover, + //Tooltip can be triggered on mouse click + Click, + } + } + namespace HeatMap { + enum Effect { + //Sets tooltip animation as None + None, + //Sets tooltip animation as Fade + Fade, + //Sets tooltip animation as Slide + Slide, + } + } + namespace HeatMap { + enum CellVisibility { + //Display the content of the cell + Visible, + //Hide the content of the cell + Hidden, + } + } + namespace HeatMap { + enum TextDecoration { + //Defines a line below the text + Underline, + //Defines a line above the text + Overline, + //Defines a line through the text + LineThrough, + //Defines a normal text. This is default + None, + } + } + + class HeatMapLegend extends ej.Widget { + static fn: HeatMapLegend; + constructor(element: JQuery | Element, options?: HeatMapLegend.Model); + static Locale: any; + model: HeatMapLegend.Model; + defaults: HeatMapLegend.Model; + } + export namespace HeatMapLegend { + + export interface Model { + + /** Specifies the width of the heatmap legend. + * @Default {null} + */ + width?: any; + + /** Specifies the height of the heatmap legend. + * @Default {null} + */ + height?: any; + + /** Specifies can enable responsive mode or not for heatmap legend. + * @Default {false} + */ + isResponsive?: boolean; + + /** Specifies whether the cell label can be shown or not. + * @Default {false} + */ + showLabel?: boolean; + + /** Specifies the color values of the column data. + * @Default {[]} + */ + colorMappingCollection?: ColorMappingCollection[]; + + /** Specifies the orientation of the heatmap legend + * @Default {ej.HeatMap.LegendOrientation.Horizontal} + */ + orientation?: ej.datavisualization.HeatMap.LegendOrientation|string; + + /** Specifies the legend mode as gradient or list. + * @Default {ej.HeatMap.LegendMode.Gradient} + */ + legendMode?: ej.datavisualization.HeatMap.LegendMode|string; + } + + export interface ColorMappingCollectionLabel { + + /** Enables/disables the bold style of the heatmap legend label. + * @Default {false} + */ + bold?: boolean; + + /** Enables/disables the italic style of the heatmap legend label. + * @Default {false} + */ + italic?: boolean; + + /** specifies the text value of the heatmap legend label. + */ + text?: string; + + /** Specifies the text style of the heatmap legend label. + * @Default {ej.HeatMap.TextDecoration.None} + */ + textDecoration?: ej.datavisualization.HeatMap.TextDecoration|string; + + /** Specifies the font size of the heatmap legend label. + * @Default {10} + */ + fontSize?: number; + + /** Specifies the font family of the heatmap legend label. + * @Default {Arial} + */ + fontFamily?: string; + + /** Specifies the font color of the heatmap legend label. + * @Default {black} + */ + fontColor?: string; + } + + export interface ColorMappingCollection { + + /** Specifies the color of the heatmap legend data. + * @Default {white} + */ + color?: string; + + /** Specifies the color values of the heatmap legend column data. + * @Default {0} + */ + value?: number; + + /** Specifies the label properties of the heatmap legend color. + * @Default {null} + */ + label?: ColorMappingCollectionLabel; + } + } + namespace HeatMap { + enum LegendOrientation { + //Scales the graphic content non-uniformly to the width and height of the diagram area + Horizontal, + //Used to align the image at the top left of diagram area + Vertical, + } + } + namespace HeatMap { + enum LegendMode { + //Scales the graphic content non-uniformly to the width and height of the diagram area + Gradient, + //Used to align the image at the top left of diagram area + List, + } + } + + class Sparkline extends ej.Widget { + static fn: Sparkline; + constructor(element: JQuery | Element, options?: Sparkline.Model); + static Locale: any; + model: Sparkline.Model; + defaults: Sparkline.Model; + + /** Redraws the entire sparkline. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. + * @returns {void} + */ + redraw(): void; + } + export namespace Sparkline { + + export interface Model { + + /** Background color of the plot area. + * @Default {transparent} + */ + background?: string; + + /** Fill color for the sparkline series. + * @Default {#33ccff} + */ + fill?: string; + + /** Border color of the series. + * @Default {null} + */ + stroke?: string; + + /** Options for customizing the color, opacity and width of the sparkline border. + */ + border?: Border; + + /** Border width of the series. + * @Default {1} + */ + width?: number; + + /** Opacity of the series. + * @Default {1} + */ + opacity?: number; + + /** Color for series high point. + * @Default {null} + */ + highPointColor?: string; + + /** Color for series low point. + * @Default {null} + */ + lowPointColor?: string; + + /** Color for series start point. + * @Default {null} + */ + startPointColor?: string; + + /** Color for series end point. + * @Default {null} + */ + endPointColor?: string; + + /** Color for series negative point. + * @Default {null} + */ + negativePointColor?: string; + + /** Options for customizing the color, opacity of the sparkline start and end range. + */ + rangeBandSettings?: RangeBandSettings; + + /** Name of the culture based on which sparkline should be localized. + * @Default {en-US} + */ + locale?: string; + + /** Name of a field in data source, where the fill color for all the data points is generated. + */ + palette?: string; + + /** Controls whether sparkline has to be responsive or not. + * @Default {true} + */ + isResponsive?: boolean; + + /** Controls whether Sparkline has to be rendered as Canvas or SVG.Canvas rendering supports all functionalities in SVG rendering. + * @Default {false} + */ + enableCanvasRendering?: boolean; + + /** Specify to convert the date object to string, using locale settings. + * @Default {false} + */ + enableGroupSeparator?: boolean; + + /** Specifies the dataSource for the series. It can be an array of JSON objects or an instance of ej.DataManager. + * @Default {null} + */ + dataSource?: any; + + /** Name of the property in the datasource that contains x value for the series. + * @Default {null} + */ + xName?: string; + + /** Name of the property in the datasource that contains y value for the series. + * @Default {null} + */ + yName?: string; + + /** Gap or padding for sparkline. + * @Default {8} + */ + padding?: number; + + /** Specifies the type of the series to render in sparkline. + * @Default {line. See Type} + */ + type?: ej.datavisualization.Sparkline.Type|string; + + /** Specifies the theme for Sparkline. + * @Default {Flatlight. See Theme} + */ + theme?: ej.datavisualization.Sparkline.Theme|string; + + /** Options to customize the tooltip. + */ + tooltip?: Tooltip; + + /** Options for displaying and customizing marker for a data point. + */ + markerSettings?: MarkerSettings; + + /** Options to customize the Sparkline size. + */ + size?: Size; + + /** Options for customizing the color,dashArray and width of the axisLine. + */ + axisLineSettings?: AxisLineSettings; + + /** Fires before loading the sparkline. + */ + load?(e: LoadEventArgs): void; + + /** Fires after loaded the sparkline. + */ + loaded?(e: LoadedEventArgs): void; + + /** Fires before rendering trackball tooltip. You can use this event to customize the text displayed in trackball tooltip. + */ + tooltipInitialize?(e: TooltipInitializeEventArgs): void; + + /** Fires before rendering a series. This event is fired for each series in Sparkline. + */ + seriesRendering?(e: SeriesRenderingEventArgs): void; + + /** Fires when mouse is moved over a point. + */ + pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; + + /** Fires on clicking a point in sparkline. You can use this event to handle clicks made on points. + */ + pointRegionMouseClick?(e: PointRegionMouseClickEventArgs): void; + + /** Fires on moving mouse over the sparkline. + */ + sparklineMouseMove?(e: SparklineMouseMoveEventArgs): void; + + /** Fires on moving mouse outside the sparkline. + */ + sparklineMouseLeave?(e: SparklineMouseLeaveEventArgs): void; + } + + export interface LoadEventArgs { - /** parameter returns the new width, height, offsetX and offsetY values of the element that is being resized - */ - newValue?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** parameter returns the previous width,height,offsetX and offsetY values of the element that is being resized - */ - oldValue?: any; + /** Instance of the sparkline model object + */ + model?: any; - /** parameter returns the state of resizing(starting,resizing,completed) - */ - resizeState?: string; + /** Name of the event + */ + type?: string; + } - /** parameter returns the difference between new and old value - */ - offset?: any; + export interface LoadedEventArgs { + + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** Instance of the sparkline model object + */ + model?: any; - /** parameter returns the direction of the node is resized - */ - direction?: string; - } + /** Name of the event + */ + type?: string; + } - export interface TextChangeEventArgs { + export interface TooltipInitializeEventArgs { - /** parameter returns the node that contains the text being edited - */ - element?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** parameter returns the new text - */ - value?: string; + /** Instance of the sparkline model object + */ + model?: any; - /** parameter returns the keyCode of the key entered - */ - keyCode?: string; + /** Name of the event + */ + type?: string; - /** parameter returns the id of the diagram - */ - diagramId?: string; + /** X Location of the trackball tooltip in pixels + */ + locationX?: any; - /** parameter to specify whether or not to cancel the event - */ - cancel?: boolean; - } + /** Y Location of the trackball tooltip in pixels + */ + locationY?: any; - export interface CreateEventArgs { + /** Index of the point for which trackball tooltip is displayed + */ + pointIndex?: number; - /** Returns the diagram model. - */ - model?: any; - - /** Returns the name of the event - */ - type?: string; - - /** parameter returns the id of the diagram - */ - diagramId?: string; - } - - export interface BackgroundImage { - - /** Defines how to align the background image over the diagram area. - * @Default {ej.datavisualization.Diagram.ImageAlignment.XMidYMid} - */ - alignment?: ej.datavisualization.Diagram.ImageAlignment | string; - } - - export interface CommandManagerCommandsGesture { - - /** Sets the key value, on recognition of which the command will be executed. - * @Default {ej.datavisualization.Diagram.Keys.None} - */ - key?: ej.datavisualization.Diagram.Keys | string; - - /** Sets a combination of key modifiers, on recognition of which the command will be executed. - * @Default {ej.datavisualization.Diagram.KeyModifiers.None} - */ - keyModifiers?: ej.datavisualization.Diagram.KeyModifiers | string; - } - - export interface CommandManagerCommands { - - /** A method that defines whether the command is executable at the moment or not. - */ - canExecute?: any; - - /** A method that defines what to be executed when the key combination is recognized. - */ - execute?: any; - - /** Defines a combination of keys and key modifiers, on recognition of which the command will be executed - */ - gesture?: CommandManagerCommandsGesture; - - /** Defines any additional parameters that are required at runtime - * @Default {null} - */ - parameter?: any; - } - - export interface CommandManager { - - /** An object that maps a set of command names with the corresponding command objects - * @Default {{}} - */ - commands?: CommandManagerCommands; - } - - export interface ConnectorsLabelsMargin { - - /** To set the margin of the label in right direction - * @Default {0} - */ - right?: number; - - /** To set the margin of the label in left direction - * @Default {0} - */ - left?: number; - - /** To set the margin of the label in top direction - * @Default {0} - */ - top?: number; - - /** To set the margin of the label in bottom direction - * @Default {0} - */ - bottom?: number; - } - - export interface ConnectorsLabel { - - /** Defines how the label should be aligned with respect to the segment - * @Default {ej.datavisualization.Diagram.Alignment.Center} - */ - alignment?: ej.datavisualization.Diagram.Alignment | string; - - /** Enables/disables the bold style - * @Default {false} - */ - bold?: boolean; - - /** Sets the border color of the label - * @Default {transparent} - */ - borderColor?: string; - - /** Sets the border width of the label - * @Default {0} - */ - borderWidth?: number; - - /** Defines whether the label should be aligned within the connector boundaries - * @Default {true} - */ - boundaryConstraints?: boolean; - - /** Sets the fill color of the text area - * @Default {transparent} - */ - fillColor?: string; - - /** Sets the font color of the text - * @Default {black} - */ - fontColor?: string; - - /** Sets the font family of the text - * @Default {Arial} - */ - fontFamily?: string; - - /** Defines the font size of the text - * @Default {12} - */ - fontSize?: number; - - /** Sets the horizontal alignment of the label. - * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} - */ - horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment | string; - - /** Sets the hyperlink for the labels in the connectors. - * @Default {none} - */ - hyperlink?: string; - - /** Enables/disables the italic style - * @Default {false} - */ - italic?: boolean; - - /** Gets whether the label is currently being edited or not. - * @Default {ej.datavisualization.Diagram.LabelEditMode.Edit} - */ - mode?: ej.datavisualization.Diagram.LabelEditMode | string; - - /** Sets the unique identifier of the label - */ - name?: string; - - /** Sets the fraction/ratio(relative to connector) that defines the position of the label - * @Default {ej.datavisualization.Diagram.Point(0.5, 0.5)} - */ - offset?: any; - - /** Sets the fraction/ratio(relative to connector) that defines the position of the label - * @Default {ej.datavisualization.Diagram.Point(0.5, 0.5)} - */ - margin?: ConnectorsLabelsMargin; - - /** Defines the transparency of labels - * @Default {1} - */ - opacity?: number; - - /** Defines whether the label is editable or not - * @Default {false} - */ - readOnly?: boolean; - - /** Defines whether the label should be positioned whether relative to segments or connector boundaries - * @Default {ej.datavisualization.Diagram.LabelRelativeMode.SegmentPath} - */ - relativeMode?: ej.datavisualization.Diagram.LabelRelativeMode | string; - - /** Defines the angle to which the label needs to be rotated - * @Default {0} - */ - rotateAngle?: number; - - /** Sets the position of the label with respect to the total segment length - * @Default {0.5} - */ - segmentOffset?: string; - - /** Defines the label text - */ - text?: string; - - /** Defines how to align the text inside the label. - * @Default {ej.datavisualization.Diagram.TextAlign.Center} - */ - textAlign?: ej.datavisualization.Diagram.TextAlign | string; - - /** Sets how to decorate the label text. - * @Default {ej.datavisualization.Diagram.TextDecorations.None} - */ - textDecoration?: ej.datavisualization.Diagram.TextDecorations | string; - - /** Sets the vertical alignment of the label. - * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} - */ - verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment | string; - - /** Enables or disables the visibility of the label - * @Default {true} - */ - visible?: boolean; - - /** Sets the width of the label(the maximum value of label width and the connector width will be considered as label width) - * @Default {50} - */ - width?: number; - - /** Defines how the label text needs to be wrapped. - * @Default {ej.datavisualization.Diagram.TextWrapping.WrapWithOverflow} - */ - wrapping?: ej.datavisualization.Diagram.TextWrapping | string; - } - - export interface ConnectorsSegment { - - /** Sets the direction of orthogonal segment - */ - direction?: string; - - /** Describes the length of orthogonal segment - * @Default {undefined} - */ - length?: number; - - /** Describes the end point of bezier/straight segment - * @Default {Diagram.Point()} - */ - point?: ej.datavisualization.Diagram.ConnectorsSourcePoint; - - /** Defines the first control point of the bezier segment - * @Default {null} - */ - point1?: ej.datavisualization.Diagram.ConnectorsSourcePoint; - - /** Defines the second control point of bezier segment - * @Default {null} - */ - point2?: ej.datavisualization.Diagram.ConnectorsSourcePoint; - - /** Sets the type of the segment. - * @Default {ej.datavisualization.Diagram.Segments.Straight} - */ - type?: ej.datavisualization.Diagram.Segments | string; - - /** Describes the length and angle between the first control point and the start point of bezier segment - * @Default {null} - */ - vector1?: any; - - /** Describes the length and angle between the second control point and end point of bezier segment - * @Default {null} - */ - vector2?: any; - } - - export interface ConnectorsShapeMultiplicitySource { - - /** Defines the source label to connector. Applicable, if the connector is of type "UML" - * @Default {true} - */ - optional?: boolean; - - /** Defines the source label to connector. Applicable, if the connector is of type "UML" - * @Default {null} - */ - lowerBounds?: number; - - /** Defines the source label to connector. Applicable, if the connector is of type "UML" - * @Default {null} - */ - upperBounds?: number; - } - - export interface ConnectorsShapeMultiplicity { - - /** Sets the type of the multiplicity. Applicable, if the connector is of type "classifier" - * @Default {ej.datavisualization.Diagram.Multiplicity.OneToOne} - */ - type?: ej.datavisualization.Diagram.Multiplicity | string; - - /** Defines the source label to connector. Applicable, if the connector is of type "UML" - */ - source?: ConnectorsShapeMultiplicitySource; - - /** Defines the target label to connector. Applicable, if the connector is of type "UML" - * @Default {true} - */ - target?: ej.datavisualization.Diagram.ConnectorsShapeMultiplicitySource; - } - - export interface ConnectorsShape { - - /** Sets the type of the connector - * @Default {ej.datavisualization.Diagram.ConnectorShapes.BPMN} - */ - type?: ej.datavisualization.Diagram.ConnectorShapes | string; - - /** Sets the type of the flow in a BPMN Process - * @Default {ej.datavisualization.Diagram.BPMNFlows.Sequence} - */ - flow?: ej.datavisualization.Diagram.BPMNFlows | string; - - /** Sets the type of the Association in a BPMN Process - * @Default {ej.datavisualization.Diagram.AssociationFlows.Default} - */ - association?: ej.datavisualization.Diagram.AssociationFlows | string; - - /** Sets the type of the message flow. Applicable, if the connector is of type "BPMN" - * @Default {ej.datavisualization.Diagram.BPMNMessageFlows.Default} - */ - message?: ej.datavisualization.Diagram.BPMNMessageFlows | string; - - /** Sets the type of BPMN sequence flow - * @Default {ej.datavisualization.Diagram.BPMNSequenceFlows.Normal} - */ - sequence?: ej.datavisualization.Diagram.BPMNSequenceFlows | string; - - /** Defines the role of the connector in a UML Class Diagram. Applicable, if the type of the connector is "classifier". - * @Default {ej.datavisualization.Diagram.ClassifierShapes.Association} - */ - relationship?: ej.datavisualization.Diagram.ClassifierShapes | string; - - /** Defines the multiplicity option of the connector - * @Default {null} - */ - multiplicity?: ConnectorsShapeMultiplicity; - - /** Defines the shape of UMLActivity to connector. Applicable, if the connector is of type UMLActivity - * @Default {ej.datavisualization.Diagram.UMLActivityFlow.Control} - */ - ActivityFlow?: ej.datavisualization.Diagram.UMLActivityFlow | string; - } - - export interface ConnectorsSourceDecorator { - - /** Sets the border color of the source decorator - * @Default {black} - */ - borderColor?: string; - - /** Sets the border width of the decorator - * @Default {1} - */ - borderWidth?: number; - - /** Sets the fill color of the source decorator - * @Default {black} - */ - fillColor?: string; - - /** Sets the height of the source decorator - * @Default {8} - */ - height?: number; - - /** Defines the custom shape of the source decorator - */ - pathData?: string; - - /** Defines the shape of the source decorator. - * @Default {ej.datavisualization.Diagram.DecoratorShapes.Arrow} - */ - shape?: ej.datavisualization.Diagram.DecoratorShapes | string; - - /** Defines the width of the source decorator - * @Default {8} - */ - width?: number; - } - - export interface ConnectorsSourcePoint { - - /** Defines the x-coordinate of a position - * @Default {0} - */ - x?: number; - - /** Defines the y-coordinate of a position - * @Default {0} - */ - y?: number; - } - - export interface ConnectorsTargetDecorator { - - /** Sets the border color of the decorator - * @Default {black} - */ - borderColor?: string; - - /** Sets the color with which the decorator will be filled - * @Default {black} - */ - fillColor?: string; - - /** Defines the height of the target decorator - * @Default {8} - */ - height?: number; - - /** Defines the custom shape of the target decorator - */ - pathData?: string; - - /** Defines the shape of the target decorator. - * @Default {ej.datavisualization.Diagram.DecoratorShapes.Arrow} - */ - shape?: ej.datavisualization.Diagram.DecoratorShapes | string; - - /** Defines the width of the target decorator - * @Default {8} - */ - width?: number; - } - - export interface Connector { - - /** To maintain additional information about connectors - * @Default {null} - */ - addInfo?: any; - - /** Defines the width of the line bridges - * @Default {10} - */ - bridgeSpace?: number; - - /** Enables or disables the behaviors of connectors. - * @Default {ej.datavisualization.Diagram.ConnectorConstraints.Default} - */ - constraints?: ej.datavisualization.Diagram.ConnectorConstraints | string; - - /** Defines the radius of the rounded corner - * @Default {0} - */ - cornerRadius?: number; - - /** Configures the styles of shapes - */ - cssClass?: string; - - /** Sets the horizontal alignment of the connector. Applicable, if the parent of the connector is a container. - * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Left} - */ - horizontalAlign?: ej.datavisualization.Diagram.HorizontalAlignment | string; - - /** A collection of JSON objects where each object represents a label. - * @Default {[]} - */ - labels?: ConnectorsLabel[]; - - /** Sets the stroke color of the connector - * @Default {black} - */ - lineColor?: string; - - /** Sets the pattern of dashes and gaps used to stroke the path of the connector - */ - lineDashArray?: string; - - /** Defines the padding value to ease the interaction with connectors - * @Default {10} - */ - lineHitPadding?: number; - - /** Sets the width of the line - * @Default {1} - */ - lineWidth?: number; - - /** Defines the minimum space to be left between the bottom of parent bounds and the connector. Applicable, if the parent is a container. - * @Default {0} - */ - marginBottom?: number; - - /** Defines the minimum space to be left between the left of parent bounds and the connector. Applicable, if the parent is a container. - * @Default {0} - */ - marginLeft?: number; - - /** Defines the minimum space to be left between the right of parent bounds and the connector. Applicable, if the parent is a container. - * @Default {0} - */ - marginRight?: number; - - /** Defines the minimum space to be left between the top of parent bounds and the connector. Applicable, if the parent is a container. - * @Default {0} - */ - marginTop?: number; - - /** Sets a unique name for the connector - */ - name?: string; - - /** Defines the transparency of the connector - * @Default {1} - */ - opacity?: number; - - /** Defines the size and preview size of the node to add that to symbol palette. To explore palette item, refer Palette Item - * @Default {null} - */ - paletteItem?: any; - - /** Sets the parent name of the connector. - */ - parent?: string; - - /** An array of JSON objects where each object represents a segment - * @Default {[ { type:straight } ]} - */ - segments?: ConnectorsSegment[]; - - /** Defines the role/meaning of the connector - * @Default {null} - */ - shape?: ConnectorsShape; - - /** Defines the source decorator of the connector - * @Default {{ shape:arrow, width: 8, height:8, borderColor:black, fillColor:black }} - */ - sourceDecorator?: ConnectorsSourceDecorator; - - /** Sets the source node of the connector - */ - sourceNode?: string; - - /** Defines the space to be left between the source node and the source point of a connector - * @Default {0} - */ - sourcePadding?: number; - - /** Describes the start point of the connector - * @Default {ej.datavisualization.Diagram.Point()} - */ - sourcePoint?: ConnectorsSourcePoint; - - /** Sets the source port of the connector - */ - sourcePort?: string; - - /** Defines the target decorator of the connector - * @Default {{ shape:arrow, width: 8, height:8, borderColor:black, fillColor:black }} - */ - targetDecorator?: ConnectorsTargetDecorator; - - /** Sets the target node of the connector - */ - targetNode?: string; - - /** Defines the space to be left between the target node and the target point of the connector - * @Default {0} - */ - targetPadding?: number; - - /** Describes the end point of the connector - * @Default {ej.datavisualization.Diagram.Point()} - */ - targetPoint?: ej.datavisualization.Diagram.ConnectorsSourcePoint; - - /** Sets the targetPort of the connector - */ - targetPort?: string; - - /** Defines the tooltip that should be shown when the mouse hovers over connector. For tooltip properties, refer Tooltip - * @Default {null} - */ - tooltip?: any; - - /** To set the vertical alignment of connector (Applicable,if the parent is group). - * @Default {ej.datavisualization.Diagram.VerticalAlignment.Top} - */ - verticalAlign?: ej.datavisualization.Diagram.VerticalAlignment | string; - - /** Enables or disables the visibility of connector - * @Default {true} - */ - visible?: boolean; - - /** Sets the z-index of the connector - * @Default {0} - */ - zOrder?: number; - } - - export interface ContextMenuItem { - - /** Defines the text for the collection of context menu item - * @Default {null} - */ - text?: string; - - /** Defines the name for the collection of context menu items - * @Default {null} - */ - name?: string; - - /** Defines the image url for the collection of context menu items - * @Default {null} - */ - imageUrl?: string; - - /** Defines the CssClass for the collection of context menu items - * @Default {null} - */ - cssClass?: string; - - /** Defines the collection of sub items for the context menu items - * @Default {[]} - */ - subItems?: any[]; - } - - export interface ContextMenu { - - /** Defines the collection of context menu items - * @Default {[]} - */ - items?: ContextMenuItem[]; - - /** To set whether to display the default context menu items or not - * @Default {false} - */ - showCustomMenuItemsOnly?: boolean; - } - - export interface DataSourceSettingsCrudAction { - - /** Specifies the create method which is used to get the nodes to be added from client side to the server side - * @Default {null} - */ - create?: string; - - /** Specifies the update method which is used to get the updated data from client side to the server side - * @Default {null} - */ - update?: string; - - /** Specifies the destroy method which is used to get the deleted items data from client side to the server side - * @Default {null} - */ - destroy?: string; - - /** Specifies the read method to get the created nodes from client side to the server side - * @Default {null} - */ - read?: string; - } - - export interface DataSourceSettingsConnectionDataSourceCrudAction { - - /** Specifies the create method which is used to get the connectors to be added from client side to the server side - * @Default {null} - */ - create?: string; - - /** Specifies the update method which is used to get the updated connectors from client side to the server side - * @Default {null} - */ - update?: string; - - /** Specifies the destroy method which is used to get the deleted items data from client side to the server side - * @Default {null} - */ - destroy?: string; - - /** Specifies the read method which is used to get the data from client side to the server side - * @Default {null} - */ - read?: string; - } - - export interface DataSourceSettingsConnectionDataSource { - - /** Sets the datasource for the connection datasource settings items. - * @Default {null} - */ - dataSource?: string; - - /** Sets the unique id of the connection data source item - * @Default {null} - */ - id?: string; - - /** Sets the sourcenode of the connection data source item - * @Default {null} - */ - sourceNode?: string; - - /** Sets the targetnode of the connection data source item - * @Default {null} - */ - targetNode?: string; - - /** Sets the sourcepoint-x value of the connection data source item - * @Default {null} - */ - sourcePointX?: string; - - /** Sets the sourcePoint-y value of the connection data source item - * @Default {null} - */ - sourcePointY?: string; - - /** Sets the targetPoint-x value of the connection data source item - * @Default {null} - */ - targetPointX?: string; - - /** Sets the targetPoint-y value of the connection data source item - * @Default {null} - */ - targetPointY?: string; - - /** Specifies the method name which is used to get updated connectors from client side to the server side - * @Default {null} - */ - crudAction?: DataSourceSettingsConnectionDataSourceCrudAction; - - /** Specifies the customfields to get the updated data from client side to the server side - * @Default {[]} - */ - customFields?: any[]; - } - - export interface DataSourceSettings { - - /** Defines the data source either as a collection of objects or as an instance of ej.DataManager - * @Default {null} - */ - dataSource?: any; - - /** Sets the unique id of the data source items - */ - id?: string; - - /** Defines the parent id of the data source item - * @Default {''} - */ - parent?: string; - - /** Describes query to retrieve a set of data from the specified datasource - * @Default {null} - */ - query?: string; - - /** Sets the unique id of the root data source item - */ - root?: string; - - /** Describes the name of the table on which the specified query has to be executed - * @Default {null} - */ - tableName?: string; - - /** Specifies the method name which is used to get the updated data from client side to the server side - * @Default {null} - */ - crudAction?: DataSourceSettingsCrudAction; - - /** Specifies the customfields to get the updated data from client side to the server side - * @Default {[]} - */ - customFields?: any[]; - - /** Defines the data source either as a collection of objects or as an instance of ej.DataManager - * @Default {null} - */ - connectionDataSource?: DataSourceSettingsConnectionDataSource; - } - - export interface DefaultSettings { - - /** Initializes the default connector properties - * @Default {null} - */ - connector?: any; - - /** Initializes the default properties of groups - * @Default {null} - */ - group?: any; - - /** Initializes the default properties for nodes - * @Default {null} - */ - node?: any; - } - - export interface HistoryManager { - - /** A method that takes a history entry as argument and returns whether the specific entry can be popped or not - */ - canPop?: any; - - /** A method that ends grouping the changes - */ - closeGroupAction?: any; - - /** A method that removes the history of a recent change made in diagram - */ - pop?: any; - - /** A method that allows to track the custom changes made in diagram - */ - push?: any; - - /** Defines what should be happened while trying to restore a custom change - * @Default {null} - */ - redo?: any; - - /** The redoStack property is used to get the number of redo actions to be stored on the history manager. Its an read-only property and the collection should not be modified. - * @Default {[]} - */ - redoStack?: any[]; - - /** The stackLimit property used to restrict the undo and redo actions to a certain limit. - * @Default {null} - */ - stackLimit?: number; - - /** A method that starts to group the changes to revert/restore them in a single undo or redo - */ - startGroupAction?: any; - - /** Defines what should be happened while trying to revert a custom change - */ - undo?: any; - - /** The undoStack property is used to get the number of undo actions to be stored on the history manager. Its an read-only property and the collection should not be modified. - * @Default {[]} - */ - undoStack?: any[]; - } - - export interface Layout { - - /** Specifies the custom bounds to arrange/align the layout - * @Default {ej.datavisualization.Diagram.Rectangle()} - */ - bounds?: any; - - /** Defines the fixed node with reference to which, the layout will be arranged and fixed node will not be repositioned - */ - fixedNode?: string; - - /** Customizes the orientation of trees/sub trees. For orientations, see Chart Orientations. For chart types, see Chart Types - * @Default {null} - */ - getLayoutInfo?: any; - - /** Defines a method to customize the segments based on source and target nodes. - * @Default {null} - */ - getConnectorSegments?: any; - - /** Sets the space to be horizontally left between nodes - * @Default {30} - */ - horizontalSpacing?: number; - - /** Defines the space to be left between layout bounds and layout. - * @Default {ej.datavisualization.Diagram.Margin()} - */ - margin?: any; - - /** Defines how to horizontally align the layout within the layout bounds - * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} - */ - horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment | string; - - /** Defines how to vertically align the layout within the layout bounds - * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} - */ - verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment | string; - - /** Sets the orientation/direction to arrange the diagram elements. - * @Default {ej.datavisualization.Diagram.LayoutOrientations.TopToBottom} - */ - orientation?: ej.datavisualization.Diagram.LayoutOrientations | string; - - /** Sets the type of the layout based on which the elements will be arranged. - * @Default {ej.datavisualization.Diagram.LayoutTypes.None} - */ - type?: ej.datavisualization.Diagram.LayoutTypes | string; - - /** Sets the space to be vertically left between nodes - * @Default {30} - */ - verticalSpacing?: number; - } - - export interface NodesAnnotation { - - /** Sets the angle between the BPMN shape and the annotation - * @Default {0} - */ - angle?: number; - - /** Sets the direction of the text annotation - * @Default {ej.datavisualization.Diagram.BPMNAnnotationDirections.Left} - */ - direction?: ej.datavisualization.Diagram.BPMNAnnotationDirection | string; - - /** Sets the height of the text annotation - * @Default {20} - */ - height?: number; - - /** Sets the distance between the BPMN shape and the annotation - * @Default {0} - */ - length?: number; - - /** Defines the additional information about the flow object in a BPMN Process - */ - text?: string; - - /** Sets the width of the text annotation - * @Default {20} - */ - width?: number; - } - - export interface NodesClassAttribute { - - /** Sets the name of the attribute - */ - name?: string; - - /** Sets the data type of attribute - */ - type?: string; - - /** Defines the visibility of the attribute - * @Default {ej.datavisualization.Diagram.ScopeValueDefaults.Public} - */ - scope?: string; - } - - export interface NodesClassMethod { - - /** Sets the visibility of the method. - * @Default {ej.datavisualization.Diagram.ScopeValueDefaults.Public} - */ - scope?: string; - } - - export interface NodesClass { - - /** Sets the name of class. - */ - name?: string; - - /** Defines the collection of attributes - * @Default {[]} - */ - attributes?: NodesClassAttribute[]; - - /** Defines the collection of methods of a Class. - * @Default {[]} - */ - methods?: NodesClassMethod[]; - } - - export interface NodesCollapseIcon { - - /** Sets the border color for collapse icon of node - * @Default {black} - */ - borderColor?: string; - - /** Sets the border width for collapse icon of node - * @Default {1} - */ - borderWidth?: number; - - /** Sets the fill color for collapse icon of node - * @Default {white} - */ - fillColor?: string; - - /** Defines the height for collapse icon of node - * @Default {15} - */ - height?: number; - - /** Sets the horizontal alignment of the icon. - * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} - */ - horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment | string; - - /** To set the margin for the collapse icon of node - * @Default {ej.datavisualization.Diagram.Margin()} - */ - margin?: any; - - /** Sets the fraction/ratio(relative to node) that defines the position of the icon - * @Default {ej.datavisualization.Diagram.Point(0.5, 1)} - */ - offset?: any; - - /** Defines the shape of the collapsed state of the node. - * @Default {ej.datavisualization.Diagram.IconShapes.None} - */ - shape?: ej.datavisualization.Diagram.IconShapes | string; - - /** Sets the vertical alignment of the icon. - * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} - */ - verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment | string; - } - - export interface NodesContainer { - - /** Defines the orientation of the container. Applicable, if the group is a container. - * @Default {vertical} - */ - orientation?: string; - - /** Sets the type of the container. Applicable if the group is a container. - * @Default {ej.datavisualization.Diagram.ContainerType.Canvas} - */ - type?: ej.datavisualization.Diagram.ContainerType | string; - } - - export interface NodesData { - - /** Sets the type of the BPMN Data object - * @Default {ej.datavisualization.Diagram.BPMNDataObjects.None} - */ - type?: ej.datavisualization.Diagram.BPMNDataObjects | string; - - /** Defines whether the BPMN data object is a collection or not - * @Default {false} - */ - collection?: boolean; - } - - export interface NodesEnumerationMember { - - /** Sets the name of the enumeration member - */ - name?: string; - } - - export interface NodesEnumeration { - - /** Sets the name of the Enumeration - */ - name?: string; - - /** Defines the collection of enumeration members - * @Default {[]} - */ - members?: NodesEnumerationMember[]; - } - - export interface NodesExpandIcon { - - /** Sets the border color for expand icon of node - * @Default {black} - */ - borderColor?: string; - - /** Sets the border width for expand icon of node - * @Default {1} - */ - borderWidth?: number; - - /** Sets the fill color for expand icon of node - * @Default {white} - */ - fillColor?: string; - - /** Defines the height for expand icon of node - * @Default {15} - */ - height?: number; - - /** Sets the horizontal alignment of the icon. - * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} - */ - horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment | string; - - /** To set the margin for the expand icon of node - * @Default {ej.datavisualization.Diagram.Margin()} - */ - margin?: any; - - /** Sets the fraction/ratio(relative to node) that defines the position of the icon - * @Default {ej.datavisualization.Diagram.Point(0.5, 1)} - */ - offset?: any; - - /** Defines the shape of the expanded state of the node. - * @Default {ej.datavisualization.Diagram.IconShapes.None} - */ - shape?: ej.datavisualization.Diagram.IconShapes | string; - - /** Sets the vertical alignment of the icon. - * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} - */ - verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment | string; - } - - export interface NodesGradientLinearGradient { - - /** Defines the different colors and the region of color transitions - * @Default {[]} - */ - stops?: any[]; - - /** Defines the left most position(relative to node) of the rectangular region that needs to be painted - * @Default {0} - */ - x1?: number; - - /** Defines the right most position(relative to node) of the rectangular region that needs to be painted - * @Default {0} - */ - x2?: number; - - /** Defines the top most position(relative to node) of the rectangular region that needs to be painted - * @Default {0} - */ - y1?: number; - - /** Defines the bottom most position(relative to node) of the rectangular region that needs to be painted - * @Default {0} - */ - y2?: number; - } - - export interface NodesGradientRadialGradient { - - /** Defines the position of the outermost circle - * @Default {0} - */ - cx?: number; - - /** Defines the outer most circle of the radial gradient - * @Default {0} - */ - cy?: number; - - /** Defines the innermost circle of the radial gradient - * @Default {0} - */ - fx?: number; - - /** Defines the innermost circle of the radial gradient - * @Default {0} - */ - fy?: number; - - /** Defines the different colors and the region of color transitions. - * @Default {[]} - */ - stops?: any[]; - } - - export interface NodesGradientStop { - - /** Sets the color to be filled over the specified region - */ - color?: string; - - /** Sets the position where the previous color transition ends and a new color transition starts - * @Default {0} - */ - offset?: number; - - /** Describes the transparency level of the region - * @Default {1} - */ - opacity?: number; - } - - export interface NodesGradient { - - /** Paints the node with linear color transitions - */ - LinearGradient?: NodesGradientLinearGradient; - - /** Paints the node with radial color transitions. A focal point defines the beginning of the gradient, and a circle defines the end point of the gradient. - */ - RadialGradient?: NodesGradientRadialGradient; - - /** Defines the color and a position where the previous color transition ends and a new color transition starts - */ - Stop?: NodesGradientStop; - } - - export interface NodesInterfaceAttribute { - - /** Sets the name of the attribute - */ - name?: string; - - /** Sets the type of the attribute - */ - type?: string; - - /** Sets the visibility of the attribute - */ - scope?: string; - } - - export interface NodesInterfaceMethod { - - /** Sets the visibility of the method - */ - scope?: string; - } - - export interface NodesInterface { - - /** Sets the name of the interface - */ - name?: string; - - /** Defines a collection of attributes of the interface - * @Default {[]} - */ - attributes?: NodesInterfaceAttribute[]; - - /** Defines the collection of public methods of an interface - * @Default {[]} - */ - methods?: NodesInterfaceMethod[]; - } - - export interface NodesLabel { - - /** Enables/disables the bold style - * @Default {false} - */ - bold?: boolean; - - /** Sets the border color of the label - * @Default {transparent} - */ - borderColor?: string; - - /** Sets the border width of the label - * @Default {0} - */ - borderWidth?: number; - - /** Sets the fill color of the text area - * @Default {transparent} - */ - fillColor?: string; - - /** Sets the font color of the text - * @Default {black} - */ - fontColor?: string; - - /** Sets the font family of the text - * @Default {Arial} - */ - fontFamily?: string; - - /** Defines the font size of the text - * @Default {12} - */ - fontSize?: number; - - /** Sets the horizontal alignment of the label. - * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} - */ - horizontalAlignment?: ej.datavisualization.Diagram.HorizontalAlignment | string; - - /** Enables/disables the italic style - * @Default {false} - */ - italic?: boolean; - - /** To set the margin of the label - * @Default {ej.datavisualization.Diagram.Margin()} - */ - margin?: any; - - /** Gets whether the label is currently being edited or not. - * @Default {ej.datavisualization.Diagram.LabelEditMode.Edit} - */ - mode?: ej.datavisualization.Diagram.LabelEditMode | string; - - /** Sets the unique identifier of the label - */ - name?: string; - - /** Sets the fraction/ratio(relative to node) that defines the position of the label - * @Default {ej.datavisualization.Diagram.Point(0.5, 0.5)} - */ - offset?: any; - - /** Defines the transparency of the labels - * @Default {1} - */ - opacity?: number; - - /** Sets the overflowType of the labels - * @Default {ej.datavisualization.Diagram.OverflowType.Ellipsis} - */ - overflowType?: ej.datavisualization.Diagram.OverflowType | string; - - /** Defines whether the label is editable or not - * @Default {false} - */ - readOnly?: boolean; - - /** Defines the angle to which the label needs to be rotated - * @Default {0} - */ - rotateAngle?: number; - - /** Defines the label text - */ - text?: string; - - /** Defines how to align the text inside the label. - * @Default {ej.datavisualization.Diagram.TextAlign.Center} - */ - textAlign?: ej.datavisualization.Diagram.TextAlign | string; - - /** Sets how to decorate the label text. - * @Default {ej.datavisualization.Diagram.TextDecorations.None} - */ - textDecoration?: ej.datavisualization.Diagram.TextDecorations | string; - - /** Defines the overflowed content is displayed or not. - * @Default {false} - */ - textOverflow?: boolean; - - /** Sets the vertical alignment of the label. - * @Default {ej.datavisualization.Diagram.VerticalAlignment.Center} - */ - verticalAlignment?: ej.datavisualization.Diagram.VerticalAlignment | string; - - /** Enables or disables the visibility of the label - * @Default {true} - */ - visible?: boolean; - - /** Sets the width of the label(the maximum value of label width and the node width will be considered as label width) - * @Default {50} - */ - width?: number; - - /** Defines how the label text needs to be wrapped. - * @Default {ej.datavisualization.Diagram.TextWrapping.WrapWithOverflow} - */ - wrapping?: ej.datavisualization.Diagram.TextWrapping | string; - } - - export interface NodesLane { - - /** Defines the width of lane - * @Default {0} - */ - width?: number; - - /** Defines the height of lane - * @Default {0} - */ - height?: number; - - /** Defines the z-index of the lane - * @Default {0} - */ - zorder?: number; - - /** Allows to maintain additional information about lane - * @Default {{}} - */ - addInfo?: any; - - /** An array of objects where each object represents a child node of the lane - * @Default {[]} - */ - children?: any[]; - - /** Defines the fill color of the lane - * @Default {white} - */ - fillColor?: string; - - /** Defines the header of the lane - * @Default {{ text: Function, fontSize: 11 }} - */ - header?: any; - - /** Defines the object as a lane - * @Default {false} - */ - isLane?: boolean; - - /** Sets the unique identifier of the lane - */ - name?: string; - - /** Sets the orientation of the lane. - * @Default {vertical} - */ - orientation?: string; - } - - export interface NodesPaletteItem { - - /** Defines whether the symbol should be drawn at its actual size regardless of precedence factors or not - * @Default {true} - */ - enableScale?: boolean; - - /** Defines the height of the symbol - * @Default {0} - */ - height?: number; - - /** Defines the margin of the symbol item - * @Default {{ left: 4, right: 4, top: 4, bottom: 4 }} - */ - margin?: any; - - /** Defines the preview height of the symbol - * @Default {undefined} - */ - previewHeight?: number; - - /** Defines the preview width of the symbol - * @Default {undefined} - */ - previewWidth?: number; - - /** Defines the width of the symbol - * @Default {0} - */ - width?: number; - } - - export interface NodesPhase { - - /** Defines the header of the smaller regions - * @Default {null} - */ - label?: any; - - /** Defines the line color of the splitter that splits adjacent phases. - * @Default {#606060} - */ - lineColor?: string; - - /** Sets the dash array that used to stroke the phase splitter - * @Default {3,3} - */ - lineDashArray?: string; - - /** Sets the lineWidth of the phase - * @Default {1} - */ - lineWidth?: number; - - /** Sets the unique identifier of the phase - */ - name?: string; - - /** Sets the length of the smaller region(phase) of a swimlane - * @Default {100} - */ - offset?: number; - - /** Sets the orientation of the phase - * @Default {horizontal} - */ - orientation?: string; - - /** Sets the type of the object as phase - * @Default {phase} - */ - type?: string; - } - - export interface NodesPort { - - /** Sets the border color of the port - * @Default {#1a1a1a} - */ - borderColor?: string; - - /** Sets the stroke width of the port - * @Default {1} - */ - borderWidth?: number; - - /** Defines the space to be left between the port bounds and its incoming and outgoing connections. - * @Default {0} - */ - connectorPadding?: number; - - /** Defines whether connections can be created with the port - * @Default {ej.datavisualization.Diagram.PortConstraints.Connect} - */ - constraints?: ej.datavisualization.Diagram.PortConstraints | string; - - /** Sets the fill color of the port - * @Default {white} - */ - fillColor?: string; - - /** Sets the unique identifier of the port - */ - name?: string; - - /** Defines the position of the port as fraction/ ratio relative to node - * @Default {ej.datavisualization.Diagram.Point(0, 0)} - */ - offset?: any; - - /** Defines the path data to draw the port. Applicable, if the port shape is path. - */ - pathData?: string; - - /** Defines the shape of the port. - * @Default {ej.datavisualization.Diagram.PortShapes.Square} - */ - shape?: ej.datavisualization.Diagram.PortShapes | string; - - /** Defines the size of the port - * @Default {8} - */ - size?: number; - - /** Defines when the port should be visible. - * @Default {ej.datavisualization.Diagram.PortVisibility.Default} - */ - visibility?: ej.datavisualization.Diagram.PortVisibility | string; - } - - export interface NodesShadow { - - /** Defines the angle of the shadow relative to node - * @Default {45} - */ - angle?: number; - - /** Sets the distance to move the shadow relative to node - * @Default {5} - */ - distance?: number; - - /** Defines the opaque of the shadow - * @Default {0.7} - */ - opacity?: number; - } - - export interface NodesSubProcess { - - /** Defines whether the BPMN sub process is without any prescribed order or not - * @Default {false} - */ - adhoc?: boolean; - - /** Sets the boundary of the BPMN process - * @Default {ej.datavisualization.Diagram.BPMNBoundary.Default} - */ - boundary?: ej.datavisualization.Diagram.BPMNBoundary | string; - - /** Sets whether the BPMN subprocess is triggered as a compensation of a specific activity - * @Default {false} - */ - compensation?: boolean; - - /** Sets whether the BPMN subprocess is triggered as a collapsed of a specific activity - * @Default {true} - */ - collapsed?: boolean; - - /** Sets the type of the event by which the sub-process will be triggered - * @Default {ej.datavisualization.Diagram.BPMNEvents.Start} - */ - event?: ej.datavisualization.Diagram.BPMNEvents | string; - - /** Defines the collection of events that need to be appended with BPMN Sub-Process - */ - events?: any[]; - - /** Defines the loop type of a sub process. - * @Default {ej.datavisualization.Diagram.BPMNLoops.None} - */ - loop?: ej.datavisualization.Diagram.BPMNLoops | string; - - /** Defines the children for BPMN's SubProcess - * @Default {[]} - */ - Processes?: any[]; - - /** Defines the type of the event trigger - * @Default {ej.datavisualization.Diagram.BPMNTriggers.Message} - */ - trigger?: ej.datavisualization.Diagram.BPMNTriggers | string; - - /** Defines the type of a sub process - * @Default {ej.datavisualization.Diagram.BPMNSubProcessTypes.None} - */ - type?: ej.datavisualization.Diagram.BPMNSubProcessTypes | string; - } - - export interface NodesTask { - - /** To set whether the task is a global task or not - * @Default {false} - */ - call?: boolean; - - /** Sets whether the task is triggered as a compensation of another specific activity - * @Default {false} - */ - compensation?: boolean; - - /** Sets the loop type of a BPMN task. - * @Default {ej.datavisualization.Diagram.BPMNLoops.None} - */ - loop?: ej.datavisualization.Diagram.BPMNLoops | string; - - /** Sets the type of the BPMN task. - * @Default {ej.datavisualization.Diagram.BPMNTasks.None} - */ - type?: ej.datavisualization.Diagram.BPMNTasks | string; - } - - export interface Node { - - /** Defines the type of BPMN Activity. Applicable, if the node is a BPMN activity. - * @Default {ej.datavisualization.Diagram.BPMNActivity.Task} - */ - activity?: ej.datavisualization.Diagram.BPMNActivity | string; - - /** To maintain additional information about nodes - * @Default {{}} - */ - addInfo?: any; - - /** Defines the additional information of a process. It is not directly related to the message flows or sequence flows of the process. - * @Default {ej.datavisualization.Diagram.BPMNTextAnnotation()} - */ - annotation?: NodesAnnotation; - - /** Sets the border color of node - * @Default {black} - */ - borderColor?: string; - - /** Sets the pattern of dashes and gaps to stroke the border - */ - borderDashArray?: string; - - /** Sets the border width of the node - * @Default {1} - */ - borderWidth?: number; - - /** Defines whether the group can be ungrouped or not - * @Default {true} - */ - canUngroup?: boolean; - - /** Array of JSON objects where each object represents a child node/connector - * @Default {[]} - */ - children?: any[]; - - /** Sets the type of UML classifier. Applicable, if the node is a UML Class Diagram shape. - * @Default {ej.datavisualization.Diagram.ClassifierShapes.Class} - */ - classifier?: ej.datavisualization.Diagram.ClassifierShapes | string; - - /** Defines the name, attributes and methods of a Class. Applicable, if the node is a Class. - * @Default {null} - */ - class?: NodesClass; - - /** Defines the state of the node is collapsed. - */ - collapseIcon?: NodesCollapseIcon; - - /** Defines the distance to be left between a node and its connections(In coming and out going connections). - * @Default {0} - */ - connectorPadding?: number; - - /** Enables or disables the default behaviors of the node. - * @Default {ej.datavisualization.Diagram.NodeConstraints.Default} - */ - constraints?: ej.datavisualization.Diagram.NodeConstraints | string; - - /** Defines how the child objects need to be arranged(Either in any predefined manner or automatically). Applicable, if the node is a group. - * @Default {null} - */ - container?: NodesContainer; - - /** Defines the corner radius of rectangular shapes. - * @Default {0} - */ - cornerRadius?: number; - - /** Configures the styles of shapes - */ - cssClass?: string; - - /** Defines the BPMN data object - */ - data?: NodesData; - - /** Defines an Enumeration in a UML Class Diagram - * @Default {null} - */ - enumeration?: NodesEnumeration; - - /** Sets the type of the BPMN Events. Applicable, if the node is a BPMN event. - * @Default {ej.datavisualization.Diagram.BPMNEvents.Start} - */ - event?: ej.datavisualization.Diagram.BPMNEvents | string; - - /** Defines whether the node can be automatically arranged using layout or not - * @Default {false} - */ - excludeFromLayout?: boolean; - - /** Defines the state of the node is expanded or collapsed. - */ - expandIcon?: NodesExpandIcon; - - /** Defines the fill color of the node - * @Default {white} - */ - fillColor?: string; - - /** Sets the type of the BPMN Gateway. Applicable, if the node is a BPMN gateway. - * @Default {ej.datavisualization.Diagram.BPMNGateways.None} - */ - gateway?: ej.datavisualization.Diagram.BPMNGateways | string; - - /** Paints the node with a smooth transition from one color to another color - */ - gradient?: NodesGradient; - - /** Sets the type of the BPMN Shapes as group. Applicable, if the node is a BPMN. - * @Default {ej.datavisualization.Diagram.BPMNShapes} - */ - group?: any; - - /** Defines the header of a swimlane/lane - * @Default {{ text: Title, fontSize: 11 }} - */ - header?: any; - - /** Defines the height of the node - * @Default {0} - */ - height?: number; - - /** Sets the horizontal alignment of the node. Applicable, if the parent of the node is a container. - * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Left} - */ - horizontalAlign?: ej.datavisualization.Diagram.HorizontalAlignment | string; - - /** A read only collection of the incoming connectors/edges of the node - * @Default {[]} - */ - inEdges?: any[]; - - /** Defines an interface in a UML Class Diagram - * @Default {null} - */ - interface?: NodesInterface; - - /** Defines whether the sub tree of the node is expanded or collapsed - * @Default {true} - */ - isExpanded?: boolean; - - /** Sets the node as a swimlane - * @Default {false} - */ - isSwimlane?: boolean; - - /** A collection of objects where each object represents a label - * @Default {[]} - */ - labels?: NodesLabel[]; - - /** An array of objects where each object represents a lane. Applicable, if the node is a swimlane. - * @Default {[]} - */ - lanes?: NodesLane[]; - - /** Defines the minimum space to be left between the bottom of parent bounds and the node. Applicable, if the parent is a container. - * @Default {0} - */ - marginBottom?: number; - - /** Defines the minimum space to be left between the left of parent bounds and the node. Applicable, if the parent is a container. - * @Default {0} - */ - marginLeft?: number; - - /** Defines the minimum space to be left between the right of the parent bounds and the node. Applicable, if the parent is a container. - * @Default {0} - */ - marginRight?: number; - - /** Defines the minimum space to be left between the top of parent bounds and the node. Applicable, if the parent is a container. - * @Default {0} - */ - marginTop?: number; - - /** Defines the maximum height limit of the node - * @Default {0} - */ - maxHeight?: number; - - /** Defines the maximum width limit of the node - * @Default {0} - */ - maxWidth?: number; - - /** Defines the minimum height limit of the node - * @Default {0} - */ - minHeight?: number; - - /** Defines the minimum width limit of the node - * @Default {0} - */ - minWidth?: number; - - /** Sets the unique identifier of the node - */ - name?: string; - - /** Defines the position of the node on X-Axis - * @Default {0} - */ - offsetX?: number; - - /** Defines the position of the node on Y-Axis - * @Default {0} - */ - offsetY?: number; - - /** Defines the opaque of the node - * @Default {1} - */ - opacity?: number; - - /** Defines the orientation of nodes. Applicable, if the node is a swimlane. - * @Default {vertical} - */ - orientation?: string; - - /** A read only collection of outgoing connectors/edges of the node - * @Default {[]} - */ - outEdges?: any[]; - - /** Defines the minimum padding value to be left between the bottom most position of a group and its children. Applicable, if the group is a container. - * @Default {0} - */ - paddingBottom?: number; - - /** Defines the minimum padding value to be left between the left most position of a group and its children. Applicable, if the group is a container. - * @Default {0} - */ - paddingLeft?: number; - - /** Defines the minimum padding value to be left between the right most position of a group and its children. Applicable, if the group is a container. - * @Default {0} - */ - paddingRight?: number; - - /** Defines the minimum padding value to be left between the top most position of a group and its children. Applicable, if the group is a container. - * @Default {0} - */ - paddingTop?: number; - - /** Defines the size and preview size of the node to add that to symbol palette - * @Default {null} - */ - paletteItem?: NodesPaletteItem; - - /** Sets the name of the parent group - */ - parent?: string; - - /** Sets the path geometry that defines the shape of a path node - */ - pathData?: string; - - /** An array of objects, where each object represents a smaller region(phase) of a swimlane. - * @Default {[]} - */ - phases?: NodesPhase[]; - - /** Sets the height of the phase headers - * @Default {0} - */ - phaseSize?: number; - - /** Sets the ratio/ fractional value relative to node, based on which the node will be transformed(positioning, scaling and rotation) - * @Default {ej.datavisualization.Diagram.Points(0.5,0.5)} - */ - pivot?: any; - - /** Defines a collection of points to draw a polygon. Applicable, if the shape is a polygon. - * @Default {[]} - */ - points?: any[]; - - /** An array of objects where each object represents a port - * @Default {[]} - */ - ports?: NodesPort[]; - - /** Sets the angle to which the node should be rotated - * @Default {0} - */ - rotateAngle?: number; - - /** Defines the opacity and the position of shadow - * @Default {ej.datavisualization.Diagram.Shadow()} - */ - shadow?: NodesShadow; - - /** Sets the shape of the node. It depends upon the type of node. - * @Default {ej.datavisualization.Diagram.BasicShapes.Rectangle} - */ - shape?: ej.datavisualization.Diagram.BasicShapes | ej.datavisualization.Diagram.FlowShapes | ej.datavisualization.Diagram.BPMNShapes | ej.datavisualization.Diagram.UMLActivityShapes | string; - - /** Sets the source path of the image. Applicable, if the type of the node is image. - */ - source?: string; - - /** Defines the sub process of a BPMN Activity. Applicable, if the type of the BPMN activity is sub process. - * @Default {ej.datavisualization.Diagram.BPMNSubProcess()} - */ - subProcess?: NodesSubProcess; - - /** Defines the task of the BPMN activity. Applicable, if the type of activity is set as task. - * @Default {ej.datavisualization.Diagram.BPMNTask()} - */ - task?: NodesTask; - - /** Sets the id of svg/html templates. Applicable, if the node is HTML or native. - */ - templateId?: string; - - /** Defines the textBlock of a text node - * @Default {null} - */ - textBlock?: any; - - /** Defines the tooltip that should be shown when the mouse hovers over node. For tooltip properties, refer Tooltip - * @Default {null} - */ - tooltip?: any; - - /** Sets the type of BPMN Event Triggers. - * @Default {ej.datavisualization.Diagram.BPMNTriggers.None} - */ - trigger?: ej.datavisualization.Diagram.BPMNTriggers | string; - - /** Defines the type of the node. - * @Default {ej.datavisualization.Diagram.Shapes.Basic} - */ - type?: ej.datavisualization.Diagram.Shapes | string; - - /** Sets the vertical alignment of a node. Applicable, if the parent of a node is a container. - * @Default {ej.datavisualization.Diagram.VerticalAlignment.Top} - */ - verticalAlign?: ej.datavisualization.Diagram.VerticalAlignment | string; - - /** Defines the visibility of the node - * @Default {true} - */ - visible?: boolean; - - /** Defines the width of the node - * @Default {0} - */ - width?: number; - - /** Defines the z-index of the node - * @Default {0} - */ - zOrder?: number; - } - - export interface PageSettings { - - /** Defines the maximum distance to be left between the object and the scroll bar to trigger auto scrolling - * @Default {{ left: 15, top: 15, right: 15, bottom: 15 }} - */ - autoScrollBorder?: any; - - /** Sets whether multiple pages can be created to fit all nodes and connectors - * @Default {false} - */ - multiplePage?: boolean; - - /** Defines the background color of diagram pages - * @Default {#ffffff} - */ - pageBackgroundColor?: string; - - /** Defines the page border color - * @Default {#565656} - */ - pageBorderColor?: string; - - /** Sets the border width of diagram pages - * @Default {0} - */ - pageBorderWidth?: number; - - /** Defines the height of a page - * @Default {null} - */ - pageHeight?: number; - - /** Defines the page margin - * @Default {24} - */ - pageMargin?: number; - - /** Sets the orientation of the page. - * @Default {ej.datavisualization.Diagram.PageOrientations.Portrait} - */ - pageOrientation?: ej.datavisualization.Diagram.PageOrientations | string; - - /** Defines the height of a diagram page - * @Default {null} - */ - pageWidth?: number; - - /** Defines the scrollable area of diagram. Applicable, if the scroll limit is "limited". - * @Default {null} - */ - scrollableArea?: any; - - /** Defines the scrollable region of diagram. - * @Default {ej.datavisualization.Diagram.ScrollLimit.Infinite} - */ - scrollLimit?: ej.datavisualization.Diagram.ScrollLimit | string; - - /** Defines the draggable region of diagram elements. - * @Default {ej.datavisualization.Diagram.BoundaryConstraints.Infinite} - */ - boundaryConstraints?: ej.datavisualization.Diagram.BoundaryConstraints | string; - - /** Enables or disables the page breaks - * @Default {false} - */ - showPageBreak?: boolean; - } - - export interface ScrollSettings { - - /** Allows to read the zoom value of diagram - * @Default {0} - */ - currentZoom?: number; - - /** Sets the horizontal scroll offset - * @Default {0} - */ - horizontalOffset?: number; - - /** Allows to extend the scrollable region that is based on the scroll limit - * @Default {{left: 0, right: 0, top:0, bottom: 0}} - */ - padding?: any; - - /** Sets the vertical scroll offset - * @Default {0} - */ - verticalOffset?: number; - - /** Allows to read the view port height of the diagram - * @Default {0} - */ - viewPortHeight?: number; - - /** Allows to read the view port width of the diagram - * @Default {0} - */ - viewPortWidth?: number; - } - - export interface SelectedItemsUserHandle { - - /** Defines the name of the user handle - */ - name?: string; - - /** Defines the background color of the user handle - * @Default {#2382c3} - */ - backgroundColor?: string; - - /** Sets the border color of the user handle - * @Default {transparent} - */ - borderColor?: string; - - /** Defines whether the user handle should be added, when more than one element is selected - * @Default {false} - */ - enableMultiSelection?: boolean; - - /** Sets the stroke color of the user handle - * @Default {transparent} - */ - pathColor?: string; - - /** Defines the custom shape of the user handle - */ - pathData?: string; - - /** Defines the position of the user handle - * @Default {ej.datavisualization.Diagram.UserHandlePositions.BottomCenter} - */ - position?: ej.datavisualization.Diagram.UserHandlePositions | string; - - /** Defines the size of the user handle - * @Default {8} - */ - size?: number; - - /** Defines the interactive behaviors of the user handle - */ - tool?: any; - - /** Defines the visibility of the user handle - * @Default {true} - */ - visible?: boolean; - } - - export interface SelectedItems { - - /** A read only collection of the selected items - * @Default {[]} - */ - children?: any[]; - - /** Controls the visibility of selector. - * @Default {ej.datavisualization.Diagram.SelectorConstraints.All} - */ - constraints?: ej.datavisualization.Diagram.SelectorConstraints | string; - - /** Defines a method that dynamically enables/ disables the interaction with multiple selection. - * @Default {null} - */ - getConstraints?: any; - - /** Sets the height of the selected items - * @Default {0} - */ - height?: number; - - /** Sets the x position of the selector - * @Default {0} - */ - offsetX?: number; - - /** Sets the y position of the selector - * @Default {0} - */ - offsetY?: number; - - /** Sets the angle to rotate the selected items - * @Default {0} - */ - rotateAngle?: number; - - /** Sets the angle to rotate the selected items. For tooltip properties, refer Tooltip - * @Default {ej.datavisualization.Diagram.Tooltip()} - */ - tooltip?: any; - - /** A collection of frequently used commands that will be added around the selector - * @Default {[]} - */ - userHandles?: SelectedItemsUserHandle[]; - - /** Sets the width of the selected items - * @Default {0} - */ - width?: number; - } - - export interface SnapSettingsHorizontalGridLines { - - /** Defines the line color of horizontal grid lines - * @Default {lightgray} - */ - lineColor?: string; - - /** Specifies the pattern of dashes and gaps used to stroke horizontal grid lines - */ - lineDashArray?: string; - - /** A pattern of lines and gaps that defines a set of horizontal gridlines - * @Default {[1.25, 18.75, 0.25, 19.75, 0.25, 19.75, 0.25, 19.75, 0.25, 19.75]} - */ - linesInterval?: any[]; - - /** Specifies a set of intervals to snap the objects - * @Default {[20]} - */ - snapInterval?: any[]; - } - - export interface SnapSettingsVerticalGridLines { - - /** Defines the line color of horizontal grid lines - * @Default {lightgray} - */ - lineColor?: string; - - /** Specifies the pattern of dashes and gaps used to stroke horizontal grid lines - */ - lineDashArray?: string; - - /** A pattern of lines and gaps that defines a set of horizontal gridlines - * @Default {[1.25, 18.75, 0.25, 19.75, 0.25, 19.75, 0.25, 19.75, 0.25, 19.75]} - */ - linesInterval?: any[]; - - /** Specifies a set of intervals to snap the objects - * @Default {[20]} - */ - snapInterval?: any[]; - } - - export interface SnapSettings { - - /** Enables or disables snapping nodes/connectors to objects - * @Default {true} - */ - enableSnapToObject?: boolean; - - /** Defines the appearance of horizontal gridlines - */ - horizontalGridLines?: SnapSettingsHorizontalGridLines; - - /** Defines the angle by which the object needs to be snapped - * @Default {5} - */ - snapAngle?: number; - - /** Defines and sets the snapConstraints - */ - snapConstraints?: ej.datavisualization.Diagram.SnapConstraints | string; - - /** Defines the minimum distance between the selected object and the nearest object - * @Default {5} - */ - snapObjectDistance?: number; - - /** Defines the appearance of horizontal gridlines - */ - verticalGridLines?: SnapSettingsVerticalGridLines; - } - - export interface TooltipAlignment { - - /** Defines the horizontal alignment of tooltip. - * @Default {ej.datavisualization.Diagram.HorizontalAlignment.Center} - */ - horizontal?: ej.datavisualization.Diagram.HorizontalAlignment | string; - - /** Defines the vertical alignment of tooltip. - * @Default {ej.datavisualization.Diagram.VerticalAlignment.Bottom} - */ - vertical?: ej.datavisualization.Diagram.VerticalAlignment | string; - } - - export interface Tooltip { - - /** Aligns the tooltip around nodes/connectors - */ - alignment?: TooltipAlignment; - - /** Sets the margin of the tooltip - * @Default {{ left: 5, right: 5, top: 5, bottom: 5 }} - */ - margin?: any; - - /** Defines whether the tooltip should be shown at the mouse position or around node. - * @Default {ej.datavisualization.Diagram.RelativeMode.Object} - */ - relativeMode?: ej.datavisualization.Diagram.RelativeMode | string; - - /** Sets the svg/html template to be bound with tooltip - */ - templateId?: string; - } - } - namespace Diagram { - enum ImageAlignment { - //Scales the graphic content non-uniformly to the width and height of the diagram area - None, - //Used to align the image at the top left of diagram area - XMinYMin, - //Used to align the image at the left center of diagram area - XMinYMid, - //Used to align the image at the bottom left of diagram area - XMinYMax, - //Used to align the image at the top center of diagram area - XMidYMin, - //Used to align the image at the center of diagram area - XMidYMid, - //Used to align the image at the bottom center of diagram area - XMidYMax, - //Used to align the image at the top right of diagram area/node - XMaxYMin, - //Used to align the image at the right center of diagram area/node - XMaxYMid, - //Used to align the image at the bottom right of diagram area/node - XMaxYMax, - } - } - namespace Diagram { - enum BridgeDirection { - //Used to set the direction of line bridges as left - Left, - //Used to set the direction of line bridges as right - Right, - //Used to set the direction of line bridges as top - Top, - //Used to set the direction of line bridges as bottom - Bottom, - } - } - namespace Diagram { - enum Keys { - //No key pressed. - None, - //The A key. - A, - //The B key. - B, - //The C key. - C, - //The D Key. - D, - //The E key. - E, - //The F key. - F, - //The G key. - G, - //The H Key. - H, - //The I key. - I, - //The J key. - J, - //The K key. - K, - //The L Key. - L, - //The M key. - M, - //The N key. - N, - //The O key. - O, - //The P Key. - P, - //The Q key. - Q, - //The R key. - R, - //The S key. - S, - //The T Key. - T, - //The U key. - U, - //The V key. - V, - //The W key. - W, - //The X key. - X, - //The Y key. - Y, - //The Z key. - Z, - //The 0 key. - Number0, - //The 1 key. - Number1, - //The 2 key. - Number2, - //The 3 key. - Number3, - //The 4 key. - Number4, - //The 5 key. - Number5, - //The 6 key. - Number6, - //The 7 key. - Number7, - //The 8 key. - Number8, - //The 9 key. - Number9, - //The LEFT ARROW key. - Left, - //The UP ARROW key. - Up, - //The RIGHT ARROW key. - Right, - //The DOWN ARROW key. - Down, - //The ESC key. - Escape, - //The DEL key. - Delete, - //The TAB key. - Tab, - //The ENTER key. - Enter, - } - } - namespace Diagram { - enum KeyModifiers { - //No modifiers are pressed. - None, - //The ALT key. - Alt, - //The CTRL key. - Control, - //The SHIFT key. - Shift, - } - } - namespace Diagram { - enum ConnectorConstraints { - //Disable all connector Constraints - None, - //Enables connector to be selected - Select, - //Enables connector to be Deleted - Delete, - //Enables connector to be Dragged - Drag, - //Enables connectors source end to be selected - DragSourceEnd, - //Enables connectors target end to be selected - DragTargetEnd, - //Enables control point and end point of every segment in a connector for editing - DragSegmentThumb, - //Enables bridging to the connector - Bridging, - //Enables label of node to be Dragged - DragLabel, - //Enables bridging to the connector - InheritBridging, - //Enables user interaction to the connector - PointerEvents, - //Enables the contrast between clean edges of connector over rendering speed and geometric precision - CrispEdges, - //Enables all constraints - Default, - } - } - namespace Diagram { - enum HorizontalAlignment { - //Used to align text horizontally on left side of node/connector - Left, - //Used to align text horizontally on center of node/connector - Center, - //Used to align text horizontally on right side of node/connector - Right, - } - } - namespace Diagram { - enum Alignment { - //Used to align the label either top or left(before) of the connector segment - Before, - //Used to align the label at center of the connector segment - Center, - //Used to align the label either bottom or right(after) of the connector segment - After, - } - } - namespace Diagram { - enum LabelRelativeMode { - //Sets the relativeMode as SegmentPath - SegmentPath, - //Sets the relativeMode as SegmentBounds - SegmentBounds, - } - } - namespace Diagram { - enum Segments { - //Used to specify the lines as Straight - Straight, - //Used to specify the lines as Orthogonal - Orthogonal, - //Used to specify the lines as Bezier - Bezier, - } - } - namespace Diagram { - enum ConnectorShapes { - //Used to specify connector type as BPMN - BPMN, - //Used to specify connector type as UMLClassifier - UMLClassifier, - //Used to specify connector type as UMLActivity - UMLActivity, - } - } - namespace Diagram { - enum BPMNFlows { - //Used to specify the Sequence flow in a BPMN Process - Sequence, - //Used to specify the Association flow in a BPMN Process - Association, - //Used to specify the Message flow in a BPMN Process - Message, - } - } - namespace Diagram { - enum AssociationFlows { - //Used to notate default association in a BPMN Process - Default, - //Used to notate directional association in a BPMN Process - Directional, - //User to notate bi-directional association in a BPMN Process - BiDirectional, - } - } - namespace Diagram { - enum BPMNMessageFlows { - //Used to notate the default message flow in a BPMN Process - Default, - //Used to notate the instantiating message flow in a BPMN Process - InitiatingMessage, - //Used to notate the non-instantiating message flow in a BPMN Process - NonInitiatingMessage, - } - } - namespace Diagram { - enum BPMNSequenceFlows { - //Used to notate the normal sequence flow in a BPMN Process - Normal, - //Used to notate the conditional sequence flow in a BPMN Process - Conditional, - //Used to notate the default sequence flow in a BPMN Process - Default, - } - } - namespace Diagram { - enum ClassifierShapes { - //Used to define a Class - Class, - //Used to define an Interface - Interface, - //Used to define an Enumeration - Enumeration, - //Used to notate association in UML Class Diagram - Association, - //Used to notate aggregation in a UML Class Diagram - Aggregation, - //Used to notate composition in a UML Class Diagram - Composition, - //Used to notate dependency in a UML Class Diagram - Dependency, - //Used to notate inheritance in a UML Class Diagram - Inheritance, - } - } - namespace Diagram { - enum Multiplicity { - //Each entity instance is related to a single instance of another entity - OneToOne, - //An entity instance can be related to multiple instances of the other entities - OneToMany, - //Multiple instances of an entity can be related to a single instance of the other entity - ManyToOne, - //The entity instances can be related to multiple instances of each other - ManyToMany, - } - } - namespace Diagram { - enum UMLActivityFlow { - //Defines a activity flow as Object in UML Activity Diagram - Object, - //Defines a activity flow as Control in UML Activity Diagram - Control, - //Defines a activity flow as Exception in UML Activity Diagram - Exception, - } - } - namespace Diagram { - enum DecoratorShapes { - //Used to set decorator shape as none - None, - //Used to set decorator shape as Arrow - Arrow, - //Used to set decorator shape as Open Arrow - OpenArrow, - //Used to set decorator shape as Circle - Circle, - //Used to set decorator shape as Diamond - Diamond, - //Used to set decorator shape as path - Path, - } - } - namespace Diagram { - enum VerticalAlignment { - //Used to align text Vertically on left side of node/connector - Top, - //Used to align text Vertically on center of node/connector - Center, - //Used to align text Vertically on bottom of node/connector - Bottom, - } - } - namespace Diagram { - enum DiagramConstraints { - //Disables all DiagramConstraints - None, - //Enables/Disables PageEditing - PageEditable, - //Enables/Disables Bridging - Bridging, - //Enables/Disables Zooming - Zoomable, - //Enables/Disables panning on horizontal axis - PannableX, - //Enables/Disables panning on vertical axis - PannableY, - //Enables/Disables Panning - Pannable, - //Enables/Disables undo actions - Undoable, - //Enables/Disables the sharp edges - CrispEdges, - //Enables all Constraints - Default, - } - } - namespace Diagram { - enum LabelRenderingMode { - //Sets the labelRenderingMode as Html - Html, - //Sets the labelRenderingMode as Svg - Svg, - } - } - namespace Diagram { - enum LayoutOrientations { - //Used to set LayoutOrientation from top to bottom - TopToBottom, - //Used to set LayoutOrientation from bottom to top - BottomToTop, - //Used to set LayoutOrientation from left to right - LeftToRight, - //Used to set LayoutOrientation from right to left - RightToLeft, - } - } - namespace Diagram { - enum LayoutTypes { - //Used not to set any specific layout - None, - //Used to set layout type as hierarchical layout - HierarchicalTree, - //Used to set layout type as organnizational chart - OrganizationalChart, - } - } - namespace Diagram { - enum BPMNActivity { - //Used to set BPMN Activity as None - None, - //Used to set BPMN Activity as Task - Task, - //Used to set BPMN Activity as SubProcess - SubProcess, - } - } - namespace Diagram { - enum BPMNAnnotationDirection { - //Used to set the direction of BPMN Annotation as left - Left, - //Used to set the direction of BPMN Annotation as right - Right, - //Used to set the direction of BPMN Annotation as top - Top, - //Used to set the direction of BPMN Annotation as bottom - Bottom, - } - } - namespace Diagram { - enum IconShapes { - //Used to set collapse icon shape as none - None, - //Used to set collapse icon shape as Arrow(Up/Down) - Arrow, - //Used to set collapse icon shape as Plus - Plus, - //Used to set collapse icon shape as Minus - Minus, - //Used to set collapse icon shape as path - Path, - //Used to set icon shape as template - Template, - //Used to set icon shape as image - Image, - } - } - namespace Diagram { - enum NodeConstraints { - //Disable all node Constraints - None, - //Enables node to be selected - Select, - //Enables node to be Deleted - Delete, - //Enables node to be Dragged - Drag, - //Enables node to be Rotated - Rotate, - //Enables node to be connected - Connect, - //Enables node to be resize north east - ResizeNorthEast, - //Enables node to be resize east - ResizeEast, - //Enables node to be resize south east - ResizeSouthEast, - //Enables node to be resize south - ResizeSouth, - //Enables node to be resize south west - ResizeSouthWest, - //Enables node to be resize west - ResizeWest, - //Enables node to be resize north west - ResizeNorthWest, - //Enables node to be resize north - ResizeNorth, - //Enables node to be Resized - Resize, - //Enables shadow - Shadow, - //Enables label of node to be Dragged - DragLabel, - //Enables panning should be done while node dragging - AllowPan, - //Enables Proportional resize for node - AspectRatio, - //Enables the user interaction with the node - PointerEvents, - //Enables contrast between clean edges for the node over rendering speed and geometric precision - CrispEdges, - //Enables all node constraints - Default, - } - } - namespace Diagram { - enum ContainerType { - //Sets the container type as Canvas - Canvas, - //Sets the container type as Stack - Stack, - } - } - namespace Diagram { - enum BPMNDataObjects { - //Used to notate the Input type BPMN data object - Input, - //Used to notate the Output type BPMN data object - Output, - //Used to set BPMN data object type as None - None, - } - } - namespace Diagram { - enum BPMNEvents { - //Used to set BPMN Event as Start - Start, - //Used to set BPMN Event as Intermediate - Intermediate, - //Used to set BPMN Event as End - End, - //Used to set BPMN Event as NonInterruptingStart - NonInterruptingStart, - //Used to set BPMN Event as NonInterruptingIntermediate - NonInterruptingIntermediate, - //Used to set BPMN Event as ThrowingIntermediate - ThrowingIntermediate, - } - } - namespace Diagram { - enum BPMNGateways { - //Used to set BPMN Gateway as None - None, - //Used to set BPMN Gateway as Exclusive - Exclusive, - //Used to set BPMN Gateway as Inclusive - Inclusive, - //Used to set BPMN Gateway as Parallel - Parallel, - //Used to set BPMN Gateway as Complex - Complex, - //Used to set BPMN Gateway as EventBased - EventBased, - //Used to set BPMN Gateway as ExclusiveEventBased - ExclusiveEventBased, - //Used to set BPMN Gateway as ParallelEventBased - ParallelEventBased, - } - } - namespace Diagram { - enum LabelEditMode { - //Used to set label edit mode as edit - Edit, - //Used to set label edit mode as view - View, - } - } - namespace Diagram { - enum OverflowType { - //Set overflow Type as ellipsis - Ellipsis, - //Set overflow Type as Clip - Clip, - } - } - namespace Diagram { - enum TextAlign { - //Used to align text on left side of node/connector - Left, - //Used to align text on center of node/connector - Center, - //Used to align text on Right side of node/connector - Right, - } - } - namespace Diagram { - enum TextDecorations { - //Used to set text decoration of the label as Underline - Underline, - //Used to set text decoration of the label as Overline - Overline, - //Used to set text decoration of the label as LineThrough - LineThrough, - //Used to set text decoration of the label as None - None, - } - } - namespace Diagram { - enum TextWrapping { - //Disables wrapping - NoWrap, - //Enables Line-break at normal word break points - Wrap, - //Enables Line-break at normal word break points with longer word overflows - WrapWithOverflow, - } - } - namespace Diagram { - enum PortConstraints { - //Disable all constraints - None, - //Enables connections with connector - Connect, - //Enables to create the connection when mouse hover on the port. - ConnectOnDrag, - } - } - namespace Diagram { - enum PortShapes { - //Used to set port shape as X - X, - //Used to set port shape as Circle - Circle, - //Used to set port shape as Square - Square, - //Used to set port shape as Path - Path, - } - } - namespace Diagram { - enum PortVisibility { - //Set the port visibility as Visible - Visible, - //Set the port visibility as Hidden - Hidden, - //Port get visible when hover connector on node - Hover, - //Port gets visible when connect connector to node - Connect, - //Specifies the port visibility as default - Default, - } - } - namespace Diagram { - enum BasicShapes { - //Used to specify node Shape as Rectangle - Rectangle, - //Used to specify node Shape as Ellipse - Ellipse, - //Used to specify node Shape as Path - Path, - //Used to specify node Shape as Polygon - Polygon, - //Used to specify node Shape as Triangle - Triangle, - //Used to specify node Shape as Plus - Plus, - //Used to specify node Shape as Star - Star, - //Used to specify node Shape as Pentagon - Pentagon, - //Used to specify node Shape as Heptagon - Heptagon, - //Used to specify node Shape as Octagon - Octagon, - //Used to specify node Shape as Trapezoid - Trapezoid, - //Used to specify node Shape as Decagon - Decagon, - //Used to specify node Shape as RightTriangle - RightTriangle, - //Used to specify node Shape as Cylinder - Cylinder, - } - } - namespace Diagram { - enum FlowShapes { - //Used to specify node Shape as Process - Process, - //Used to specify node Shape as Decision - Decision, - //Used to specify node Shape as Document - Document, - //Used to specify node Shape as PreDefinedProcess - PreDefinedProcess, - //Used to specify node Shape as Terminator - Terminator, - //Used to specify node Shape as PaperTap - PaperTap, - //Used to specify node Shape as DirectData - DirectData, - //Used to specify node Shape as SequentialData - SequentialData, - //Used to specify node Shape as Sort - Sort, - //Used to specify node Shape as MultiDocument - MultiDocument, - //Used to specify node Shape as Collate - Collate, - //Used to specify node Shape as SummingJunction - SummingJunction, - //Used to specify node Shape as Or - Or, - //Used to specify node Shape as InternalStorage - InternalStorage, - //Used to specify node Shape as Extract - Extract, - //Used to specify node Shape as ManualOperation - ManualOperation, - //Used to specify node Shape as Merge - Merge, - //Used to specify node Shape as OffPageReference - OffPageReference, - //Used to specify node Shape as SequentialAccessStorage - SequentialAccessStorage, - //Used to specify node Shape as Annotation1 - Annotation1, - //Used to specify node Shape as Annotation2 - Annotation2, - //Used to specify node Shape as Data - Data, - //Used to specify node Shape as Card - Card, - } - } - namespace Diagram { - enum BPMNShapes { - //Used to specify node Shape as Event - Event, - //Used to specify node Shape as Gateway - Gateway, - //Used to specify node Shape as Message - Message, - //Used to specify node Shape as DataObject - DataObject, - //Used to specify node Shape as DataSource - DataSource, - //Used to specify node Shape as Activity - Activity, - //Used to specify node Shape as Group - Group, - } - } - namespace Diagram { - enum UMLActivityShapes { - //Used to set UML ActivityShapes as Action - Action, - //Used to set UML ActivityShapes as Decision - Decision, - //Used to set UML ActivityShapes as MergeNode - MergeNode, - //Used to set UML ActivityShapes as InitialNode - InitialNode, - //Used to set UML ActivityShapes as FinalNode - FinalNode, - //Used to set UML ActivityShapes as ForkNode - ForkNode, - //Used to set UML ActivityShapes as JoinNode - JoinNode, - //Used to set UML ActivityShapes as TimeEvent - TimeEvent, - //Used to set UML ActivityShapes as AcceptingEvent - AcceptingEvent, - //Used to set UML ActivityShapes as SendSignal - SendSignal, - //Used to set UML ActivityShapes as ReceiveSignal - ReceiveSignal, - //Used to set UML ActivityShapes as StructuredNode - StructuredNode, - //Used to set UML ActivityShapes as Note - Note, - } - } - namespace Diagram { - enum BPMNBoundary { - //Used to set BPMN SubProcess's Boundary as Default - Default, - //Used to set BPMN SubProcess's Boundary as Call - Call, - //Used to set BPMN SubProcess's Boundary as Event - Event, - } - } - namespace Diagram { - enum BPMNLoops { - //Used to set BPMN Activity's Loop as None - None, - //Used to set BPMN Activity's Loop as Standard - Standard, - //Used to set BPMN Activity's Loop as ParallelMultiInstance - ParallelMultiInstance, - //Used to set BPMN Activity's Loop as SequenceMultiInstance - SequenceMultiInstance, - } - } - namespace Diagram { - enum BPMNSubProcessTypes { - //Used to set BPMN SubProcess type as None - None, - //Used to set BPMN SubProcess type as Transaction - Transaction, - //Used to set BPMN SubProcess type as Event - Event, - } - } - namespace Diagram { - enum BPMNTasks { - //Used to set BPMN Task Type as None - None, - //Used to set BPMN Task Type as Service - Service, - //Used to set BPMN Task Type as Receive - Receive, - //Used to set BPMN Task Type as Send - Send, - //Used to set BPMN Task Type as InstantiatingReceive - InstantiatingReceive, - //Used to set BPMN Task Type as Manual - Manual, - //Used to set BPMN Task Type as BusinessRule - BusinessRule, - //Used to set BPMN Task Type as User - User, - //Used to set BPMN Task Type as Script - Script, - //Used to set BPMN Task Type as Parallel - Parallel, - } - } - namespace Diagram { - enum BPMNTriggers { - //Used to set Event Trigger as None - None, - //Used to set Event Trigger as Message - Message, - //Used to set Event Trigger as Timer - Timer, - //Used to set Event Trigger as Escalation - Escalation, - //Used to set Event Trigger as Link - Link, - //Used to set Event Trigger as Error - Error, - //Used to set Event Trigger as Compensation - Compensation, - //Used to set Event Trigger as Signal - Signal, - //Used to set Event Trigger as Multiple - Multiple, - //Used to set Event Trigger as Parallel - Parallel, - //Used to set Event Trigger as Conditional - Conditional, - //Used to set Event Trigger as Termination - Termination, - //Used to set Event Trigger as Cancel - Cancel, - } - } - namespace Diagram { - enum Shapes { - //Used to specify node type as Text - Text, - //Used to specify node type as Image - Image, - //Used to specify node type as Html - Html, - //Used to specify node type as Native - Native, - //Used to specify node type as Basic - Basic, - //Used to specify node type as Flow - Flow, - //Used to specify node type as BPMN - BPMN, - //Used to specify node type as UMLClassifier - UMLClassifier, - //Used to specify node type as UMLActivity - UMLActivity, - } - } - namespace Diagram { - enum PageOrientations { - //Used to set orientation as Landscape - Landscape, - //Used to set orientation as portrait - Portrait, - } - } - namespace Diagram { - enum ScrollLimit { - //Used to set scrollLimit as Infinite - Infinite, - //Used to set scrollLimit as Diagram - Diagram, - //Used to set scrollLimit as Limited - Limited, - } - } - namespace Diagram { - enum BoundaryConstraints { - //Used to set boundaryConstraints as Infinite - Infinite, - //Used to set boundaryConstraints as Diagram - Diagram, - //Used to set boundaryConstraints as Page - Page, - } - } - namespace Diagram { - enum SelectorConstraints { - //Hides the selector - None, - //Sets the visibility of rotation handle as visible - Rotator, - //Sets the visibility of resize handles as visible - Resizer, - //Sets the visibility of user handles as visible - UserHandles, - //Sets the visibility of all selection handles as visible - All, - } - } - namespace Diagram { - enum UserHandlePositions { - //Set the position of the userhandle as topleft - TopLeft, - //Set the position of the userhandle as topcenter - TopCenter, - //Set the position of the userhandle as topright - TopRight, - //Set the position of the userhandle as middleleft - MiddleLeft, - //Set the position of the userhandle as middleright - MiddleRight, - //Set the position of the userhandle as bottomleft - BottomLeft, - //Set the position of the userhandle as bottomcenter - BottomCenter, - //Set the position of the userhandle as bottom right - BottomRight, - } - } - namespace Diagram { - enum SnapConstraints { - //Enables node to be snapped to horizontal gridlines - None, - //Enables node to be snapped to vertical gridlines - SnapToHorizontalLines, - //Enables node to be snapped to horizontal gridlines - SnapToVerticalLines, - //Enables node to be snapped to gridlines - SnapToLines, - //Enable horizontal lines - ShowHorizontalLines, - //Enable vertical lines - ShowVerticalLines, - //Enable both horizontal and vertical lines - ShowLines, - //Enable all the constraints - All, - } - } - namespace Diagram { - enum Tool { - //Disables all Tools - None, - //Enables/Disables SingleSelect tool - SingleSelect, - //Enables/Disables MultiSelect tool - MultipleSelect, - //Enables/Disables ZoomPan tool - ZoomPan, - //Enables/Disables DrawOnce tool - DrawOnce, - //Enables/Disables ContinuousDraw tool - ContinuesDraw, - } - } - namespace Diagram { - enum RelativeMode { - //Shows tooltip around the node - Object, - //Shows tooltip at the mouse position - Mouse, - } - } - namespace Diagram { - enum FileFormats { - //Used to export the diagram into JPG format. - JPG, - //Used to export the diagram into PNG format. - PNG, - //Used to export the diagram into BMP format. - BMP, - //Used to export the diagram into SVG format. - SVG, - } - } - namespace Diagram { - enum ExportModes { - //Used to export the diagram as a file. - Download, - //Used to export the diagram as raw data. - Data, - } - } - namespace Diagram { - enum Region { - //Used to export the content of the diagram only. - Content, - //Used to export the page region of the diagram. - PageSettings, - } - } - namespace Diagram { - enum Stretch { - //The diagram content preserves its original size. - None, - //The diagram content is resized to fill the destination dimensions. The aspect ratio is not preserved. - Fill, - //The diagram content is resized to fit in the destination dimensions while it preserves its native aspect ratio. - Uniform, - //The diagram content is resized to fill the destination dimensions while it preserves its native aspect ratio. If the aspect ratio of the destination rectangle differs from the source, - //the source content is clipped to fit in the destination dimensions. - UniformToFill, - } - } - namespace Diagram { - enum FitMode { - //Used to fit the diagram content based on page size. - Page, - //Used to fit the diagram content based on diagram width. - Width, - //Used to fit the diagram content based on diagram height. - Height, - } - } - namespace Diagram { - enum ZoomCommand { - //Used to zoom in the Diagram - ZoomIn, - //Used to zoom out the diagram - ZoomOut, - } - } - - class HeatMap extends ej.Widget { - static fn: HeatMap; - constructor(element: JQuery | Element, options?: HeatMap.Model); - static Locale: any; - model: HeatMap.Model; - defaults: HeatMap.Model; - } - export namespace HeatMap { - - export interface Model { - - /** Specifies the width of the heat map. - * @Default {null} - */ - width?: any; - - /** Specifies the width of the heat map. - * @Default {null} - */ - height?: any; - - /** Specifies the name of the heat map. - * @Default {null} - */ - id?: number; - - /** Enables or disables tooltip of heatmap - * @Default {true} - */ - showTooltip?: boolean; - - /** Defines the tooltip that should be shown when the mouse hovers over rows/columns. - */ - tooltipSettings?: TooltipSettings; - - /** Specifies the source data of the heat map. - * @Default {[]} - */ - itemsSource?: any; - - /** Specifies the property of the heat map cell. - * @Default {Null} - */ - heatMapCell?: HeatMapCell; - - /** Specifies can enable responsive mode or not for heat map. - * @Default {false} - */ - isResponsive?: boolean; - - /** Specifies whether the virtualization can be enable or not. - * @Default {false} - */ - enableVirtualization?: boolean; - - /** Specifies the default column properties for all the column style not specified in column properties. - * @Default {[]} - */ - defaultColumnStyle?: DefaultColumnStyle; - - /** Specifies the no of legends can sync with heat map. - * @Default {[]} - */ - legendCollection?: any[]; - - /** Specifies the property and display value of the heat map column. - * @Default {[]} - */ - itemsMapping?: ItemsMapping; - - /** Specifies the color values of the heat map column data. - * @Default {[]} - */ - colorMappingCollection?: ColorMappingCollection[]; - - /** Triggered when the mouse over on the cell. */ - cellMouseOver?(e: CellMouseOverEventArgs): void; - - /** Triggered when the mouse over on the cell. */ - cellMouseEnter?(e: CellMouseEnterEventArgs): void; - - /** Triggered when the mouse over on the cell. */ - cellMouseLeave?(e: CellMouseLeaveEventArgs): void; - - /** Triggered when the mouse over on the cell. */ - cellSelected?(e: CellSelectedEventArgs): void; - } - - export interface CellMouseOverEventArgs { - - /** Value displayed on the cell - */ - cellValue?: string; - - /** Returns the HeatMap cell data - */ - source?: any; - - /** Returns the specific HeatMap cell - */ - cell?: any; - } - - export interface CellMouseEnterEventArgs { - - /** Value displayed on the cell - */ - cellValue?: string; - - /** Returns the HeatMap cell data - */ - source?: any; - - /** Returns the specific HeatMap cell - */ - cell?: any; - } - - export interface CellMouseLeaveEventArgs { - - /** Value displayed on the cell - */ - cellValue?: string; - - /** Returns the HeatMap cell data - */ - source?: any; - - /** Returns the specific HeatMap cell - */ - cell?: any; - } - - export interface CellSelectedEventArgs { - - /** Value displayed on the cell - */ - cellValue?: string; - - /** Returns the HeatMap cell data - */ - source?: any; - - /** Returns the specific HeatMap cell - */ - cell?: any; - } - - export interface TooltipSettingsPositionTarget { + /** Text to be displayed in trackball tooltip. Use this option to add custom text in trackball tooltip + */ + currentText?: string; + } - /** Sets the arrow position again popup based on horizontal(x) value - * @Default {center} - */ - horizontal?: ej.datavisualization.HeatMap.Horizontal | string; + export interface SeriesRenderingEventArgs { - /** Sets the arrow position again popup based on vertical(y) value - * @Default {top} - */ - vertical?: ej.datavisualization.HeatMap.Vertical | string; - } + /** Set this option to true to cancel the event + */ + cancel?: boolean; - export interface TooltipSettingsPositionStem { + /** Instance of the sparkline model object + */ + model?: any; - /** Sets the arrow position again popup based on horizontal(x) value - * @Default {center} - */ - horizontal?: ej.datavisualization.HeatMap.Horizontal | string; + /** Name of the event + */ + type?: string; - /** Sets the arrow position again popup based on vertical(y) value - * @Default {bottom} - */ - vertical?: ej.datavisualization.HeatMap.Vertical | string; - } + /** Minimum x value of the data point + */ + minX?: any; - export interface TooltipSettingsPosition { + /** Minimum y value of the data point + */ + minY?: any; - /** Sets the Tooltip position against target. - */ - target?: TooltipSettingsPositionTarget; + /** Maximum x value of the data point + */ + maxX?: any; - /** Sets the arrow position again popup. - */ - stem?: TooltipSettingsPositionStem; - } + /** Maximum y value of the data point + */ + maxY?: any; + } - export interface TooltipSettingsAnimation { + export interface PointRegionMouseMoveEventArgs { - /** Defines the animation effect for the tooltip that should be shown when the mouse hovers over rows/columns. - * @Default {none} - */ - effect?: ej.datavisualization.HeatMap.Effect | string; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Defines the animation speed for the tooltip that should be shown when the mouse hovers over rows/columns. - * @Default {0} - */ - speed?: number; - } + /** Instance of the sparkline model object + */ + model?: any; - export interface TooltipSettings { - - /** Defines the tooltip that should be shown when the mouse hovers over rows/columns. - * @Default {null} - */ - templateId?: string; + /** Name of the event + */ + type?: string; - /** Defines the tooltip of associate that should be shown when the mouse hovers over rows/columns. - * @Default {mouseFollow} - */ - associate?: ej.datavisualization.HeatMap.Associate | string; - - /** Enables/ disables the balloon for the tooltip to be shown - * @Default {true} - */ - isBalloon?: boolean; + /** X-coordinate of point in pixel + */ + locationX?: number; - /** Defines various attributes of the Tooltip position - */ - position?: TooltipSettingsPosition; + /** Y-coordinate of point in pixel + */ + locationY?: number; - /** Defines the tooltip to be triggered. - * @Default {hover} - */ - trigger?: ej.datavisualization.HeatMap.Trigger | string; + /** Index of the point in series + */ + pointIndex?: number; - /** Defines the animation for the tooltip that should be shown when the mouse hovers over rows/columns. - */ - animation?: TooltipSettingsAnimation; - } - - export interface HeatMapCell { + /** Type of the series + */ + seriesType?: string; + } - /** Specifies whether the cell content can be visible or not. - * @Default {ej.HeatMap.CellVisibility.Visible} - */ - showContent?: ej.datavisualization.HeatMap.CellVisibility | string; - - /** Specifies whether the cell color can be visible or not. - * @Default {true} - */ - showColor?: boolean; - } - - export interface DefaultColumnStyle { - - /** Specifies the alignment mode of the heat map column. - * @Default {ej.HeatMap.TextAlign.Center} - */ - textAlign?: any; - - /** Specifies the template id of the heat map column header. - */ - headerTemplateID?: string; - - /** Specifies the template id of all individual cell data of the heat map. - */ - templateID?: string; - } - - export interface ItemsMappingColumnStyle { - - /** Specifies the width of the heat map column. - * @Default {0} - */ - width?: number; - - /** Specifies the text align mode of the heat map column. - * @Default {ej.HeatMap.TextAlign.Center} - */ - textAlign?: string; - - /** Specifies the template id of the column header. - */ - headerTemplateID?: string; - - /** Specifies the template id of all individual cell data. - */ - templateID?: string; - } - - export interface ItemsMappingColumn { - - /** Specifies the name of the column or row. - */ - propertyName?: string; - - /** Specifies the value of the column or row. - */ - displayName?: string; - } - - export interface ItemsMappingRow { - - /** Specifies the name of the column or row. - */ - propertyName?: string; - - /** Specifies the value of the column or row. - */ - displayName?: string; - } - - export interface ItemsMappingValue { - - /** Specifies the name of the column or row. - */ - propertyName?: string; - - /** Specifies the value of the column or row. - */ - displayName?: string; - } - - export interface ItemsMappingHeaderMapping { - - /** Specifies the name of the column or row. - */ - propertyName?: string; - - /** Specifies the value of the column or row. - */ - displayName?: string; - - /** Specifies the property and display value of the header. - * @Default {null} - */ - columnStyle?: any; - } - - export interface ItemsMapping { - - /** Column settings for the individual heat map column. - * @Default {null} - */ - columnStyle?: ItemsMappingColumnStyle; - - /** Specifies the property and display value of the column. - * @Default {null} - */ - column?: ItemsMappingColumn; - - /** Specifies the property and display value of the heat map.row - * @Default {null} - */ - row?: ItemsMappingRow; - - /** Specifies the property and display value of the column value. - * @Default {null} - */ - value?: ItemsMappingValue; - - /** Specifies the property and display value of the header. - * @Default {null} - */ - headerMapping?: ItemsMappingHeaderMapping; - - /** Specifies the property and display value of the collection of column. - * @Default {[]} - */ - columnMapping?: any[]; - } - - export interface ColorMappingCollectionLabel { - - /** Enables/disables the bold style of the heat map label. - * @Default {false} - */ - bold?: boolean; - - /** Enables/disables the italic style of the heat map label. - * @Default {false} - */ - italic?: boolean; - - /** specifies the text value of the heat map label. - */ - text?: string; - - /** Specifies the text style of the heat map label. - * @Default {ej.HeatMap.TextDecoration.None} - */ - textDecoration?: ej.datavisualization.HeatMap.TextDecoration | string; - - /** Specifies the font size of the heat map label. - * @Default {10} - */ - fontSize?: number; - - /** Specifies the font family of the heat map label. - * @Default {Arial} - */ - fontFamily?: string; - - /** Specifies the font color of the heat map label. - * @Default {black} - */ - fontColor?: string; - } - - export interface ColorMappingCollection { - - /** Specifies the color of the heat map column data. - * @Default {white} - */ - color?: string; - - /** Specifies the color values of the heat map column data. - * @Default {0} - */ - value?: number; - - /** Specifies the label properties of the heat map color. - * @Default {null} - */ - label?: ColorMappingCollectionLabel; - } - } - namespace HeatMap { - enum Associate { - //Used to set the associate of tooltip as Target - Target, - //Used to set the associate of tooltip as MouseFollow - MouseFollow, - //Used to set the associate of tooltip as MouseEnter - MouseEnter, - } - } - namespace HeatMap { - enum Horizontal { - //Used to display the tooltip horizontally on left side of rows/columns - Left, - //Used to display the tooltip horizontally on center side of rows/columns - Center, - //Used to display the tooltip horizontally on right side of rows/columns - Right, - } - } - namespace HeatMap { - enum Vertical { - //Used to display the tooltip horizontally on left side of rows/columns - Top, - //Used to display the tooltip horizontally on center side of rows/columns - Center, - //Used to display the tooltip horizontally on right side of rows/columns - Bottom, - } - } - namespace HeatMap { - enum Trigger { - //Tooltip can be triggered on mouse hovers - Hover, - //Tooltip can be triggered on mouse click - Click, - } - } - namespace HeatMap { - enum Effect { - //Sets tooltip animation as None - None, - //Sets tooltip animation as Fade - Fade, - //Sets tooltip animation as Slide - Slide, - } - } - namespace HeatMap { - enum CellVisibility { - //Display the content of the cell - Visible, - //Hide the content of the cell - Hidden, - } - } - namespace HeatMap { - enum TextDecoration { - //Defines a line below the text - Underline, - //Defines a line above the text - Overline, - //Defines a line through the text - LineThrough, - //Defines a normal text. This is default - None, - } - } - - class HeatMapLegend extends ej.Widget { - static fn: HeatMapLegend; - constructor(element: JQuery | Element, options?: HeatMapLegend.Model); - static Locale: any; - model: HeatMapLegend.Model; - defaults: HeatMapLegend.Model; - } - export namespace HeatMapLegend { - - export interface Model { - - /** Specifies the width of the heatmap legend. - * @Default {null} - */ - width?: any; - - /** Specifies the height of the heatmap legend. - * @Default {null} - */ - height?: any; - - /** Specifies can enable responsive mode or not for heatmap legend. - * @Default {false} - */ - isResponsive?: boolean; - - /** Specifies whether the cell label can be shown or not. - * @Default {false} - */ - showLabel?: boolean; - - /** Specifies the color values of the column data. - * @Default {[]} - */ - colorMappingCollection?: ColorMappingCollection[]; - - /** Specifies the orientation of the heatmap legend - * @Default {ej.HeatMap.LegendOrientation.Horizontal} - */ - orientation?: ej.datavisualization.HeatMap.LegendOrientation | string; - - /** Specifies the legend mode as gradient or list. - * @Default {ej.HeatMap.LegendMode.Gradient} - */ - legendMode?: ej.datavisualization.HeatMap.LegendMode | string; - } - - export interface ColorMappingCollectionLabel { - - /** Enables/disables the bold style of the heatmap legend label. - * @Default {false} - */ - bold?: boolean; - - /** Enables/disables the italic style of the heatmap legend label. - * @Default {false} - */ - italic?: boolean; - - /** specifies the text value of the heatmap legend label. - */ - text?: string; - - /** Specifies the text style of the heatmap legend label. - * @Default {ej.HeatMap.TextDecoration.None} - */ - textDecoration?: ej.datavisualization.HeatMap.TextDecoration | string; - - /** Specifies the font size of the heatmap legend label. - * @Default {10} - */ - fontSize?: number; - - /** Specifies the font family of the heatmap legend label. - * @Default {Arial} - */ - fontFamily?: string; - - /** Specifies the font color of the heatmap legend label. - * @Default {black} - */ - fontColor?: string; - } - - export interface ColorMappingCollection { - - /** Specifies the color of the heatmap legend data. - * @Default {white} - */ - color?: string; - - /** Specifies the color values of the heatmap legend column data. - * @Default {0} - */ - value?: number; - - /** Specifies the label properties of the heatmap legend color. - * @Default {null} - */ - label?: ColorMappingCollectionLabel; - } - } - namespace HeatMap { - enum LegendOrientation { - //Scales the graphic content non-uniformly to the width and height of the diagram area - Horizontal, - //Used to align the image at the top left of diagram area - Vertical, - } - } - namespace HeatMap { - enum LegendMode { - //Scales the graphic content non-uniformly to the width and height of the diagram area - Gradient, - //Used to align the image at the top left of diagram area - List, - } - } - - class Sparkline extends ej.Widget { - static fn: Sparkline; - constructor(element: JQuery | Element, options?: Sparkline.Model); - static Locale: any; - model: Sparkline.Model; - defaults: Sparkline.Model; - - /** Redraws the entire sparkline. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. - * @returns {void} - */ - redraw(): void; - } - export namespace Sparkline { - - export interface Model { - - /** Background color of the plot area. - * @Default {transparent} - */ - background?: string; - - /** Fill color for the sparkline series. - * @Default {#33ccff} - */ - fill?: string; - - /** Border color of the series. - * @Default {null} - */ - stroke?: string; - - /** Options for customizing the color, opacity and width of the sparkline border. - */ - border?: Border; - - /** Border width of the series. - * @Default {1} - */ - width?: number; - - /** Opacity of the series. - * @Default {1} - */ - opacity?: number; - - /** Color for series high point. - * @Default {null} - */ - highPointColor?: string; - - /** Color for series low point. - * @Default {null} - */ - lowPointColor?: string; - - /** Color for series start point. - * @Default {null} - */ - startPointColor?: string; - - /** Color for series end point. - * @Default {null} - */ - endPointColor?: string; - - /** Color for series negative point. - * @Default {null} - */ - negativePointColor?: string; - - /** Options for customizing the color, opacity of the sparkline start and end range. - */ - rangeBandSettings?: RangeBandSettings; - - /** Name of the culture based on which sparkline should be localized. - * @Default {en-US} - */ - locale?: string; - - /** Name of a field in data source, where the fill color for all the data points is generated. - */ - palette?: string; - - /** Controls whether sparkline has to be responsive or not. - * @Default {true} - */ - isResponsive?: boolean; - - /** Controls whether Sparkline has to be rendered as Canvas or SVG.Canvas rendering supports all functionalities in SVG rendering. - * @Default {false} - */ - enableCanvasRendering?: boolean; - - /** Specify to convert the date object to string, using locale settings. - * @Default {false} - */ - enableGroupSeparator?: boolean; - - /** Specifies the dataSource for the series. It can be an array of JSON objects or an instance of ej.DataManager. - * @Default {null} - */ - dataSource?: any; - - /** Name of the property in the datasource that contains x value for the series. - * @Default {null} - */ - xName?: string; - - /** Name of the property in the datasource that contains y value for the series. - * @Default {null} - */ - yName?: string; - - /** Gap or padding for sparkline. - * @Default {8} - */ - padding?: number; - - /** Specifies the type of the series to render in sparkline. - * @Default {line. See Type} - */ - type?: ej.datavisualization.Sparkline.Type | string; - - /** Specifies the theme for Sparkline. - * @Default {Flatlight. See Theme} - */ - theme?: ej.datavisualization.Sparkline.Theme | string; - - /** Options to customize the tooltip. - */ - tooltip?: Tooltip; - - /** Options for displaying and customizing marker for a data point. - */ - markerSettings?: MarkerSettings; - - /** Options to customize the Sparkline size. - */ - size?: Size; + export interface PointRegionMouseClickEventArgs { - /** Options for customizing the color,dashArray and width of the axisLine. - */ - axisLineSettings?: AxisLineSettings; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Fires before loading the sparkline. */ - load?(e: LoadEventArgs): void; - - /** Fires after loaded the sparkline. */ - loaded?(e: LoadedEventArgs): void; + /** Instance of the sparkline model object + */ + model?: any; - /** Fires before rendering trackball tooltip. You can use this event to customize the text displayed in trackball tooltip. */ - tooltipInitialize?(e: TooltipInitializeEventArgs): void; + /** Name of the event + */ + type?: string; - /** Fires before rendering a series. This event is fired for each series in Sparkline. */ - seriesRendering?(e: SeriesRenderingEventArgs): void; + /** X-coordinate of point in pixel + */ + locationX?: number; - /** Fires when mouse is moved over a point. */ - pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; + /** Y-coordinate of point in pixel + */ + locationY?: number; - /** Fires on clicking a point in sparkline. You can use this event to handle clicks made on points. */ - pointRegionMouseClick?(e: PointRegionMouseClickEventArgs): void; + /** Index of the point in series + */ + pointIndex?: number; + + /** Type of the series + */ + seriesType?: string; + } + + export interface SparklineMouseMoveEventArgs { - /** Fires on moving mouse over the sparkline. */ - sparklineMouseMove?(e: SparklineMouseMoveEventArgs): void; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Fires on moving mouse outside the sparkline. */ - sparklineMouseLeave?(e: SparklineMouseLeaveEventArgs): void; - } + /** Instance of the sparkline model object + */ + model?: any; + + /** Name of the event + */ + type?: string; + } + + export interface SparklineMouseLeaveEventArgs { + + /** Set this option to true to cancel the event + */ + cancel?: boolean; + + /** Instance of the sparkline model object + */ + model?: any; + + /** Name of the event + */ + type?: string; + } + + export interface Border { + + /** Border color of the sparkline. + * @Default {transparent} + */ + color?: string; + + /** Width of the Sparkline border. + * @Default {1} + */ + width?: number; + } + + export interface RangeBandSettings { + + /** Start value of the range band. + * @Default {null} + */ + startRange?: number; + + /** End value of the range band. + * @Default {null} + */ + endRange?: number; + + /** Range band opacity of the series. + * @Default {1} + */ + opacity?: number; + + /** Range band color of the series. + * @Default {transparent} + */ + color?: string; + } + + export interface TooltipBorder { + + /** Border color of the tooltip. + * @Default {transparent} + */ + color?: string; + + /** Border width of the tooltip. + * @Default {1} + */ + width?: number; + } + + export interface TooltipFont { + + /** Font color of the text in the tooltip. + * @Default {#111111} + */ + color?: string; + + /** Font Family for the tooltip. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the font Style for the tooltip. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Sparkline.FontStyle|string; + + /** Specifies the font weight for the tooltip. + * @Default {Regular} + */ + fontWeight?: ej.datavisualization.Sparkline.FontWeight|string; + + /** Opacity for text in the tooltip. + * @Default {1} + */ + opacity?: number; + + /** Font size for text in the tooltip. + * @Default {8px} + */ + size?: string; + } + + export interface Tooltip { + + /** Show/hides the tooltip visibility. + * @Default {false} + */ + visible?: boolean; + + /** Fill color for the sparkline tooltip. + * @Default {white} + */ + fill?: string; + + /** Custom template to the tooltip. + */ + template?: string; + + /** Options for customizing the border of the tooltip. + */ + border?: TooltipBorder; + + /** Options for customizing the font of the tooltip. + */ + font?: TooltipFont; + } + + export interface MarkerSettingsBorder { + + /** Border color of the marker shape. + * @Default {transparent} + */ + color?: string; + + /** Controls the opacity of the marker border. + * @Default {1} + */ + opacity?: number; + + /** Border width of the marker shape. + * @Default {null} + */ + width?: number; + } + + export interface MarkerSettings { + + /** Controls the opacity of the marker. + * @Default {1} + */ + opacity?: number; + + /** Controls the visibility of the marker shape. + * @Default {false} + */ + visible?: boolean; + + /** width of the marker shape. + * @Default {2} + */ + width?: number; + + /** Color of the marker shape. + * @Default {white} + */ + fill?: string; + + /** Options for customizing the border of the marker shape. + */ + border?: MarkerSettingsBorder; + } + + export interface Size { + + /** Height of the Sparkline. Height can be specified in either pixel or percentage. + * @Default {''} + */ + height?: string; + + /** Width of the Sparkline. Width can be specified in either pixel or percentage. + * @Default {''} + */ + width?: string; + } + + export interface AxisLineSettings { + + /** Controls the visibility of the axis. + * @Default {false} + */ + visible?: boolean; + + /** Color of the axis line. + * @Default {'#111111'} + */ + color?: string; + + /** Width of the axis line. + * @Default {1} + */ + width?: number; + + /** Dash array of the axis line. + * @Default {1} + */ + dashArray?: number; + } + } + namespace Sparkline { + enum Type { + //string + Area, + //string + Line, + //string + Column, + //string + Pie, + //string + WinLoss, + } + } + namespace Sparkline { + enum Theme { + //string + Azure, + //string + FlatLight, + //string + FlatDark, + //string + Azuredark, + //string + Lime, + //string + LimeDark, + //string + Saffron, + //string + SaffronDark, + //string + GradientLight, + //string + GradientDark, + } + } + namespace Sparkline { + enum FontStyle { + //string + Normal, + //string + Italic, + } + } + namespace Sparkline { + enum FontWeight { + //string + Regular, + //string + Bold, + //string + Lighter, + } + } + + class SunburstChart extends ej.Widget { + static fn: SunburstChart; + constructor(element: JQuery | Element, options?: SunburstChart.Model); + static Locale: any; + model: SunburstChart.Model; + defaults: SunburstChart.Model; + + /** Redraws the entire sunburst. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. + * @returns {void} + */ + redraw(): void; + + /** destroy the sunburst + * @returns {void} + */ + destroy(): void; + } + export namespace SunburstChart { + + export interface Model { + + /** Background color of the plot area. + * @Default {null} + */ + background?: string; + + /** Bind the data field from the data source. + * @Default {null} + */ + valueMemberPath?: string; + + /** Options for customizing the sunburst border. + */ + border?: Border; + + /** Options for customizing the sunburst segment border. + */ + segmentBorder?: SegmentBorder; + + /** Specifies the dataSource to the sunburst. + * @Default {null} + */ + dataSource?: any; + + /** Palette color for the data points. + * @Default {null} + */ + palette?: string; + + /** Parent node of the data points. + * @Default {null} + */ + parentNode?: string; + + /** Name of the property in the datasource that contains x values. + * @Default {null} + */ + xName?: string; + + /** Name of the property in the datasource that contains y values. + * @Default {null} + */ + yName?: string; + + /** Controls whether sunburst has to be responsive or not. + * @Default {true} + */ + isResponsive?: boolean; + + /** Options to customize the Sunburst size. + */ + size?: Size; + + /** Controls the visibility of sunburst. + * @Default {true} + */ + visible?: boolean; + + /** Options to customize the Sunburst tooltip. + */ + tooltip?: Tooltip; + + /** Options for customizing sunburst points. + */ + points?: Points; + + /** Sunburst rendering will start from the specified value + * @Default {null} + */ + startAngle?: number; + + /** Sunburst rendering will end at the specified value + * @Default {null} + */ + endAngle?: number; + + /** Sunburst outer radius value + * @Default {1} + */ + radius?: number; + + /** Sunburst inner radius value + * @Default {0.4} + */ + innerRadius?: number; + + /** Options to customize the Sunburst dataLabel. + */ + dataLabelSettings?: DataLabelSettings; + + /** Options for customizing the title and subtitle of sunburst. + */ + title?: Title; + + /** Options for customizing the appearance of the levels or point while highlighting. + */ + highlightSettings?: HighlightSettings; + + /** Options for customizing the appearance of the levels or data point while selection. + */ + selectionSettings?: SelectionSettings; + + /** Specify levels of sunburst for grouped visualization of data + * @Default {[]} + */ + levels?: Level[]; + + /** Options to customize the legend items and legend title. + */ + legend?: Legend; + + /** Specifies the theme for Sunburst. + * @Default {Flatlight. See Theme} + */ + theme?: ej.datavisualization.Sunburst.SunburstTheme|string; + + /** Options to customize the left, right, top and bottom margins of sunburst area. + */ + margin?: Margin; + + /** Enable/disable the animation for all the levels. + * @Default {false} + */ + enableAnimation?: boolean; + + /** Opacity of the levels. + * @Default {1} + */ + opacity?: number; + + /** Options for enable zooming feature of chart. + */ + zoomSettings?: ZoomSettings; + + /** Animation type of sunburst + * @Default {rotation. See Alignment} + */ + animationType?: ej.datavisualization.Sunburst.Animation|string; + + /** Fires before loading. + */ + load?(e: LoadEventArgs): void; + + /** Fires before rendering sunburst. + */ + preRender?(e: PreRenderEventArgs): void; + + /** Fires after rendering sunburst. + */ + loaded?(e: LoadedEventArgs): void; + + /** Fires before rendering the datalabel + */ + dataLabelRendering?(e: DataLabelRenderingEventArgs): void; + + /** Fires before rendering each segment + */ + segmentRendering?(e: SegmentRenderingEventArgs): void; + + /** Fires before rendering sunburst title. + */ + titleRendering?(e: TitleRenderingEventArgs): void; + + /** Fires during initialization of tooltip. + */ + tooltipInitialize?(e: TooltipInitializeEventArgs): void; + + /** Fires after clicking the point in sunburst + */ + pointRegionClick?(e: PointRegionClickEventArgs): void; - export interface LoadEventArgs { + /** Fires while moving the mouse over sunburst points + */ + pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Fires when clicking the point to perform drilldown. + */ + drillDownClick?(e: DrillDownClickEventArgs): void; - /** Instance of the sparkline model object - */ - model?: any; + /** Fires when resetting drilldown points. + */ + drillDownBack?(e: DrillDownBackEventArgs): void; - /** Name of the event - */ - type?: string; - } + /** Fires after resetting the sunburst points + */ + drillDownReset?(e: DrillDownResetEventArgs): void; + } - export interface LoadedEventArgs { + export interface LoadEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Load event data + */ + data?: string; - /** Instance of the sparkline model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; - } + /** Instance of the sunburst model object + */ + model?: any; - export interface TooltipInitializeEventArgs { + /** Name of the event + */ + type?: string; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface PreRenderEventArgs { - /** Instance of the sparkline model object - */ - model?: any; + /** PreRender event data + */ + data?: string; - /** Name of the event - */ - type?: string; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** X Location of the trackball tooltip in pixels - */ - locationX?: any; + /** Instance of the sunburst model object + */ + model?: any; - /** Y Location of the trackball tooltip in pixels - */ - locationY?: any; + /** Name of the event + */ + type?: string; + } - /** Index of the point for which trackball tooltip is displayed - */ - pointIndex?: number; + export interface LoadedEventArgs { - /** Text to be displayed in trackball tooltip. Use this option to add custom text in trackball tooltip - */ - currentText?: string; - } + /** Loaded event data + */ + data?: string; - export interface SeriesRenderingEventArgs { + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Instance of the sunburst model object + */ + model?: any; - /** Instance of the sparkline model object - */ - model?: any; + /** Name of the event + */ + type?: string; + } - /** Name of the event - */ - type?: string; + export interface DataLabelRenderingEventArgs { - /** Minimum x value of the data point - */ - minX?: any; + /** Sunburst datalabel data + */ + data?: string; - /** Minimum y value of the data point - */ - minY?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Maximum x value of the data point - */ - maxX?: any; + /** Instance of the sunburst model object + */ + model?: any; - /** Maximum y value of the data point - */ - maxY?: any; - } + /** Name of the event + */ + type?: string; + } - export interface PointRegionMouseMoveEventArgs { + export interface SegmentRenderingEventArgs { - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Sunburst datalabel data + */ + data?: string; - /** Instance of the sparkline model object - */ - model?: any; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Name of the event - */ - type?: string; + /** Instance of the sunburst model object + */ + model?: any; - /** X-coordinate of point in pixel - */ - locationX?: number; + /** Name of the event + */ + type?: string; + } - /** Y-coordinate of point in pixel - */ - locationY?: number; + export interface TitleRenderingEventArgs { - /** Index of the point in series - */ - pointIndex?: number; + /** Sunburst title data + */ + data?: string; - /** Type of the series - */ - seriesType?: string; - } + /** Set this option to true to cancel the event + */ + cancel?: boolean; - export interface PointRegionMouseClickEventArgs { + /** Instance of the sunburst model object + */ + model?: any; - /** Set this option to true to cancel the event - */ - cancel?: boolean; + /** Name of the event + */ + type?: string; + } - /** Instance of the sparkline model object - */ - model?: any; + export interface TooltipInitializeEventArgs { - /** Name of the event - */ - type?: string; + /** Sunburst tooltip data + */ + data?: string; - /** X-coordinate of point in pixel - */ - locationX?: number; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Y-coordinate of point in pixel - */ - locationY?: number; + /** Instance of the sunburst model object + */ + model?: any; - /** Index of the point in series - */ - pointIndex?: number; - - /** Type of the series - */ - seriesType?: string; - } - - export interface SparklineMouseMoveEventArgs { + /** Name of the event + */ + type?: string; + } - /** Set this option to true to cancel the event - */ - cancel?: boolean; + export interface PointRegionClickEventArgs { - /** Instance of the sparkline model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface SparklineMouseLeaveEventArgs { - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sparkline model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface Border { - - /** Border color of the sparkline. - * @Default {transparent} - */ - color?: string; - - /** Width of the Sparkline border. - * @Default {1} - */ - width?: number; - } - - export interface RangeBandSettings { - - /** Start value of the range band. - * @Default {null} - */ - startRange?: number; - - /** End value of the range band. - * @Default {null} - */ - endRange?: number; - - /** Range band opacity of the series. - * @Default {1} - */ - opacity?: number; - - /** Range band color of the series. - * @Default {transparent} - */ - color?: string; - } - - export interface TooltipBorder { - - /** Border color of the tooltip. - * @Default {transparent} - */ - color?: string; - - /** Border width of the tooltip. - * @Default {1} - */ - width?: number; - } - - export interface TooltipFont { - - /** Font color of the text in the tooltip. - * @Default {#111111} - */ - color?: string; - - /** Font Family for the tooltip. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the font Style for the tooltip. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Sparkline.FontStyle | string; - - /** Specifies the font weight for the tooltip. - * @Default {Regular} - */ - fontWeight?: ej.datavisualization.Sparkline.FontWeight | string; - - /** Opacity for text in the tooltip. - * @Default {1} - */ - opacity?: number; - - /** Font size for text in the tooltip. - * @Default {8px} - */ - size?: string; - } - - export interface Tooltip { - - /** Show/hides the tooltip visibility. - * @Default {false} - */ - visible?: boolean; - - /** Fill color for the sparkline tooltip. - * @Default {white} - */ - fill?: string; - - /** Custom template to the tooltip. - */ - template?: string; - - /** Options for customizing the border of the tooltip. - */ - border?: TooltipBorder; - - /** Options for customizing the font of the tooltip. - */ - font?: TooltipFont; - } - - export interface MarkerSettingsBorder { - - /** Border color of the marker shape. - * @Default {transparent} - */ - color?: string; - - /** Controls the opacity of the marker border. - * @Default {1} - */ - opacity?: number; - - /** Border width of the marker shape. - * @Default {null} - */ - width?: number; - } - - export interface MarkerSettings { - - /** Controls the opacity of the marker. - * @Default {1} - */ - opacity?: number; - - /** Controls the visibility of the marker shape. - * @Default {false} - */ - visible?: boolean; - - /** width of the marker shape. - * @Default {2} - */ - width?: number; - - /** Color of the marker shape. - * @Default {white} - */ - fill?: string; - - /** Options for customizing the border of the marker shape. - */ - border?: MarkerSettingsBorder; - } - - export interface Size { - - /** Height of the Sparkline. Height can be specified in either pixel or percentage. - * @Default {''} - */ - height?: string; - - /** Width of the Sparkline. Width can be specified in either pixel or percentage. - * @Default {''} - */ - width?: string; - } - - export interface AxisLineSettings { - - /** Controls the visibility of the axis. - * @Default {false} - */ - visible?: boolean; - - /** Color of the axis line. - * @Default {'#111111'} - */ - color?: string; - - /** Width of the axis line. - * @Default {1} - */ - width?: number; - - /** Dash array of the axis line. - * @Default {1} - */ - dashArray?: number; - } - } - namespace Sparkline { - enum Type { - //string - Area, - //string - Line, - //string - Column, - //string - Pie, - //string - WinLoss, - } - } - namespace Sparkline { - enum Theme { - //string - Azure, - //string - FlatLight, - //string - FlatDark, - //string - Azuredark, - //string - Lime, - //string - LimeDark, - //string - Saffron, - //string - SaffronDark, - //string - GradientLight, - //string - GradientDark, - } - } - namespace Sparkline { - enum FontStyle { - //string - Normal, - //string - Italic, - } - } - namespace Sparkline { - enum FontWeight { - //string - Regular, - //string - Bold, - //string - Lighter, - } - } - - class SunburstChart extends ej.Widget { - static fn: SunburstChart; - constructor(element: JQuery | Element, options?: SunburstChart.Model); - static Locale: any; - model: SunburstChart.Model; - defaults: SunburstChart.Model; - - /** Redraws the entire sunburst. You can call this method whenever you update, add or remove points from the data source or whenever you want to refresh the UI. - * @returns {void} - */ - redraw(): void; - - /** destroy the sunburst - * @returns {void} - */ - _destroy(): void; - } - export namespace SunburstChart { - - export interface Model { - - /** Background color of the plot area. - * @Default {null} - */ - background?: string; - - /** Bind the data field from the data source. - * @Default {null} - */ - valueMemberPath?: string; - - /** Options for customizing the sunburst border. - */ - border?: Border; - - /** Options for customizing the sunburst segment border. - */ - segmentBorder?: SegmentBorder; - - /** Specifies the dataSource to the sunburst. - * @Default {null} - */ - dataSource?: any; - - /** Palette color for the data points. - * @Default {null} - */ - palette?: string; - - /** Parent node of the data points. - * @Default {null} - */ - parentNode?: string; - - /** Name of the property in the datasource that contains x values. - * @Default {null} - */ - xName?: string; - - /** Name of the property in the datasource that contains y values. - * @Default {null} - */ - yName?: string; - - /** Controls whether sunburst has to be responsive or not. - * @Default {true} - */ - isResponsive?: boolean; - - /** Options to customize the Sunburst size. - */ - size?: Size; - - /** Controls the visibility of sunburst. - * @Default {true} - */ - visible?: boolean; - - /** Options to customize the Sunburst tooltip. - */ - tooltip?: Tooltip; - - /** Options for customizing sunburst points. - */ - points?: Points; - - /** Sunburst rendering will start from the specified value - * @Default {null} - */ - startAngle?: number; - - /** Sunburst rendering will end at the specified value - * @Default {null} - */ - endAngle?: number; - - /** Sunburst outer radius value - * @Default {1} - */ - radius?: number; - - /** Sunburst inner radius value - * @Default {0.4} - */ - innerRadius?: number; - - /** Options to customize the Sunburst dataLabel. - */ - dataLabelSettings?: DataLabelSettings; - - /** Options for customizing the title and subtitle of sunburst. - */ - title?: Title; - - /** Options for customizing the appearance of the levels or point while highlighting. - */ - highlightSettings?: HighlightSettings; + /** Includes clicked points region data + */ + data?: string; - /** Options for customizing the appearance of the levels or data point while selection. - */ - selectionSettings?: SelectionSettings; - - /** Specify levels of sunburst for grouped visualization of data - * @Default {[]} - */ - levels?: Level[]; - - /** Options to customize the legend items and legend title. - */ - legend?: Legend; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Specifies the theme for Sunburst. - * @Default {Flatlight. See Theme} - */ - theme?: ej.datavisualization.Sunburst.SunburstTheme | string; + /** Instance of the sunburst model object + */ + model?: any; - /** Options to customize the left, right, top and bottom margins of sunburst area. - */ - margin?: Margin; + /** Name of the event + */ + type?: string; + } - /** Enable/disable the animation for all the levels. - * @Default {false} - */ - enableAnimation?: boolean; + export interface PointRegionMouseMoveEventArgs { - /** Opacity of the levels. - * @Default {1} - */ - opacity?: number; + /** Includes data of mouse moved region + */ + data?: string; - /** Options for enable zooming feature of chart. - */ - zoomSettings?: ZoomSettings; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Animation type of sunburst - * @Default {rotation. See Alignment} - */ - animationType?: ej.datavisualization.Sunburst.Animation | string; + /** Instance of the sunburst model object + */ + model?: any; - /** Fires before loading. */ - load?(e: LoadEventArgs): void; + /** Name of the event + */ + type?: string; + } - /** Fires before rendering sunburst. */ - preRender?(e: PreRenderEventArgs): void; + export interface DrillDownClickEventArgs { - /** Fires after rendering sunburst. */ - loaded?(e: LoadedEventArgs): void; + /** Clicked point data + */ + data?: string; - /** Fires before rendering the datalabel */ - dataLabelRendering?(e: DataLabelRenderingEventArgs): void; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Fires before rendering each segment */ - segmentRendering?(e: SegmentRenderingEventArgs): void; + /** Instance of the sunburst model object + */ + model?: any; - /** Fires before rendering sunburst title. */ - titleRendering?(e: TitleRenderingEventArgs): void; + /** Name of the event + */ + type?: string; + } - /** Fires during initialization of tooltip. */ - tooltipInitialize?(e: TooltipInitializeEventArgs): void; + export interface DrillDownBackEventArgs { - /** Fires after clicking the point in sunburst */ - pointRegionClick?(e: PointRegionClickEventArgs): void; + /** Drill down data of points + */ + data?: string; - /** Fires while moving the mouse over sunburst points */ - pointRegionMouseMove?(e: PointRegionMouseMoveEventArgs): void; + /** Set this option to true to cancel the event + */ + cancel?: boolean; - /** Fires when clicking the point to perform drilldown. */ - drillDownClick?(e: DrillDownClickEventArgs): void; + /** Instance of the sunburst model object + */ + model?: any; - /** Fires when resetting drilldown points. */ - drillDownBack?(e: DrillDownBackEventArgs): void; + /** Name of the event + */ + type?: string; + } - /** Fires after resetting the sunburst points */ - drillDownReset?(e: DrillDownResetEventArgs): void; - } + export interface DrillDownResetEventArgs { + + /** Drill down reset data + */ + data?: string; - export interface LoadEventArgs { - - /** Load event data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface PreRenderEventArgs { - - /** PreRender event data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface LoadedEventArgs { - - /** Loaded event data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface DataLabelRenderingEventArgs { - - /** Sunburst datalabel data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface SegmentRenderingEventArgs { - - /** Sunburst datalabel data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface TitleRenderingEventArgs { - - /** Sunburst title data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface TooltipInitializeEventArgs { - - /** Sunburst tooltip data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface PointRegionClickEventArgs { - - /** Includes clicked points region data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface PointRegionMouseMoveEventArgs { - - /** Includes data of mouse moved region - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface DrillDownClickEventArgs { - - /** Clicked point data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface DrillDownBackEventArgs { - - /** Drill down data of points - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface DrillDownResetEventArgs { - - /** Drill down reset data - */ - data?: string; - - /** Set this option to true to cancel the event - */ - cancel?: boolean; - - /** Instance of the sunburst model object - */ - model?: any; - - /** Name of the event - */ - type?: string; - } - - export interface Border { - - /** Border color of the sunburst. - * @Default {null} - */ - color?: string; - - /** Width of the Sunburst border. - * @Default {2} - */ - width?: number; - } - - export interface SegmentBorder { - - /** Segment Border color of the sunburst. - * @Default {null} - */ - color?: string; - - /** Width of the Sunburst segment border. - * @Default {2} - */ - width?: number; - } - - export interface Size { - - /** Height of the Sunburst. - * @Default {''} - */ - height?: string; - - /** Width of the Sunburst. - * @Default {''} - */ - width?: string; - } - - export interface TooltipBorder { - - /** Border color of the tooltip. - * @Default {null} - */ - color?: string; - - /** Border width of the tooltip. - * @Default {5} - */ - width?: number; - } - - export interface TooltipFont { - - /** Font color of the text in the tooltip. - * @Default {null} - */ - color?: string; - - /** Font Family for the tooltip. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Specifies the font Style for the tooltip. - * @Default {Normal} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Specifies the font weight for the tooltip. - * @Default {Regular} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Opacity for text in the tooltip. - * @Default {1} - */ - opacity?: number; - - /** Font size for text in the tooltip. - * @Default {12px} - */ - size?: string; - } - - export interface Tooltip { - - /** tooltip visibility of the Sunburst. - * @Default {true} - */ - visible?: boolean; - - /** Options for customizing the border of the sunburst tooltip. - */ - border?: TooltipBorder; - - /** Fill color for the sunburst tooltip. - * @Default {null} - */ - fill?: string; - - /** Options for customizing the font of the tooltip. - */ - font?: TooltipFont; - - /** Custom template to the tooltip. - * @Default {null} - */ - template?: string; - } - - export interface Points { - - /** Points x value of the sunburst. - * @Default {null} - */ - x?: string; - - /** Points y value of the sunburst. - * @Default {null} - */ - y?: number; - - /** Points text of the sunburst. - * @Default {null} - */ - text?: string; - - /** Points fill color of the sunburst. - * @Default {null} - */ - fill?: string; - } - - export interface DataLabelSettingsFont { - - /** Font family of the data label. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style of the data label. - * @Default {normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight of the data label. - * @Default {regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Opacity of the text. - * @Default {1} - */ - opacity?: number; - - /** Font color of the data label text. - * @Default {null} - */ - color?: string; - - /** Font size of the data label. - * @Default {12px} - */ - size?: string; - } - - export interface DataLabelSettings { - - /** Datalabel visibility of the Sunburst. - * @Default {false} - */ - visible?: boolean; - - /** Alignment of sunburst datalabel - * @Default {Angle. See DatalabelAlignment} - */ - labelRotationMode?: ej.datavisualization.Sunburst.SunburstLabelRotationMode | string; - - /** Options for customizing the data label font. - */ - font?: DataLabelSettingsFont; - - /** Custom template for datalabel - * @Default {null} - */ - template?: string; - - /** Fill color for the datalabel - * @Default {null} - */ - fill?: string; - - /** Datalabel overflow mode - * @Default {Trim. See LabelOverflowMode} - */ - labelOverflowMode?: ej.datavisualization.Sunburst.SunburstLabelOverflowMode | string; - } - - export interface TitleFont { - - /** Font family for Sunburst title. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for Sunburst title. - * @Default {Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight for Sunburst title. - * @Default {Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Opacity of the Sunburst title. - * @Default {1} - */ - opacity?: number; - - /** Font size for Sunburst title. - * @Default {20px} - */ - size?: string; - } - - export interface TitleSubtitleFont { - - /** Font family of sub title. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for sub title. - * @Default {Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight for sub title. - * @Default {Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Opacity of the sub title. - * @Default {1} - */ - opacity?: number; - - /** Font size for sub title. - * @Default {12px} - */ - size?: string; - } - - export interface TitleSubtitle { - - /** Subtitle text for sunburst - */ - text?: string; - - /** Sub title text visibility for sunburst - * @Default {true} - */ - visible?: string; - - /** Sub title text alignment - * @Default {far. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment | string; - - /** Options for customizing the font of sub title. - */ - font?: TitleSubtitleFont; - } - - export interface Title { - - /** Title text for sunburst - */ - text?: string; - - /** Title text visibility for sunburst - * @Default {true} - */ - visible?: string; - - /** Title text alignment - * @Default {center. See TextAlignment} - */ - textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment | string; - - /** Options for customizing the font of sunburst title. - */ - font?: TitleFont; - - /** Options to customize the sub title of Sunburst. - */ - subtitle?: TitleSubtitle; - } - - export interface HighlightSettings { - - /** Enables/disables the ability to highlight the levels or point interactively. - * @Default {false} - */ - enable?: boolean; - - /** Specifies whether the levels or point has to be highlighted. - * @Default {point. See Mode} - */ - mode?: ej.datavisualization.Sunburst.SunburstHighlightMode | string; - - /** Color of the levels/point on highlight. - * @Default {red} - */ - color?: string; - - /** Opacity of the levels/point on highlight. - * @Default {0.5} - */ - opacity?: number; - - /** Specifies whether the levels or data point has to be highlighted. - * @Default {opacity. See Mode} - */ - type?: ej.datavisualization.Sunburst.SunburstHighlightType | string; - } - - export interface SelectionSettings { - - /** Enables/disables the ability to select the levels or data point interactively. - * @Default {false} - */ - enable?: boolean; - - /** Specifies whether the levels or data point has to be selected. - * @Default {point. See Mode} - */ - mode?: ej.datavisualization.Sunburst.SunburstHighlightMode | string; - - /** Color of the levels/point on selection. - * @Default {green} - */ - color?: string; - - /** Opacity of the levels/point on selection. - * @Default {0.5} - */ - opacity?: number; - - /** Specifies whether the levels or data point has to be selected. - * @Default {opacity. See Mode} - */ - type?: ej.datavisualization.Sunburst.SunburstHighlightType | string; - } - - export interface Level { - - /** Specifies the group member path - * @Default {null} - */ - groupMemberPath?: string; - } - - export interface LegendBorder { - - /** Border color of the legend. - * @Default {null} - */ - color?: string; - - /** Border width of the legend. - * @Default {1} - */ - width?: number; - } - - export interface LegendFont { - - /** Font family for legend item text. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for legend item text. - * @Default {Normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight for legend item text. - * @Default {Regular. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Font size for legend item text. - * @Default {12px} - */ - size?: string; - } - - export interface LegendItemStyle { - - /** Height of the shape in legend items. - * @Default {10} - */ - height?: number; - - /** Width of the shape in legend items. - * @Default {10} - */ - width?: number; - } - - export interface LegendLocation { - - /** X value or horizontal offset to position the legend in chart. - * @Default {0} - */ - x?: number; - - /** Y value or vertical offset to position the legend. - * @Default {0} - */ - y?: number; - } - - export interface LegendSize { - - /** Height of the legend. Height can be specified in either pixel or percentage. - * @Default {null} - */ - height?: string; - - /** Width of the legend. Width can be specified in either pixel or percentage. - * @Default {null} - */ - width?: string; - } - - export interface LegendTitleFont { - - /** Font family for the text in legend title. - * @Default {Segoe UI} - */ - fontFamily?: string; - - /** Font style for legend title. - * @Default {normal. See FontStyle} - */ - fontStyle?: ej.datavisualization.Sunburst.FontStyle | string; - - /** Font weight for legend title. - * @Default {normal. See FontWeight} - */ - fontWeight?: ej.datavisualization.Sunburst.FontWeight | string; - - /** Font size for legend title. - * @Default {12px} - */ - size?: string; - } - - export interface LegendTitle { - - /** Options to customize the font used for legend title - */ - font?: LegendTitleFont; - - /** Enables or disables the legend title. - * @Default {true} - */ - visible?: string; - - /** Text to be displayed in legend title. - */ - text?: string; - - /** Alignment of the legend title. - * @Default {center. See Alignment} - */ - textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment | string; - } - - export interface Legend { - - /** Visibility of the legend. - * @Default {false} - */ - visible?: boolean; - - /** Interactive action of legend items. - * @Default {toggleSegmentVisibility. See Alignment} - */ - clickAction?: ej.datavisualization.Sunburst.SunburstClickAction | string; - - /** Horizontal alignment of the legend. - * @Default {Center. See Alignment} - */ - alignment?: ej.datavisualization.Sunburst.SunburstAlignment | string; - - /** Options for customizing the legend border. - */ - border?: LegendBorder; - - /** Number of columns to arrange the legend items. - * @Default {null} - */ - columnCount?: number; - - /** Number of rows to arrange the legend items. - * @Default {null} - */ - rowCount?: number; - - /** Options to customize the font used for legend item text. - */ - font?: LegendFont; - - /** Gap or padding between the legend items. - * @Default {10} - */ - itemPadding?: number; - - /** Options to customize the style of legend items. - */ - itemStyle?: LegendItemStyle; - - /** Options to customize the location of sunburst legend. Legend is placed in provided location only when value of position property is custom - */ - location?: LegendLocation; - - /** Places the legend at specified position. Legend can be placed at left, right, top or bottom of the chart area.To manually specify the location of legend, set custom as value to this property. - * @Default {Bottom. See Position} - */ - position?: ej.datavisualization.Sunburst.SunburstLegendPosition | string; - - /** Shape of the legend items. - * @Default {None. See Shape} - */ - shape?: ej.datavisualization.Sunburst.SunburstLegendShape | string; - - /** Options to customize the size of the legend. - */ - size?: LegendSize; - - /** Options to customize the legend title. - */ - title?: LegendTitle; - } - - export interface Margin { - - /** Spacing for the left margin of chart area. Setting positive value decreases the width of the chart area from left side. - * @Default {10} - */ - left?: number; - - /** Spacing for the right margin of chart area. Setting positive value decreases the width of the chart area from right side. - * @Default {10} - */ - right?: number; - - /** Spacing for the top margin of chart area. Setting positive value decreases the height of the chart area from the top. - * @Default {10} - */ - top?: number; - - /** Spacing for the bottom margin of the chart area. Setting positive value decreases the height of the chart area from the bottom. - * @Default {10} - */ - bottom?: number; - } - - export interface ZoomSettings { - - /** Enables or disables zooming. - * @Default {false} - */ - enable?: boolean; - - /** Toolbar horizontal alignment - * @Default {right. See Alignment} - */ - toolbarHorizontalAlignment?: ej.datavisualization.Sunburst.SunburstHorizontalAlignment | string; - - /** Toolbar vertical alignment - * @Default {top. See Alignment} - */ - toolbarVerticalAlignment?: ej.datavisualization.Sunburst.SunburstVerticalAlignment | string; - } - } - namespace Sunburst { - enum FontStyle { - //string - Normal, - //string - Italic, - } - } - namespace Sunburst { - enum FontWeight { - //string - Regular, - //string - Bold, - //string - Lighter, - } - } - namespace Sunburst { - enum SunburstLabelRotationMode { - //string - Angle, - //string - Normal, - } - } - namespace Sunburst { - enum SunburstLabelOverflowMode { - //string - Trim, - //string - Hide, - //string - None, - } - } - namespace Sunburst { - enum SunburstAlignment { - //string - Center, - //string - Near, - //string - Far, - } - } - namespace Sunburst { - enum SunburstHighlightMode { - //string - Point, - //string - Parent, - //string - Child, - //string - All, - } - } - namespace Sunburst { - enum SunburstHighlightType { - //string - Opacity, - //string - Color, - } - } - namespace Sunburst { - enum SunburstClickAction { - //string - None, - //string - ToggleSegmentVisibility, - //string - ToggleSegmentSelection, - } - } - namespace Sunburst { - enum SunburstLegendPosition { - //string - Left, - //string - Right, - //string - Top, - //string - Bottom, - } - } - namespace Sunburst { - enum SunburstLegendShape { - //string - Diamond, - //string - Pentagon, - //string - Rectangle, - //string - Circle, - //string - Cross, - //string - Triangle, - } - } - namespace Sunburst { - enum SunburstTheme { - //string - FlatLight, - //string - FlatDark, - } - } - namespace Sunburst { - enum SunburstHorizontalAlignment { - //string - Center, - //string - Left, - //string - Right, - } - } - namespace Sunburst { - enum SunburstVerticalAlignment { - //string - Top, - //string - Bottom, - //string - Middle, - } - } - namespace Sunburst { - enum Animation { - //string - Rotation, - //string - FadeIn, - } - } - - class Overview extends ej.Widget { - static fn: Overview; - constructor(element: JQuery | Element, options?: Overview.Model); - static Locale: any; - model: Overview.Model; - defaults: Overview.Model; - } - export namespace Overview { - - export interface Model { - - /** The sourceId property of overview should be set with the corresponding Diagram ID for you need the overall view. - * @Default {null} - */ - sourceID?: string; - - /** Defines the height of the overview - * @Default {400} - */ - height?: number; - - /** Defines the width of the overview - * @Default {250} - */ - width?: number; - } - } + /** Set this option to true to cancel the event + */ + cancel?: boolean; + + /** Instance of the sunburst model object + */ + model?: any; + + /** Name of the event + */ + type?: string; + } + + export interface Border { + + /** Border color of the sunburst. + * @Default {null} + */ + color?: string; + + /** Width of the Sunburst border. + * @Default {2} + */ + width?: number; + } + + export interface SegmentBorder { + + /** Segment Border color of the sunburst. + * @Default {null} + */ + color?: string; + + /** Width of the Sunburst segment border. + * @Default {2} + */ + width?: number; + } + + export interface Size { + + /** Height of the Sunburst. + * @Default {''} + */ + height?: string; + + /** Width of the Sunburst. + * @Default {''} + */ + width?: string; + } + + export interface TooltipBorder { + + /** Border color of the tooltip. + * @Default {null} + */ + color?: string; + + /** Border width of the tooltip. + * @Default {5} + */ + width?: number; + } + + export interface TooltipFont { + + /** Font color of the text in the tooltip. + * @Default {null} + */ + color?: string; + + /** Font Family for the tooltip. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Specifies the font Style for the tooltip. + * @Default {Normal} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Specifies the font weight for the tooltip. + * @Default {Regular} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Opacity for text in the tooltip. + * @Default {1} + */ + opacity?: number; + + /** Font size for text in the tooltip. + * @Default {12px} + */ + size?: string; + } + + export interface Tooltip { + + /** tooltip visibility of the Sunburst. + * @Default {true} + */ + visible?: boolean; + + /** Options for customizing the border of the sunburst tooltip. + */ + border?: TooltipBorder; + + /** Fill color for the sunburst tooltip. + * @Default {null} + */ + fill?: string; + + /** Options for customizing the font of the tooltip. + */ + font?: TooltipFont; + + /** Custom template to the tooltip. + * @Default {null} + */ + template?: string; + + /** Setting the format for the data displayed in the tooltip + * @Default {#point.x# : #point.y#} + */ + format?: string; + + /** Sets the opacity of the dispalyed tooltip + * @Default {0.95} + */ + opacity?: number; + } + + export interface Points { + + /** Points x value of the sunburst. + * @Default {null} + */ + x?: string; + + /** Points y value of the sunburst. + * @Default {null} + */ + y?: number; + + /** Points text of the sunburst. + * @Default {null} + */ + text?: string; + + /** Points fill color of the sunburst. + * @Default {null} + */ + fill?: string; + } + + export interface DataLabelSettingsFont { + + /** Font family of the data label. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style of the data label. + * @Default {normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight of the data label. + * @Default {regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Opacity of the text. + * @Default {1} + */ + opacity?: number; + + /** Font color of the data label text. + * @Default {null} + */ + color?: string; + + /** Font size of the data label. + * @Default {12px} + */ + size?: string; + } + + export interface DataLabelSettings { + + /** Datalabel visibility of the Sunburst. + * @Default {false} + */ + visible?: boolean; + + /** Alignment of sunburst datalabel + * @Default {Angle. See DatalabelAlignment} + */ + labelRotationMode?: ej.datavisualization.Sunburst.SunburstLabelRotationMode|string; + + /** Options for customizing the data label font. + */ + font?: DataLabelSettingsFont; + + /** Custom template for datalabel + * @Default {null} + */ + template?: string; + + /** Fill color for the datalabel + * @Default {null} + */ + fill?: string; + + /** Datalabel overflow mode + * @Default {Trim. See LabelOverflowMode} + */ + labelOverflowMode?: ej.datavisualization.Sunburst.SunburstLabelOverflowMode|string; + } + + export interface TitleFont { + + /** Font family for Sunburst title. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for Sunburst title. + * @Default {Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight for Sunburst title. + * @Default {Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Opacity of the Sunburst title. + * @Default {1} + */ + opacity?: number; + + /** Font size for Sunburst title. + * @Default {20px} + */ + size?: string; + } + + export interface TitleSubtitleFont { + + /** Font family of sub title. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for sub title. + * @Default {Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight for sub title. + * @Default {Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Opacity of the sub title. + * @Default {1} + */ + opacity?: number; + + /** Font size for sub title. + * @Default {12px} + */ + size?: string; + } + + export interface TitleSubtitle { + + /** Subtitle text for sunburst + */ + text?: string; + + /** Sub title text visibility for sunburst + * @Default {true} + */ + visible?: string; + + /** Sub title text alignment + * @Default {far. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment|string; + + /** Options for customizing the font of sub title. + */ + font?: TitleSubtitleFont; + } + + export interface Title { + + /** Title text for sunburst + */ + text?: string; + + /** Title text visibility for sunburst + * @Default {true} + */ + visible?: string; + + /** Title text alignment + * @Default {center. See TextAlignment} + */ + textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment|string; + + /** Options for customizing the font of sunburst title. + */ + font?: TitleFont; + + /** Options to customize the sub title of Sunburst. + */ + subtitle?: TitleSubtitle; + } + + export interface HighlightSettings { + + /** Enables/disables the ability to highlight the levels or point interactively. + * @Default {false} + */ + enable?: boolean; + + /** Specifies whether the levels or point has to be highlighted. + * @Default {point. See Mode} + */ + mode?: ej.datavisualization.Sunburst.SunburstHighlightMode|string; + + /** Color of the levels/point on highlight. + * @Default {red} + */ + color?: string; + + /** Opacity of the levels/point on highlight. + * @Default {0.5} + */ + opacity?: number; + + /** Specifies whether the levels or data point has to be highlighted. + * @Default {opacity. See Mode} + */ + type?: ej.datavisualization.Sunburst.SunburstHighlightType|string; + } + + export interface SelectionSettings { + + /** Enables/disables the ability to select the levels or data point interactively. + * @Default {false} + */ + enable?: boolean; + + /** Specifies whether the levels or data point has to be selected. + * @Default {point. See Mode} + */ + mode?: ej.datavisualization.Sunburst.SunburstHighlightMode|string; + + /** Color of the levels/point on selection. + * @Default {green} + */ + color?: string; + + /** Opacity of the levels/point on selection. + * @Default {0.5} + */ + opacity?: number; + + /** Specifies whether the levels or data point has to be selected. + * @Default {opacity. See Mode} + */ + type?: ej.datavisualization.Sunburst.SunburstHighlightType|string; + } + + export interface Level { + + /** Specifies the group member path + * @Default {null} + */ + groupMemberPath?: string; + } + + export interface LegendBorder { + + /** Border color of the legend. + * @Default {null} + */ + color?: string; + + /** Border width of the legend. + * @Default {1} + */ + width?: number; + } + + export interface LegendFont { + + /** Font family for legend item text. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for legend item text. + * @Default {Normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight for legend item text. + * @Default {Regular. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Font size for legend item text. + * @Default {12px} + */ + size?: string; + } + + export interface LegendItemStyle { + + /** Height of the shape in legend items. + * @Default {10} + */ + height?: number; + + /** Width of the shape in legend items. + * @Default {10} + */ + width?: number; + } + + export interface LegendLocation { + + /** X value or horizontal offset to position the legend in chart. + * @Default {0} + */ + x?: number; + + /** Y value or vertical offset to position the legend. + * @Default {0} + */ + y?: number; + } + + export interface LegendSize { + + /** Height of the legend. Height can be specified in either pixel or percentage. + * @Default {null} + */ + height?: string; + + /** Width of the legend. Width can be specified in either pixel or percentage. + * @Default {null} + */ + width?: string; + } + + export interface LegendTitleFont { + + /** Font family for the text in legend title. + * @Default {Segoe UI} + */ + fontFamily?: string; + + /** Font style for legend title. + * @Default {normal. See FontStyle} + */ + fontStyle?: ej.datavisualization.Sunburst.FontStyle|string; + + /** Font weight for legend title. + * @Default {normal. See FontWeight} + */ + fontWeight?: ej.datavisualization.Sunburst.FontWeight|string; + + /** Font size for legend title. + * @Default {12px} + */ + size?: string; + } + + export interface LegendTitle { + + /** Options to customize the font used for legend title + */ + font?: LegendTitleFont; + + /** Enables or disables the legend title. + * @Default {true} + */ + visible?: string; + + /** Text to be displayed in legend title. + */ + text?: string; + + /** Alignment of the legend title. + * @Default {center. See Alignment} + */ + textAlignment?: ej.datavisualization.Sunburst.SunburstAlignment|string; + } + + export interface Legend { + + /** Visibility of the legend. + * @Default {false} + */ + visible?: boolean; + + /** Interactive action of legend items. + * @Default {toggleSegmentVisibility. See Alignment} + */ + clickAction?: ej.datavisualization.Sunburst.SunburstClickAction|string; + + /** Horizontal alignment of the legend. + * @Default {Center. See Alignment} + */ + alignment?: ej.datavisualization.Sunburst.SunburstAlignment|string; + + /** Options for customizing the legend border. + */ + border?: LegendBorder; + + /** Number of columns to arrange the legend items. + * @Default {null} + */ + columnCount?: number; + + /** Number of rows to arrange the legend items. + * @Default {null} + */ + rowCount?: number; + + /** Options to customize the font used for legend item text. + */ + font?: LegendFont; + + /** Gap or padding between the legend items. + * @Default {10} + */ + itemPadding?: number; + + /** Options to customize the style of legend items. + */ + itemStyle?: LegendItemStyle; + + /** Options to customize the location of sunburst legend. Legend is placed in provided location only when value of position property is custom + */ + location?: LegendLocation; + + /** Places the legend at specified position. Legend can be placed at **left**, **right**, **top** or **bottom** of the chart area. To manually specify the location of legend, set + * **custom** as value to this property. + * @Default {Bottom. See Position} + */ + position?: ej.datavisualization.Sunburst.SunburstLegendPosition|string; + + /** Shape of the legend items. + * @Default {None. See Shape} + */ + shape?: ej.datavisualization.Sunburst.SunburstLegendShape|string; + + /** Options to customize the size of the legend. + */ + size?: LegendSize; + + /** Options to customize the legend title. + */ + title?: LegendTitle; + } + + export interface Margin { + + /** Spacing for the left margin of chart area. Setting positive value decreases the width of the chart area from left side. + * @Default {10} + */ + left?: number; + + /** Spacing for the right margin of chart area. Setting positive value decreases the width of the chart area from right side. + * @Default {10} + */ + right?: number; + + /** Spacing for the top margin of chart area. Setting positive value decreases the height of the chart area from the top. + * @Default {10} + */ + top?: number; + + /** Spacing for the bottom margin of the chart area. Setting positive value decreases the height of the chart area from the bottom. + * @Default {10} + */ + bottom?: number; + } + + export interface ZoomSettings { + + /** Enables or disables zooming. + * @Default {false} + */ + enable?: boolean; + + /** Toolbar horizontal alignment + * @Default {right. See Alignment} + */ + toolbarHorizontalAlignment?: ej.datavisualization.Sunburst.SunburstHorizontalAlignment|string; + + /** Toolbar vertical alignment + * @Default {top. See Alignment} + */ + toolbarVerticalAlignment?: ej.datavisualization.Sunburst.SunburstVerticalAlignment|string; + } + } + namespace Sunburst { + enum FontStyle { + //string + Normal, + //string + Italic, + } + } + namespace Sunburst { + enum FontWeight { + //string + Regular, + //string + Bold, + //string + Lighter, + } + } + namespace Sunburst { + enum SunburstLabelRotationMode { + //string + Angle, + //string + Normal, + } + } + namespace Sunburst { + enum SunburstLabelOverflowMode { + //string + Trim, + //string + Hide, + //string + None, + } + } + namespace Sunburst { + enum SunburstAlignment { + //string + Center, + //string + Near, + //string + Far, + } + } + namespace Sunburst { + enum SunburstHighlightMode { + //string + Point, + //string + Parent, + //string + Child, + //string + All, + } + } + namespace Sunburst { + enum SunburstHighlightType { + //string + Opacity, + //string + Color, + } + } + namespace Sunburst { + enum SunburstClickAction { + //string + None, + //string + ToggleSegmentVisibility, + //string + ToggleSegmentSelection, + } + } + namespace Sunburst { + enum SunburstLegendPosition { + //string + Left, + //string + Right, + //string + Top, + //string + Bottom, + } + } + namespace Sunburst { + enum SunburstLegendShape { + //string + Diamond, + //string + Pentagon, + //string + Rectangle, + //string + Circle, + //string + Cross, + //string + Triangle, + } + } + namespace Sunburst { + enum SunburstTheme { + //string + FlatLight, + //string + FlatDark, + } + } + namespace Sunburst { + enum SunburstHorizontalAlignment { + //string + Center, + //string + Left, + //string + Right, + } + } + namespace Sunburst { + enum SunburstVerticalAlignment { + //string + Top, + //string + Bottom, + //string + Middle, + } + } + namespace Sunburst { + enum Animation { + //string + Rotation, + //string + FadeIn, + } + } + + class Overview extends ej.Widget { + static fn: Overview; + constructor(element: JQuery | Element, options?: Overview.Model); + static Locale: any; + model: Overview.Model; + defaults: Overview.Model; + } + export namespace Overview { + + export interface Model { + + /** The sourceId property of overview should be set with the corresponding Diagram ID for you need the overall view. + * @Default {null} + */ + sourceID?: string; + + /** Defines the height of the overview + * @Default {400} + */ + height?: number; + + /** Defines the width of the overview + * @Default {250} + */ + width?: number; + } + } } - interface JQueryXHR { - /** - * Returns the cancel option value. - */ - cancel?: boolean; + /** + * Returns the cancel option value. + */ + cancel?: boolean; } interface JQueryPromise { - /** - * Returns the cancel option value. - */ - cancel?: boolean; + /** + * Returns the cancel option value. + */ + cancel?: boolean; } -interface JQueryDeferred { - /** - * Returns the cancel option value. - */ - cancel?: boolean; +interface JQueryDeferred extends JQueryPromise { + /** + * Returns the cancel option value. + */ + cancel?: boolean; } interface JQueryParam { - /** - * Returns the cancel option value. - */ - cancel?: boolean; + /** + * Returns the cancel option value. + */ + cancel?: boolean; } interface JQuery { - data(key: any): any; + data(key: any): any; } interface Window { - ej: typeof ej; + ej: typeof ej; } interface JQuery { - ejAccordion(options?: ej.Accordion.Model): JQuery; - ejAccordion(memberName: any, value?: any, param?: any): any; + ejAccordion(options?: ej.Accordion.Model): JQuery; + ejAccordion(memberName: any, value?: any, param?: any): any; - ejAutocomplete(options?: ej.Autocomplete.Model): JQuery; - ejAutocomplete(memberName: any, value?: any, param?: any): any; + ejAutocomplete(options?: ej.Autocomplete.Model): JQuery; + ejAutocomplete(memberName: any, value?: any, param?: any): any; - ejBarcode(options?: ej.datavisualization.Barcode.Model): JQuery; - ejBarcode(memberName: any, value?: any, param?: any): any; + ejBarcode(options?: ej.datavisualization.Barcode.Model): JQuery; + ejBarcode(memberName: any, value?: any, param?: any): any; - ejBulletGraph(options?: ej.datavisualization.BulletGraph.Model): JQuery; - ejBulletGraph(memberName: any, value?: any, param?: any): any; + ejBulletGraph(options?: ej.datavisualization.BulletGraph.Model): JQuery; + ejBulletGraph(memberName: any, value?: any, param?: any): any; - ejButton(options?: ej.Button.Model): JQuery; - ejButton(memberName: any, value?: any, param?: any): any; + ejButton(options?: ej.Button.Model): JQuery; + ejButton(memberName: any, value?: any, param?: any): any; - ejCaptcha(options?: ej.Captcha.Model): JQuery; - ejCaptcha(memberName: any, value?: any, param?: any): any; + ejCaptcha(options?: ej.Captcha.Model): JQuery; + ejCaptcha(memberName: any, value?: any, param?: any): any; - ejChart(options?: ej.datavisualization.Chart.Model): JQuery; - ejChart(memberName: any, value?: any, param?: any): any; + ejChart(options?: ej.datavisualization.Chart.Model): JQuery; + ejChart(memberName: any, value?: any, param?: any): any; - ejCheckBox(options?: ej.CheckBox.Model): JQuery; - ejCheckBox(memberName: any, value?: any, param?: any): any; + ejCheckBox(options?: ej.CheckBox.Model): JQuery; + ejCheckBox(memberName: any, value?: any, param?: any): any; - ejCircularGauge(options?: ej.datavisualization.CircularGauge.Model): JQuery; - ejCircularGauge(memberName: any, value?: any, param?: any): any; + ejCircularGauge(options?: ej.datavisualization.CircularGauge.Model): JQuery; + ejCircularGauge(memberName: any, value?: any, param?: any): any; - ejColorPicker(options?: ej.ColorPicker.Model): JQuery; - ejColorPicker(memberName: any, value?: any, param?: any): any; + ejColorPicker(options?: ej.ColorPicker.Model): JQuery; + ejColorPicker(memberName: any, value?: any, param?: any): any; - ejDatePicker(options?: ej.DatePicker.Model): JQuery; - ejDatePicker(memberName: any, value?: any, param?: any): any; + ejDatePicker(options?: ej.DatePicker.Model): JQuery; + ejDatePicker(memberName: any, value?: any, param?: any): any; - ejDateRangePicker(options?: ej.DateRangePicker.Model): JQuery; - ejDateRangePicker(memberName: any, value?: any, param?: any): any; + ejDateRangePicker(options?: ej.DateRangePicker.Model): JQuery; + ejDateRangePicker(memberName: any, value?: any, param?: any): any; - ejDateTimePicker(options?: ej.DateTimePicker.Model): JQuery; - ejDateTimePicker(memberName: any, value?: any, param?: any): any; + ejDateTimePicker(options?: ej.DateTimePicker.Model): JQuery; + ejDateTimePicker(memberName: any, value?: any, param?: any): any; - ejDiagram(options?: ej.datavisualization.Diagram.Model): JQuery; - ejDiagram(memberName: any, value?: any, param?: any): any; + ejDiagram(options?: ej.datavisualization.Diagram.Model): JQuery; + ejDiagram(memberName: any, value?: any, param?: any): any; - ejDialog(options?: ej.Dialog.Model): JQuery; - ejDialog(memberName: any, value?: any, param?: any): any; + ejDialog(options?: ej.Dialog.Model): JQuery; + ejDialog(memberName: any, value?: any, param?: any): any; - ejDigitalGauge(options?: ej.datavisualization.DigitalGauge.Model): JQuery; - ejDigitalGauge(memberName: any, value?: any, param?: any): any; + ejDigitalGauge(options?: ej.datavisualization.DigitalGauge.Model): JQuery; + ejDigitalGauge(memberName: any, value?: any, param?: any): any; - ejDocumentEditor(options?: ej.DocumentEditor.Model): JQuery; - ejDocumentEditor(memberName: any, value?: any, param?: any): any; + ejDocumentEditor(options?: ej.DocumentEditor.Model): JQuery; + ejDocumentEditor(memberName: any, value?: any, param?: any): any; - ejDraggable(options?: ej.Draggable.Model): JQuery; - ejDraggable(memberName: any, value?: any, param?: any): any; + ejDraggable(options?: ej.Draggable.Model): JQuery; + ejDraggable(memberName: any, value?: any, param?: any): any; - ejDropDownList(options?: ej.DropDownList.Model): JQuery; - ejDropDownList(memberName: any, value?: any, param?: any): any; + ejDropDownList(options?: ej.DropDownList.Model): JQuery; + ejDropDownList(memberName: any, value?: any, param?: any): any; - ejDroppable(options?: ej.Droppable.Model): JQuery; - ejDroppable(memberName: any, value?: any, param?: any): any; + ejDroppable(options?: ej.Droppable.Model): JQuery; + ejDroppable(memberName: any, value?: any, param?: any): any; - ejFileExplorer(options?: ej.FileExplorer.Model): JQuery; - ejFileExplorer(memberName: any, value?: any, param?: any): any; + ejFileExplorer(options?: ej.FileExplorer.Model): JQuery; + ejFileExplorer(memberName: any, value?: any, param?: any): any; - ejGantt(options?: ej.Gantt.Model): JQuery; - ejGantt(memberName: any, value?: any, param?: any): any; + ejGantt(options?: ej.Gantt.Model): JQuery; + ejGantt(memberName: any, value?: any, param?: any): any; - ejGrid(options?: ej.Grid.Model): JQuery; - ejGrid(memberName: any, value?: any, param?: any): any; + ejGrid(options?: ej.Grid.Model): JQuery; + ejGrid(memberName: any, value?: any, param?: any): any; - ejGroupButton(options?: ej.GroupButton.Model): JQuery; - ejGroupButton(memberName: any, value?: any, param?: any): any; + ejGroupButton(options?: ej.GroupButton.Model): JQuery; + ejGroupButton(memberName: any, value?: any, param?: any): any; - ejHeatMap(options?: ej.datavisualization.HeatMap.Model): JQuery; - ejHeatMap(memberName: any, value?: any, param?: any): any; + ejHeatMap(options?: ej.datavisualization.HeatMap.Model): JQuery; + ejHeatMap(memberName: any, value?: any, param?: any): any; - ejHeatMapLegend(options?: ej.datavisualization.HeatMapLegend.Model): JQuery; - ejHeatMapLegend(memberName: any, value?: any, param?: any): any; + ejHeatMapLegend(options?: ej.datavisualization.HeatMapLegend.Model): JQuery; + ejHeatMapLegend(memberName: any, value?: any, param?: any): any; - ejKanban(options?: ej.Kanban.Model): JQuery; - ejKanban(memberName: any, value?: any, param?: any): any; + ejKanban(options?: ej.Kanban.Model): JQuery; + ejKanban(memberName: any, value?: any, param?: any): any; - ejLinearGauge(options?: ej.datavisualization.LinearGauge.Model): JQuery; - ejLinearGauge(memberName: any, value?: any, param?: any): any; + ejLinearGauge(options?: ej.datavisualization.LinearGauge.Model): JQuery; + ejLinearGauge(memberName: any, value?: any, param?: any): any; - ejListBox(options?: ej.ListBox.Model): JQuery; - ejListBox(memberName: any, value?: any, param?: any): any; + ejListBox(options?: ej.ListBox.Model): JQuery; + ejListBox(memberName: any, value?: any, param?: any): any; - ejListView(options?: ej.ListView.Model): JQuery; - ejListView(memberName: any, value?: any, param?: any): any; + ejListView(options?: ej.ListView.Model): JQuery; + ejListView(memberName: any, value?: any, param?: any): any; - ejMap(options?: ej.datavisualization.Map.Model): JQuery; - ejMap(memberName: any, value?: any, param?: any): any; + ejMap(options?: ej.datavisualization.Map.Model): JQuery; + ejMap(memberName: any, value?: any, param?: any): any; - ejMaskEdit(options?: ej.MaskEdit.Model): JQuery; - ejMaskEdit(memberName: any, value?: any, param?: any): any; + ejMaskEdit(options?: ej.MaskEdit.Model): JQuery; + ejMaskEdit(memberName: any, value?: any, param?: any): any; - ejMenu(options?: ej.Menu.Model): JQuery; - ejMenu(memberName: any, value?: any, param?: any): any; + ejMenu(options?: ej.Menu.Model): JQuery; + ejMenu(memberName: any, value?: any, param?: any): any; - ejNavigationDrawer(options?: ej.NavigationDrawer.Model): JQuery; - ejNavigationDrawer(memberName: any, value?: any, param?: any): any; + ejNavigationDrawer(options?: ej.NavigationDrawer.Model): JQuery; + ejNavigationDrawer(memberName: any, value?: any, param?: any): any; - ejOverview(options?: ej.datavisualization.Overview.Model): JQuery; - ejOverview(memberName: any, value?: any, param?: any): any; + ejOverview(options?: ej.datavisualization.Overview.Model): JQuery; + ejOverview(memberName: any, value?: any, param?: any): any; - ejPager(options?: ej.Pager.Model): JQuery; - ejPager(memberName: any, value?: any, param?: any): any; + ejPager(options?: ej.Pager.Model): JQuery; + ejPager(memberName: any, value?: any, param?: any): any; - ejPdfViewer(options?: ej.PdfViewer.Model): JQuery; - ejPdfViewer(memberName: any, value?: any, param?: any): any; + ejPdfViewer(options?: ej.PdfViewer.Model): JQuery; + ejPdfViewer(memberName: any, value?: any, param?: any): any; - ejPivotChart(options?: ej.PivotChart.Model): JQuery; - ejPivotChart(memberName: any, value?: any, param?: any): any; + ejPivotChart(options?: ej.PivotChart.Model): JQuery; + ejPivotChart(memberName: any, value?: any, param?: any): any; - ejPivotClient(options?: ej.PivotClient.Model): JQuery; - ejPivotClient(memberName: any, value?: any, param?: any): any; + ejPivotClient(options?: ej.PivotClient.Model): JQuery; + ejPivotClient(memberName: any, value?: any, param?: any): any; - ejPivotGauge(options?: ej.PivotGauge.Model): JQuery; - ejPivotGauge(memberName: any, value?: any, param?: any): any; + ejPivotGauge(options?: ej.PivotGauge.Model): JQuery; + ejPivotGauge(memberName: any, value?: any, param?: any): any; - ejPivotGrid(options?: ej.PivotGrid.Model): JQuery; - ejPivotGrid(memberName: any, value?: any, param?: any): any; + ejPivotGrid(options?: ej.PivotGrid.Model): JQuery; + ejPivotGrid(memberName: any, value?: any, param?: any): any; - ejPivotPager(options?: ej.PivotPager.Model): JQuery; - ejPivotPager(memberName: any, value?: any, param?: any): any; + ejPivotPager(options?: ej.PivotPager.Model): JQuery; + ejPivotPager(memberName: any, value?: any, param?: any): any; - ejPivotSchemaDesigner(options?: ej.PivotSchemaDesigner.Model): JQuery; - ejPivotSchemaDesigner(memberName: any, value?: any, param?: any): any; + ejPivotSchemaDesigner(options?: ej.PivotSchemaDesigner.Model): JQuery; + ejPivotSchemaDesigner(memberName: any, value?: any, param?: any): any; - ejPivotTreeMap(options?: ej.PivotTreeMap.Model): JQuery; - ejPivotTreeMap(memberName: any, value?: any, param?: any): any; + ejPivotTreeMap(options?: ej.PivotTreeMap.Model): JQuery; + ejPivotTreeMap(memberName: any, value?: any, param?: any): any; - ejPrint(options?: ej.Print.Model): JQuery; - ejPrint(memberName: any, value?: any, param?: any): any; + ejPrint(options?: ej.Print.Model): JQuery; + ejPrint(memberName: any, value?: any, param?: any): any; - ejProgressBar(options?: ej.ProgressBar.Model): JQuery; - ejProgressBar(memberName: any, value?: any, param?: any): any; + ejProgressBar(options?: ej.ProgressBar.Model): JQuery; + ejProgressBar(memberName: any, value?: any, param?: any): any; - ejRadialMenu(options?: ej.RadialMenu.Model): JQuery; - ejRadialMenu(memberName: any, value?: any, param?: any): any; + ejRadialMenu(options?: ej.RadialMenu.Model): JQuery; + ejRadialMenu(memberName: any, value?: any, param?: any): any; - ejRadialSlider(options?: ej.RadialSlider.Model): JQuery; - ejRadialSlider(memberName: any, value?: any, param?: any): any; + ejRadialSlider(options?: ej.RadialSlider.Model): JQuery; + ejRadialSlider(memberName: any, value?: any, param?: any): any; - ejRadioButton(options?: ej.RadioButton.Model): JQuery; - ejRadioButton(memberName: any, value?: any, param?: any): any; + ejRadioButton(options?: ej.RadioButton.Model): JQuery; + ejRadioButton(memberName: any, value?: any, param?: any): any; - ejRangeNavigator(options?: ej.datavisualization.RangeNavigator.Model): JQuery; - ejRangeNavigator(memberName: any, value?: any, param?: any): any; + ejRangeNavigator(options?: ej.datavisualization.RangeNavigator.Model): JQuery; + ejRangeNavigator(memberName: any, value?: any, param?: any): any; - ejRating(options?: ej.Rating.Model): JQuery; - ejRating(memberName: any, value?: any, param?: any): any; + ejRating(options?: ej.Rating.Model): JQuery; + ejRating(memberName: any, value?: any, param?: any): any; - ejRecurrenceEditor(options?: ej.RecurrenceEditor.Model): JQuery; - ejRecurrenceEditor(memberName: any, value?: any, param?: any): any; + ejRecurrenceEditor(options?: ej.RecurrenceEditor.Model): JQuery; + ejRecurrenceEditor(memberName: any, value?: any, param?: any): any; - ejReportViewer(options?: ej.ReportViewer.Model): JQuery; - ejReportViewer(memberName: any, value?: any, param?: any): any; + ejReportViewer(options?: ej.ReportViewer.Model): JQuery; + ejReportViewer(memberName: any, value?: any, param?: any): any; - ejResizable(options?: ej.Resizable.Model): JQuery; - ejResizable(memberName: any, value?: any, param?: any): any; + ejResizable(options?: ej.Resizable.Model): JQuery; + ejResizable(memberName: any, value?: any, param?: any): any; - ejRibbon(options?: ej.Ribbon.Model): JQuery; - ejRibbon(memberName: any, value?: any, param?: any): any; + ejRibbon(options?: ej.Ribbon.Model): JQuery; + ejRibbon(memberName: any, value?: any, param?: any): any; - ejRotator(options?: ej.Rotator.Model): JQuery; - ejRotator(memberName: any, value?: any, param?: any): any; + ejRotator(options?: ej.Rotator.Model): JQuery; + ejRotator(memberName: any, value?: any, param?: any): any; - ejRTE(options?: ej.RTE.Model): JQuery; - ejRTE(memberName: any, value?: any, param?: any): any; + ejRTE(options?: ej.RTE.Model): JQuery; + ejRTE(memberName: any, value?: any, param?: any): any; - ejSchedule(options?: ej.Schedule.Model): JQuery; - ejSchedule(memberName: any, value?: any, param?: any): any; + ejSchedule(options?: ej.Schedule.Model): JQuery; + ejSchedule(memberName: any, value?: any, param?: any): any; - ejScroller(options?: ej.Scroller.Model): JQuery; - ejScroller(memberName: any, value?: any, param?: any): any; + ejScroller(options?: ej.Scroller.Model): JQuery; + ejScroller(memberName: any, value?: any, param?: any): any; - ejSignature(options?: ej.Signature.Model): JQuery; - ejSignature(memberName: any, value?: any, param?: any): any; + ejSignature(options?: ej.Signature.Model): JQuery; + ejSignature(memberName: any, value?: any, param?: any): any; - ejSlider(options?: ej.Slider.Model): JQuery; - ejSlider(memberName: any, value?: any, param?: any): any; + ejSlider(options?: ej.Slider.Model): JQuery; + ejSlider(memberName: any, value?: any, param?: any): any; - ejSparkline(options?: ej.datavisualization.Sparkline.Model): JQuery; - ejSparkline(memberName: any, value?: any, param?: any): any; + ejSparkline(options?: ej.datavisualization.Sparkline.Model): JQuery; + ejSparkline(memberName: any, value?: any, param?: any): any; - ejSpellCheck(options?: ej.SpellCheck.Model): JQuery; - ejSpellCheck(memberName: any, value?: any, param?: any): any; + ejSpellCheck(options?: ej.SpellCheck.Model): JQuery; + ejSpellCheck(memberName: any, value?: any, param?: any): any; - ejSplitButton(options?: ej.SplitButton.Model): JQuery; - ejSplitButton(memberName: any, value?: any, param?: any): any; + ejSplitButton(options?: ej.SplitButton.Model): JQuery; + ejSplitButton(memberName: any, value?: any, param?: any): any; - ejSplitter(options?: ej.Splitter.Model): JQuery; - ejSplitter(memberName: any, value?: any, param?: any): any; + ejSplitter(options?: ej.Splitter.Model): JQuery; + ejSplitter(memberName: any, value?: any, param?: any): any; - ejSpreadsheet(options?: ej.Spreadsheet.Model): JQuery; - ejSpreadsheet(memberName: any, value?: any, param?: any): any; + ejSpreadsheet(options?: ej.Spreadsheet.Model): JQuery; + ejSpreadsheet(memberName: any, value?: any, param?: any): any; - ejSunburstChart(options?: ej.datavisualization.SunburstChart.Model): JQuery; - ejSunburstChart(memberName: any, value?: any, param?: any): any; - - ejSymbolPalette(options?: ej.datavisualization.SymbolPalette.Model): JQuery; - ejSymbolPalette(memberName: any, value?: any, param?: any): any; - - ejTab(options?: ej.Tab.Model): JQuery; - ejTab(memberName: any, value?: any, param?: any): any; - - ejTagCloud(options?: ej.TagCloud.Model): JQuery; - ejTagCloud(memberName: any, value?: any, param?: any): any; - - ejNumericTextbox(options?: ej.Editor.Model): JQuery; - ejNumericTextbox(memberName: any, value?: any, param?: any): any; - - ejCurrencyTextbox(options?: ej.Editor.Model): JQuery; - ejCurrencyTextbox(memberName: any, value?: any, param?: any): any; - - ejPercentageTextbox(options?: ej.Editor.Model): JQuery; - ejPercentageTextbox(memberName: any, value?: any, param?: any): any; - - ejTile(options?: ej.Tile.Model): JQuery; - ejTile(memberName: any, value?: any, param?: any): any; - - ejTimePicker(options?: ej.TimePicker.Model): JQuery; - ejTimePicker(memberName: any, value?: any, param?: any): any; - - ejToggleButton(options?: ej.ToggleButton.Model): JQuery; - ejToggleButton(memberName: any, value?: any, param?: any): any; - - ejToolbar(options?: ej.Toolbar.Model): JQuery; - ejToolbar(memberName: any, value?: any, param?: any): any; - - ejTooltip(options?: ej.Tooltip.Model): JQuery; - ejTooltip(memberName: any, value?: any, param?: any): any; - - ejTreeGrid(options?: ej.TreeGrid.Model): JQuery; - ejTreeGrid(memberName: any, value?: any, param?: any): any; - - ejTreeMap(options?: ej.datavisualization.TreeMap.Model): JQuery; - ejTreeMap(memberName: any, value?: any, param?: any): any; - - ejTreeView(options?: ej.TreeView.Model): JQuery; - ejTreeView(memberName: any, value?: any, param?: any): any; - - ejUploadbox(options?: ej.Uploadbox.Model): JQuery; - ejUploadbox(memberName: any, value?: any, param?: any): any; - - ejWaitingPopup(options?: ej.WaitingPopup.Model): JQuery; - ejWaitingPopup(memberName: any, value?: any, param?: any): any; - - data(key: "ejAccordion"): ej.Accordion; - data(key: "ejAutocomplete"): ej.Autocomplete; - data(key: "ejBarcode"): ej.datavisualization.Barcode; - data(key: "ejBulletGraph"): ej.datavisualization.BulletGraph; - data(key: "ejButton"): ej.Button; - data(key: "ejCaptcha"): ej.Captcha; - data(key: "ejChart"): ej.datavisualization.Chart; - data(key: "ejCheckBox"): ej.CheckBox; - data(key: "ejCircularGauge"): ej.datavisualization.CircularGauge; - data(key: "ejColorPicker"): ej.ColorPicker; - data(key: "ejDatePicker"): ej.DatePicker; - data(key: "ejDateRangePicker"): ej.DateRangePicker; - data(key: "ejDateTimePicker"): ej.DateTimePicker; - data(key: "ejDiagram"): ej.datavisualization.Diagram; - data(key: "ejDialog"): ej.Dialog; - data(key: "ejDigitalGauge"): ej.datavisualization.DigitalGauge; - data(key: "ejDocumentEditor"): ej.DocumentEditor; - data(key: "ejDraggable"): ej.Draggable; - data(key: "ejDropDownList"): ej.DropDownList; - data(key: "ejDroppable"): ej.Droppable; - data(key: "ejFileExplorer"): ej.FileExplorer; - data(key: "ejGantt"): ej.Gantt; - data(key: "ejGrid"): ej.Grid; - data(key: "ejGroupButton"): ej.GroupButton; - data(key: "ejHeatMap"): ej.datavisualization.HeatMap; - data(key: "ejHeatMapLegend"): ej.datavisualization.HeatMapLegend; - data(key: "ejKanban"): ej.Kanban; - data(key: "ejLinearGauge"): ej.datavisualization.LinearGauge; - data(key: "ejListBox"): ej.ListBox; - data(key: "ejListView"): ej.ListView; - data(key: "ejMap"): ej.datavisualization.Map; - data(key: "ejMaskEdit"): ej.MaskEdit; - data(key: "ejMenu"): ej.Menu; - data(key: "ejNavigationDrawer"): ej.NavigationDrawer; - data(key: "ejOverview"): ej.datavisualization.Overview; - data(key: "ejPager"): ej.Pager; - data(key: "ejPdfViewer"): ej.PdfViewer; - data(key: "ejPivotChart"): ej.PivotChart; - data(key: "ejPivotClient"): ej.PivotClient; - data(key: "ejPivotGauge"): ej.PivotGauge; - data(key: "ejPivotGrid"): ej.PivotGrid; - data(key: "ejPivotPager"): ej.PivotPager; - data(key: "ejPivotSchemaDesigner"): ej.PivotSchemaDesigner; - data(key: "ejPivotTreeMap"): ej.PivotTreeMap; - data(key: "ejPrint"): ej.Print; - data(key: "ejProgressBar"): ej.ProgressBar; - data(key: "ejRadialMenu"): ej.RadialMenu; - data(key: "ejRadialSlider"): ej.RadialSlider; - data(key: "ejRadioButton"): ej.RadioButton; - data(key: "ejRangeNavigator"): ej.datavisualization.RangeNavigator; - data(key: "ejRating"): ej.Rating; - data(key: "ejRecurrenceEditor"): ej.RecurrenceEditor; - data(key: "ejReportViewer"): ej.ReportViewer; - data(key: "ejResizable"): ej.Resizable; - data(key: "ejRibbon"): ej.Ribbon; - data(key: "ejRotator"): ej.Rotator; - data(key: "ejRTE"): ej.RTE; - data(key: "ejSchedule"): ej.Schedule; - data(key: "ejScroller"): ej.Scroller; - data(key: "ejSignature"): ej.Signature; - data(key: "ejSlider"): ej.Slider; - data(key: "ejSparkline"): ej.datavisualization.Sparkline; - data(key: "ejSpellCheck"): ej.SpellCheck; - data(key: "ejSplitButton"): ej.SplitButton; - data(key: "ejSplitter"): ej.Splitter; - data(key: "ejSpreadsheet"): ej.Spreadsheet; - data(key: "ejSunburstChart"): ej.datavisualization.SunburstChart; - data(key: "ejSymbolPalette"): ej.datavisualization.SymbolPalette; - data(key: "ejTab"): ej.Tab; - data(key: "ejTagCloud"): ej.TagCloud; - data(key: "ejNumericTextbox"): ej.NumericTextbox; - data(key: "ejCurrencyTextbox"): ej.CurrencyTextbox; - data(key: "ejPercentageTextbox"): ej.PercentageTextbox; - data(key: "ejTile"): ej.Tile; - data(key: "ejTimePicker"): ej.TimePicker; - data(key: "ejToggleButton"): ej.ToggleButton; - data(key: "ejToolbar"): ej.Toolbar; - data(key: "ejTooltip"): ej.Tooltip; - data(key: "ejTreeGrid"): ej.TreeGrid; - data(key: "ejTreeMap"): ej.datavisualization.TreeMap; - data(key: "ejTreeView"): ej.TreeView; - data(key: "ejUploadbox"): ej.Uploadbox; - data(key: "ejWaitingPopup"): ej.WaitingPopup; + ejSunburstChart(options?: ej.datavisualization.SunburstChart.Model): JQuery; + ejSunburstChart(memberName: any, value?: any, param?: any): any; + + ejSymbolPalette(options?: ej.datavisualization.SymbolPalette.Model): JQuery; + ejSymbolPalette(memberName: any, value?: any, param?: any): any; + + ejTab(options?: ej.Tab.Model): JQuery; + ejTab(memberName: any, value?: any, param?: any): any; + + ejTagCloud(options?: ej.TagCloud.Model): JQuery; + ejTagCloud(memberName: any, value?: any, param?: any): any; + + ejNumericTextbox(options?: ej.Editor.Model): JQuery; + ejNumericTextbox(memberName: any, value?: any, param?: any): any; + + ejCurrencyTextbox(options?: ej.Editor.Model): JQuery; + ejCurrencyTextbox(memberName: any, value?: any, param?: any): any; + + ejPercentageTextbox(options?: ej.Editor.Model): JQuery; + ejPercentageTextbox(memberName: any, value?: any, param?: any): any; + + ejTile(options?: ej.Tile.Model): JQuery; + ejTile(memberName: any, value?: any, param?: any): any; + + ejTimePicker(options?: ej.TimePicker.Model): JQuery; + ejTimePicker(memberName: any, value?: any, param?: any): any; + + ejToggleButton(options?: ej.ToggleButton.Model): JQuery; + ejToggleButton(memberName: any, value?: any, param?: any): any; + + ejToolbar(options?: ej.Toolbar.Model): JQuery; + ejToolbar(memberName: any, value?: any, param?: any): any; + + ejTooltip(options?: ej.Tooltip.Model): JQuery; + ejTooltip(memberName: any, value?: any, param?: any): any; + + ejTreeGrid(options?: ej.TreeGrid.Model): JQuery; + ejTreeGrid(memberName: any, value?: any, param?: any): any; + + ejTreeMap(options?: ej.datavisualization.TreeMap.Model): JQuery; + ejTreeMap(memberName: any, value?: any, param?: any): any; + + ejTreeView(options?: ej.TreeView.Model): JQuery; + ejTreeView(memberName: any, value?: any, param?: any): any; + + ejUploadbox(options?: ej.Uploadbox.Model): JQuery; + ejUploadbox(memberName: any, value?: any, param?: any): any; + + ejWaitingPopup(options?: ej.WaitingPopup.Model): JQuery; + ejWaitingPopup(memberName: any, value?: any, param?: any): any; + data(key: "ejAccordion"): ej.Accordion; + data(key: "ejAutocomplete"): ej.Autocomplete; + data(key: "ejBarcode"): ej.datavisualization.Barcode; + data(key: "ejBulletGraph"): ej.datavisualization.BulletGraph; + data(key: "ejButton"): ej.Button; + data(key: "ejCaptcha"): ej.Captcha; + data(key: "ejChart"): ej.datavisualization.Chart; + data(key: "ejCheckBox"): ej.CheckBox; + data(key: "ejCircularGauge"): ej.datavisualization.CircularGauge; + data(key: "ejColorPicker"): ej.ColorPicker; + data(key: "ejDatePicker"): ej.DatePicker; + data(key: "ejDateRangePicker"): ej.DateRangePicker; + data(key: "ejDateTimePicker"): ej.DateTimePicker; + data(key: "ejDiagram"): ej.datavisualization.Diagram; + data(key: "ejDialog"): ej.Dialog; + data(key: "ejDigitalGauge"): ej.datavisualization.DigitalGauge; + data(key: "ejDocumentEditor"): ej.DocumentEditor; + data(key: "ejDraggable"): ej.Draggable; + data(key: "ejDropDownList"): ej.DropDownList; + data(key: "ejDroppable"): ej.Droppable; + data(key: "ejFileExplorer"): ej.FileExplorer; + data(key: "ejGantt"): ej.Gantt; + data(key: "ejGrid"): ej.Grid; + data(key: "ejGroupButton"): ej.GroupButton; + data(key: "ejHeatMap"): ej.datavisualization.HeatMap; + data(key: "ejHeatMapLegend"): ej.datavisualization.HeatMapLegend; + data(key: "ejKanban"): ej.Kanban; + data(key: "ejLinearGauge"): ej.datavisualization.LinearGauge; + data(key: "ejListBox"): ej.ListBox; + data(key: "ejListView"): ej.ListView; + data(key: "ejMap"): ej.datavisualization.Map; + data(key: "ejMaskEdit"): ej.MaskEdit; + data(key: "ejMenu"): ej.Menu; + data(key: "ejNavigationDrawer"): ej.NavigationDrawer; + data(key: "ejOverview"): ej.datavisualization.Overview; + data(key: "ejPager"): ej.Pager; + data(key: "ejPdfViewer"): ej.PdfViewer; + data(key: "ejPivotChart"): ej.PivotChart; + data(key: "ejPivotClient"): ej.PivotClient; + data(key: "ejPivotGauge"): ej.PivotGauge; + data(key: "ejPivotGrid"): ej.PivotGrid; + data(key: "ejPivotPager"): ej.PivotPager; + data(key: "ejPivotSchemaDesigner"): ej.PivotSchemaDesigner; + data(key: "ejPivotTreeMap"): ej.PivotTreeMap; + data(key: "ejPrint"): ej.Print; + data(key: "ejProgressBar"): ej.ProgressBar; + data(key: "ejRadialMenu"): ej.RadialMenu; + data(key: "ejRadialSlider"): ej.RadialSlider; + data(key: "ejRadioButton"): ej.RadioButton; + data(key: "ejRangeNavigator"): ej.datavisualization.RangeNavigator; + data(key: "ejRating"): ej.Rating; + data(key: "ejRecurrenceEditor"): ej.RecurrenceEditor; + data(key: "ejReportViewer"): ej.ReportViewer; + data(key: "ejResizable"): ej.Resizable; + data(key: "ejRibbon"): ej.Ribbon; + data(key: "ejRotator"): ej.Rotator; + data(key: "ejRTE"): ej.RTE; + data(key: "ejSchedule"): ej.Schedule; + data(key: "ejScroller"): ej.Scroller; + data(key: "ejSignature"): ej.Signature; + data(key: "ejSlider"): ej.Slider; + data(key: "ejSparkline"): ej.datavisualization.Sparkline; + data(key: "ejSpellCheck"): ej.SpellCheck; + data(key: "ejSplitButton"): ej.SplitButton; + data(key: "ejSplitter"): ej.Splitter; + data(key: "ejSpreadsheet"): ej.Spreadsheet; + data(key: "ejSunburstChart"): ej.datavisualization.SunburstChart; + data(key: "ejSymbolPalette"): ej.datavisualization.SymbolPalette; + data(key: "ejTab"): ej.Tab; + data(key: "ejTagCloud"): ej.TagCloud; + data(key: "ejNumericTextbox"): ej.NumericTextbox; + data(key: "ejCurrencyTextbox"): ej.CurrencyTextbox; + data(key: "ejPercentageTextbox"): ej.PercentageTextbox; + data(key: "ejTile"): ej.Tile; + data(key: "ejTimePicker"): ej.TimePicker; + data(key: "ejToggleButton"): ej.ToggleButton; + data(key: "ejToolbar"): ej.Toolbar; + data(key: "ejTooltip"): ej.Tooltip; + data(key: "ejTreeGrid"): ej.TreeGrid; + data(key: "ejTreeMap"): ej.datavisualization.TreeMap; + data(key: "ejTreeView"): ej.TreeView; + data(key: "ejUploadbox"): ej.Uploadbox; + data(key: "ejWaitingPopup"): ej.WaitingPopup; } diff --git a/types/ember/index.d.ts b/types/ember/index.d.ts index 07a8a0d54f..41f8fe6d45 100644 --- a/types/ember/index.d.ts +++ b/types/ember/index.d.ts @@ -2449,6 +2449,7 @@ declare namespace Ember { function observersFor(obj: any, path: string): any[]; function onLoad(name: string, callback: Function): void; const onError: Error; + function onerror(error: any): void; function overrideChains(obj: any, keyName: string, m: any): boolean; // ReSharper disable once DuplicatingLocalDeclaration const platform: { @@ -2480,6 +2481,7 @@ declare namespace Ember { throttle(target: any, method: Function | string, ...args: any[]): void; queues: any[]; }; + function runInDebug(fn: Function): void; function runLoadHooks(name: string, object: any): void; function sendEvent(obj: any, eventName: string, params?: any[], actions?: any[]): boolean; function set(obj: any, keyName: string, value: any): any; diff --git a/types/enzyme/index.d.ts b/types/enzyme/index.d.ts index 2a7142d9b3..01ecfa90d8 100644 --- a/types/enzyme/index.d.ts +++ b/types/enzyme/index.d.ts @@ -15,7 +15,7 @@ import { ReactElement, Component, HTMLAttributes as ReactHTMLAttributes, SVGAttr export type HTMLAttributes = ReactHTMLAttributes<{}> & ReactSVGAttributes<{}>; -export class ElementClass extends Component { +export class ElementClass extends Component { } /* These are purposefully stripped down versions of React.ComponentClass and React.StatelessComponent. @@ -23,7 +23,7 @@ export class ElementClass extends Component { * all specified in the implementation. TS chooses the EnzymePropSelector overload and loses the generics */ export interface ComponentClass { - new (props?: Props, context?: any): Component; + new (props?: Props, context?: any): Component; } export type StatelessComponent = (props: Props, context?: any) => JSX.Element; diff --git a/types/express-flash-2/express-flash-2-tests.ts b/types/express-flash-2/express-flash-2-tests.ts new file mode 100644 index 0000000000..055501d9ff --- /dev/null +++ b/types/express-flash-2/express-flash-2-tests.ts @@ -0,0 +1,3 @@ +import flash from "express-flash-2"; + +flash(); diff --git a/types/express-flash-2/index.d.ts b/types/express-flash-2/index.d.ts new file mode 100644 index 0000000000..5c8960277f --- /dev/null +++ b/types/express-flash-2/index.d.ts @@ -0,0 +1,57 @@ +// Type definitions for express-flash-2 1.0 +// Project: https://github.com/jack2gs/express-flash-2 +// Definitions by: Matheus Salmi +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare namespace Express { + interface Request { + session?: Session; + } + + interface Session { + flash: Flash; + } + + interface Flash { + [key: string]: any[]; + } + + interface Response { + /** + * Queue flash `msg` of the given `type`. + * + * Examples: + * + * req.flash('info', 'email sent'); + * req.flash('error', 'email delivery failed'); + * req.flash('info', 'email re-sent'); + * + * + * Formatting: + * + * Flash notifications also support arbitrary formatting support. + * For example you may pass variable arguments to `req.flash()` + * and use the %s specifier to be replaced by the associated argument: + * + * req.flash('info', 'email has been sent to %s.', userName); + * + * Formatting uses `util.format()`, which is available on Node 0.6+. + */ + flash(type: string, msg: string | any[]): void; + + locals: { + flash: Flash + }; + } +} + +declare module 'express-flash-2' { + import express = require('express'); + + /** + * Expose `flash()` function on responses. + */ + function flash(): express.RequestHandler; + + export = flash; +} diff --git a/types/express-flash-2/tsconfig.json b/types/express-flash-2/tsconfig.json new file mode 100644 index 0000000000..79fba18d61 --- /dev/null +++ b/types/express-flash-2/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "express-flash-2-tests.ts" + ] +} \ No newline at end of file diff --git a/types/express-flash-2/tslint.json b/types/express-flash-2/tslint.json new file mode 100644 index 0000000000..949f3563fd --- /dev/null +++ b/types/express-flash-2/tslint.json @@ -0,0 +1,8 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "no-single-declare-module": false, + "strict-export-declare-modifiers": false, + "expect": false + } +} diff --git a/types/express-serve-static-core/index.d.ts b/types/express-serve-static-core/index.d.ts index bd8647aa77..5e4491c9a1 100644 --- a/types/express-serve-static-core/index.d.ts +++ b/types/express-serve-static-core/index.d.ts @@ -239,9 +239,9 @@ interface Request extends http.IncomingMessage, Express.Request { * // => "json" */ accepts(): string[]; - accepts(type: string): string | boolean; - accepts(type: string[]): string | boolean; - accepts(...type: string[]): string | boolean; + accepts(type: string): string | false; + accepts(type: string[]): string | false; + accepts(...type: string[]): string | false; /** * Returns the first accepted charset of the specified character sets, @@ -252,9 +252,9 @@ interface Request extends http.IncomingMessage, Express.Request { * @param charset */ acceptsCharsets(): string[]; - acceptsCharsets(charset: string): string | boolean; - acceptsCharsets(charset: string[]): string | boolean; - acceptsCharsets(...charset: string[]): string | boolean; + acceptsCharsets(charset: string): string | false; + acceptsCharsets(charset: string[]): string | false; + acceptsCharsets(...charset: string[]): string | false; /** * Returns the first accepted encoding of the specified encodings, @@ -265,9 +265,9 @@ interface Request extends http.IncomingMessage, Express.Request { * @param encoding */ acceptsEncodings(): string[]; - acceptsEncodings(encoding: string): string | boolean; - acceptsEncodings(encoding: string[]): string | boolean; - acceptsEncodings(...encoding: string[]): string | boolean; + acceptsEncodings(encoding: string): string | false; + acceptsEncodings(encoding: string[]): string | false; + acceptsEncodings(...encoding: string[]): string | false; /** * Returns the first accepted language of the specified languages, @@ -279,9 +279,9 @@ interface Request extends http.IncomingMessage, Express.Request { * @param lang */ acceptsLanguages(): string[]; - acceptsLanguages(lang: string): string | boolean; - acceptsLanguages(lang: string[]): string | boolean; - acceptsLanguages(...lang: string[]): string | boolean; + acceptsLanguages(lang: string): string | false; + acceptsLanguages(lang: string[]): string | false; + acceptsLanguages(...lang: string[]): string | false; /** * Parse Range header field, diff --git a/types/express/express-tests.ts b/types/express/express-tests.ts index 3270a3f391..2891a37d96 100644 --- a/types/express/express-tests.ts +++ b/types/express/express-tests.ts @@ -51,22 +51,22 @@ namespace express_tests { router.route('/users') .get((req, res, next) => { let types: string[] = req.accepts(); - let type: string | boolean = req.accepts('json'); + let type: string | false = req.accepts('json'); type = req.accepts(['json', 'text']); type = req.accepts('json', 'text'); let charsets: string[] = req.acceptsCharsets(); - let charset: string | boolean = req.acceptsCharsets('utf-8'); + let charset: string | false = req.acceptsCharsets('utf-8'); charset = req.acceptsCharsets(['utf-8', 'utf-16']); charset = req.acceptsCharsets('utf-8', 'utf-16'); let encodings: string[] = req.acceptsEncodings(); - let encoding: string | boolean = req.acceptsEncodings('gzip'); + let encoding: string | false = req.acceptsEncodings('gzip'); encoding = req.acceptsEncodings(['gzip', 'deflate']); encoding = req.acceptsEncodings('gzip', 'deflate'); let languages: string[] = req.acceptsLanguages(); - let language: string | boolean = req.acceptsLanguages('en'); + let language: string | false = req.acceptsLanguages('en'); language = req.acceptsLanguages(['en', 'ja']); language = req.acceptsLanguages('en', 'ja'); diff --git a/types/gapi.auth2/index.d.ts b/types/gapi.auth2/index.d.ts index 04dfe32c2d..6e9e5c4199 100644 --- a/types/gapi.auth2/index.d.ts +++ b/types/gapi.auth2/index.d.ts @@ -47,7 +47,7 @@ declare namespace gapi.auth2 { /** * Get permission from the user to access the specified scopes offline. */ - grantOfflineAccess(options: { + grantOfflineAccess(options?: { scope?: string; prompt?: "select_account" | "consent"; app_package_name?: string; diff --git a/types/google-map-react/index.d.ts b/types/google-map-react/index.d.ts index 5e54c4e5aa..037ebb5f13 100644 --- a/types/google-map-react/index.d.ts +++ b/types/google-map-react/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for google-map-react 0.22 +// Type definitions for google-map-react 0.23 // Project: https://github.com/istarkov/google-map-react // Definitions by: Honza Brecka // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -15,6 +15,7 @@ export interface Options { mapTypeControl?: boolean; minZoomOverride?: boolean; minZoom?: number; + maxZoom?: number; gestureHandling?: string; } diff --git a/types/googlemaps/googlemaps-tests.ts b/types/googlemaps/googlemaps-tests.ts index 20d2bc51c8..fd7d6057b7 100644 --- a/types/googlemaps/googlemaps-tests.ts +++ b/types/googlemaps/googlemaps-tests.ts @@ -1,8 +1,6 @@ // Test file for Google Maps JavaScript API Definition file -/***** Create map *****/ -let map = new google.maps.Map( - document.getElementById('map'), { +let mapOptions: google.maps.MapOptions = { backgroundColor: "#fff", center: { lat: -25.363, lng: 131.044 }, clickableIcons: true, @@ -13,8 +11,34 @@ let map = new google.maps.Map( }, gestureHandling: "cooperative", scrollwheel: true, + styles: [ + { + elementType: 'geometry', + featureType: 'water', + stylers: [ + { + color: '#00bdbd' + } + ] + }, + { + elementType: 'geometry', + featureType: 'landscape.man_made', + stylers: [ + { + color: '#f7f1df' + } + ] + } + ], zoom: 4 -}); +}; + +/***** Create map *****/ +let map: google.maps.Map = new google.maps.Map( + document.getElementById('map'), + mapOptions +); /***** Data *****/ @@ -329,4 +353,4 @@ heatmap.setData([new google.maps.LatLng(37.782551, -122.445368), new google.maps heatmap.setData([ { weight: 1, location: new google.maps.LatLng(37.782551, -122.445368) }, { weight: 2, location: new google.maps.LatLng(37.782745, -122.444586) } -]); \ No newline at end of file +]); diff --git a/types/googlemaps/index.d.ts b/types/googlemaps/index.d.ts index e2017523ad..ac9566757f 100644 --- a/types/googlemaps/index.d.ts +++ b/types/googlemaps/index.d.ts @@ -1058,7 +1058,7 @@ declare namespace google.maps { clickable?: boolean; /** If set to true, the user can drag this circle over the map. Defaults to false. */ draggable?: boolean; - /** + /** * If set to true, the user can edit this circle by dragging the control points shown at the center and around * the circumference of the circle. Defaults to false. */ @@ -1719,64 +1719,51 @@ declare namespace google.maps { stylers?: MapTypeStyler[]; } - export interface MapTypeStyleFeatureType { - administrative?: { - country?: string; - land_parcel?: string; - locality?: string; - neighborhood?: string; - province?: string; - }; - all?: string; - landscape?: { - man_made?: string; - natural?: { - landcover?: string; - terrain?: string; - }; - }; - poi?: { - attraction?: string; - business?: string; - government?: string; - medical?: string; - park?: string; - place_of_worship?: string; - school?: string; - sports_complex?: string; - }; - road?: { - arterial?: string; - highway?: { - controlled_access?: string; - }; - local?: string; - }; - transit?: { - line?: string; - station?: { - airport?: string; - bus?: string; - rail?: string; - }; - }; - water?: string; - } + export type MapTypeStyleFeatureType = + 'all' | + 'administrative' | + 'administrative.country' | + 'administrative.land_parcel' | + 'administrative.locality' | + 'administrative.neighborhood' | + 'administrative.province' | + 'landscape' | + 'landscape.man_made' | + 'landscape.natural' | + 'landscape.natural.landcover' | + 'landscape.natural.terrain' | + 'poi' | + 'poi.attraction' | + 'poi.business' | + 'poi.government' | + 'poi.medical' | + 'poi.park' | + 'poi.place_of_worship' | + 'poi.school' | + 'poi.sports_complex' | + 'road' | + 'road.arterial' | + 'road.highway' | + 'road.highway.controlled_access' | + 'road.local' | + 'transit' | + 'transit.line' | + 'transit.station' | + 'transit.station.airport' | + 'transit.station.bus' | + 'transit.station.rail' | + 'water'; - export interface MapTypeStyleElementType { - all?: string; - geometry?: { - fill?: string; - stroke?: string; - }; - labels?: { - icon?: string; - text?: { - fill?: string; - stroke?: string; - } - }; - } + export type MapTypeStyleElementType = + 'all' | + 'geometry' | + 'geometry.fill' | + 'geometry.stroke' | + 'labels' | + 'labels.icon' | + 'labels.text' | + 'labels.text.fill' | + 'labels.text.stroke'; export interface MapTypeStyler { color?: string; @@ -2132,7 +2119,7 @@ declare namespace google.maps { } /** - * This object is returned from various mouse events on the map and overlays, + * This object is returned from various mouse events on the map and overlays, * and contains all the fields shown below. */ export interface MouseEvent { @@ -2233,7 +2220,7 @@ declare namespace google.maps { /** Converts to string. */ toString(): string; /** - * Returns a string of the form "lat_lo,lng_lo,lat_hi,lng_hi" for this bounds, where "lo" corresponds to the + * Returns a string of the form "lat_lo,lng_lo,lat_hi,lng_hi" for this bounds, where "lo" corresponds to the * southwest corner of the bounding box, while "hi" corresponds to the northeast corner of that box. */ toUrlValue(precision?: number): string; @@ -2718,7 +2705,7 @@ declare namespace google.maps { * and the map property of a new polygon is always set to the DrawingManager's map. */ polygonOptions?: PolygonOptions; - /** + /** * Options to apply to any new polylines created with this DrawingManager. The path property is ignored, * and the map property of a new polyline is always set to the DrawingManager's map. */ @@ -2749,7 +2736,7 @@ declare namespace google.maps { */ export enum OverlayType { /** - * Specifies that the DrawingManager creates circles, and that the overlay given in the overlaycomplete + * Specifies that the DrawingManager creates circles, and that the overlay given in the overlaycomplete * event is a circle. */ CIRCLE, diff --git a/types/heremaps/heremaps-tests.ts b/types/heremaps/heremaps-tests.ts index d3e161cb74..97a2a82477 100644 --- a/types/heremaps/heremaps-tests.ts +++ b/types/heremaps/heremaps-tests.ts @@ -160,3 +160,16 @@ enterprieseRouter.calculateIsoline( console.log(error); } ); + +// Create a clustering provider +const clusteredDataProvider = new H.clustering.Provider([], { +clusteringOptions: { + // Maximum radius of the neighborhood + eps: 64, + // minimum weight of points required to form a cluster + minWeight: 3 +} +}); + +// Create a layer that will consume objects from our clustering provider +const layer = new H.map.layer.ObjectLayer(clusteredDataProvider); diff --git a/types/heremaps/index.d.ts b/types/heremaps/index.d.ts index ca32173bed..89e0992b82 100644 --- a/types/heremaps/index.d.ts +++ b/types/heremaps/index.d.ts @@ -2938,7 +2938,7 @@ declare namespace H { * @param provider {H.map.provider.ObjectProvider} - the ObjectProvider which provides the map objects to this object layer. * @param opt_options {H.map.layer.ObjectLayer.Options=} - The options for this layer */ - constructor(provider: H.map.provider.ObjectProvider, opt_options?: H.map.layer.ObjectLayer.Options); + constructor(provider: H.map.provider.ObjectProvider | H.clustering.Provider, opt_options?: H.map.layer.ObjectLayer.Options); /** * This method returns current ObjectLayer's data provider @@ -4017,6 +4017,17 @@ declare namespace H { type Options = any; } + /** + * This property specifies collection of pre-configured HERE layers + */ + interface DefaultLayers { + normal: H.service.MapType; + satellite: H.service.MapType; + terrain: H.service.MapType; + incidents: H.map.layer.MarkerTileLayer; + venues: H.map.layer.TileLayer; + } + /** * This class encapsulates Enterprise Routing REST API as a service stub. An instance of this class can be retrieved by calling the factory method on a platform instance. * H.service.Platform#getEnterpriseRoutingService. @@ -4473,17 +4484,19 @@ declare namespace H { /** * This method creates a pre-configured set of HERE tile layers for convenient use with the map. * @param opt_tileSize {(H.service.Platform.DefaultLayersOptions | number)=} - When a number – optional tile size to be queried from the HERE Map Tile API, default is 256. - * If theparameter is an object, then it represents options and all remaining below parameters should be omitted. + * If this parameter is a number, it indicates the tile size to be queried from the HERE Map Tile API (the default value is 256); if this parameter is an object, it represents + * configuration options for the layer and all the remaining parameters (below) should be omitted * @param opt_ppi {number=} - optional 'ppi' parameter to use when querying tiles, default is not specified * @param opt_lang {string=} - optional primary language parameter, default is not specified * @param opt_secondaryLang {string=} - optional secondary language parameter, default is not specified * @param opt_style {string=} - optional 'style' parameter to use when querying map tiles, default is not specified * @param opt_pois {(string | boolean)=} - indicates if pois are displayed on the map. Pass true to indicate that all pois should be visible. Alternatively you can specify mask for the * POI Categories as described at the Map Tile API documentation POI Categories chapter. - * @returns {Object} - a set of tile layers ready to use + * @returns {H.service.DefaultLayers} - a set of tile layers ready to use */ - createDefaultLayers(opt_tileSize?: (H.service.Platform.DefaultLayersOptions | number), opt_ppi?: number, opt_lang?: string, opt_secondaryLang?: string, opt_style?: string, - opt_pois?: (string | boolean)): H.service.Platform.MapTypes; + createDefaultLayers(opt_tileSize?: (H.service.Platform.DefaultLayersOptions | number), opt_ppi?: number, + opt_lang?: string, opt_secondaryLang?: string, opt_style?: string, + opt_pois?: (string | boolean)): H.service.DefaultLayers; /** * This method returns an instance of H.service.RoutingService to query the Routing API. @@ -5681,7 +5694,7 @@ declare namespace H { * @param opt_locale {(H.ui.i18n.Localization | string)=} - the language to use (or a full localization object). * @returns {H.ui.UI} - the UI instance configured with the default controls */ - static createDefault(map: H.Map, mapTypes: H.service.Platform.MapTypes, opt_locale?: H.ui.i18n.Localization | string): UI; + static createDefault(map: H.Map, mapTypes: H.service.Platform.MapTypes | H.service.DefaultLayers, opt_locale?: H.ui.i18n.Localization | string): H.ui.UI; /** * This method is used to capture the element view diff --git a/types/hls.js/index.d.ts b/types/hls.js/index.d.ts index 66ad839da1..e80eecae3f 100644 --- a/types/hls.js/index.d.ts +++ b/types/hls.js/index.d.ts @@ -757,39 +757,39 @@ declare namespace Hls { * Half of the estimate is based on the last abrEwmaSlowLive seconds of sample history. Each of the sample is weighted by the fragment loading duration. * parameter should be a float greater than abrEwmaFastLive */ - arbEwmaSlowLive: number; + abrEwmaSlowLive: number; /** * (default: 4.0) * Fast bitrate Exponential moving average half-life, used to compute average bitrate for VoD streams. * Half of the estimate is based on the last abrEwmaFastVoD seconds of sample history. Each of the sample is weighted by the fragment loading duration. * parameter should be a float greater than 0 */ - arbEwmaFastVod: number; + abrEwmaFastVod: number; /** * (default: 15.0) * Slow bitrate Exponential moving average half-life, used to compute average bitrate for VoD streams. * Half of the estimate is based on the last abrEwmaSlowVoD seconds of sample history. Each of the sample is weighted by the fragment loading duration. * parameter should be a float greater than abrEwmaFastVoD */ - arbEwmaSlowVod: number; + abrEwmaSlowVod: number; /** * (default: 500000) * Default bandwidth estimate in bits/second prior to collecting fragment bandwidth samples. * parameter should be a float */ - arbEwmaDefaultEstimate: number; + abrEwmaDefaultEstimate: number; /** * (default: 0.8) * Scale factor to be applied against measured bandwidth average, to determine whether we can stay on current or lower quality level. * If abrBandWidthFactor * bandwidth average < level.bitrate then ABR can switch to that level providing that it is equal or less than current level. */ - arbBandWidthFactor: number; + abrBandWidthFactor: number; /** * (default: 0.7) * Scale factor to be applied against measured bandwidth average, to determine whether we can switch up to a higher quality level. * If abrBandWidthUpFactor * bandwidth average < level.bitrate then ABR can switch up to that quality level. */ - arbBandWidthUpFactor: number; + abrBandWidthUpFactor: number; /** * (default: false) * max bitrate used in ABR by avg measured bitrate i.e. if bitrate signaled in variant manifest for a given level is 2Mb/s but average bitrate measured on this level is 2.5Mb/s, @@ -1161,39 +1161,39 @@ declare namespace Hls { * Half of the estimate is based on the last abrEwmaSlowLive seconds of sample history. Each of the sample is weighted by the fragment loading duration. * parameter should be a float greater than abrEwmaFastLive */ - arbEwmaSlowLive?: number; + abrEwmaSlowLive?: number; /** * (default: 4.0) * Fast bitrate Exponential moving average half-life, used to compute average bitrate for VoD streams. * Half of the estimate is based on the last abrEwmaFastVoD seconds of sample history. Each of the sample is weighted by the fragment loading duration. * parameter should be a float greater than 0 */ - arbEwmaFastVod?: number; + abrEwmaFastVod?: number; /** * (default: 15.0) * Slow bitrate Exponential moving average half-life, used to compute average bitrate for VoD streams. * Half of the estimate is based on the last abrEwmaSlowVoD seconds of sample history. Each of the sample is weighted by the fragment loading duration. * parameter should be a float greater than abrEwmaFastVoD */ - arbEwmaSlowVod?: number; + abrEwmaSlowVod?: number; /** * (default: 500000) * Default bandwidth estimate in bits/second prior to collecting fragment bandwidth samples. * parameter should be a float */ - arbEwmaDefaultEstimate?: number; + abrEwmaDefaultEstimate?: number; /** * (default: 0.8) * Scale factor to be applied against measured bandwidth average, to determine whether we can stay on current or lower quality level. * If abrBandWidthFactor * bandwidth average < level.bitrate then ABR can switch to that level providing that it is equal or less than current level. */ - arbBandWidthFactor?: number; + abrBandWidthFactor?: number; /** * (default: 0.7) * Scale factor to be applied against measured bandwidth average, to determine whether we can switch up to a higher quality level. * If abrBandWidthUpFactor * bandwidth average < level.bitrate then ABR can switch up to that quality level. */ - arbBandWidthUpFactor?: number; + abrBandWidthUpFactor?: number; /** * (default: false) * max bitrate used in ABR by avg measured bitrate i.e. if bitrate signaled in variant manifest for a given level is 2Mb/s but average bitrate measured on this level is 2.5Mb/s, diff --git a/types/i18next-browser-languagedetector/i18next-browser-languagedetector-tests.ts b/types/i18next-browser-languagedetector/i18next-browser-languagedetector-tests.ts index 9f36a7d538..eadfcea369 100644 --- a/types/i18next-browser-languagedetector/i18next-browser-languagedetector-tests.ts +++ b/types/i18next-browser-languagedetector/i18next-browser-languagedetector-tests.ts @@ -1,31 +1,40 @@ -import * as i18next from 'i18next'; -import LngDetector from 'i18next-browser-languagedetector'; +import * as i18next from "i18next"; +import * as LngDetector from "i18next-browser-languagedetector"; -var options = { +const options: LngDetector.DetectorOptions = { // order and from where user language should be detected - order: ['querystring', 'cookie', 'localStorage', 'navigator'], + order: ["querystring", "cookie", "localStorage", "navigator", "htmlTag"], // keys or params to lookup language from - lookupQuerystring: 'lng', - lookupCookie: 'i18next', - lookupLocalStorage: 'i18nextLng', + lookupQuerystring: "lng", + lookupCookie: "i18next", + lookupLocalStorage: "i18nextLng", // cache user language on - caches: ['localStorage', 'cookie'], + caches: ["localStorage", "cookie"], + excludeCacheFor: ["cimode"], // languages to not persist (cookie, localStorage) // optional expire and domain for set cookie cookieMinutes: 10, - cookieDomain: 'myDomain' -}; -var myDetector = { - name: 'myDetectorsName', + cookieDomain: "myDomain", - lookup(options: Object) { + // optional htmlTag with lang attribute, the default is: + htmlTag: document.documentElement +}; + +i18next.use(LngDetector).init({ + detection: options +}); + +const customDetector: LngDetector.CustomDetector = { + name: "myDetectorsName", + + lookup(options: LngDetector.DetectorOptions) { // options -> are passed in options - return 'en'; + return "en"; }, - cacheUserLanguage(lng: string, options: Object) { + cacheUserLanguage(lng: string, options: LngDetector.DetectorOptions) { // options -> are passed in options // lng -> current language, will be called after init and on changeLanguage @@ -33,10 +42,20 @@ var myDetector = { } }; -i18next.use(LngDetector).init({ - detection: options -}); +const customDetector2: LngDetector.CustomDetector = { + name: "myDetectorsName", + lookup(options: LngDetector.DetectorOptions) { + return undefined; + } +}; const lngDetector = new LngDetector(null, options); + lngDetector.init(options); -lngDetector.addDetector(myDetector); +lngDetector.addDetector(customDetector); + +i18next + .use(lngDetector) + .init({ + detection: options + }); diff --git a/types/i18next-browser-languagedetector/index.d.ts b/types/i18next-browser-languagedetector/index.d.ts index 906910fa49..1e85fd81e4 100644 --- a/types/i18next-browser-languagedetector/index.d.ts +++ b/types/i18next-browser-languagedetector/index.d.ts @@ -1,86 +1,64 @@ -// Type definitions for i18next-browser-languagedetector 0.0.14 +// Type definitions for i18next-browser-languagedetector 2.0 // Project: http://i18next.com/ -// Definitions by: Cyril Schumacher +// Definitions by: Cyril Schumacher , Giedrius Grabauskas // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -/// -/// - -declare namespace I18next { - interface I18nextStatic extends i18nextBrowserLanguageDetector.I18nextStatic { } - interface I18nextOptions extends i18nextBrowserLanguageDetector.I18nextOptions { } -} - declare namespace i18nextBrowserLanguageDetector { - /** - * @summary Interface for Language detector options. - * @interface - */ - interface LanguageDetectorOptions { - caches?: Array|boolean; - cookieDomain?: string; - cookieExpirationDate?: Date; - lookupCookie?: string; - lookupFromPathIndex?: number; + interface DetectorOptions { + /** + * order and from where user language should be detected + */ + order?: Array<"querystring" | "cookie" | "localStorage" | "navigator" | "htmlTag" | string>; + + /** + * keys or params to lookup language from + */ lookupQuerystring?: string; - lookupSession?: string; - order?: Array; + lookupCookie?: string; + lookupLocalStorage?: string; + + /** + * cache user language on + */ + caches?: string[]; + + /** + * languages to not persist (cookie, localStorage) + */ + excludeCacheFor?: string[]; + + /** + * optional expire and domain for set cookie + * @default 10 + */ + cookieMinutes?: number; + cookieDomain?: string; + + /** + * optional htmlTag with lang attribute + * @default document.documentElement + */ + htmlTag?: HTMLElement; } - /** - * @summary Interface for custom detector. - * @interface - */ interface CustomDetector { name: string; - - //todo: Checks paramters type. - cacheUserLanguage: (lng: string, options: Object) => void; - lookup: (options: Object) => string; - } - - /** - * @summary i18next options. - * @interface - */ - interface I18nextOptions { - detection?: LanguageDetectorOptions; - } - - /** - * @summary i18next interface. - * @interface - */ - interface I18nextStatic { - use(module: LngDetector): I18nextStatic; - } - - /** - * @summary i18next language detection. - * @class - */ - class LngDetector { - /** - * @summary Constructor. - * @constructor - */ - constructor(services?: any, options?: LanguageDetectorOptions); - - /** - * @summary Adds detector. - * @param {CustomDetector} detector The custom detector. - */ - addDetector(detector: CustomDetector): LngDetector; - - /** - * @summary Initializes detector. - * @param {LanguageDetectorOptions} options The options. - */ - init(options?: LanguageDetectorOptions): void; + cacheUserLanguage?(lng: string, options: DetectorOptions): void; + lookup(options: DetectorOptions): string | undefined; } } -declare module "i18next-browser-languagedetector" { +declare class i18nextBrowserLanguageDetector { + constructor(services?: any, options?: i18nextBrowserLanguageDetector.DetectorOptions); + /** + * Adds detector. + */ + addDetector(detector: i18nextBrowserLanguageDetector.CustomDetector): i18nextBrowserLanguageDetector; - export default i18nextBrowserLanguageDetector.LngDetector; + /** + * Initializes detector. + */ + init(options?: i18nextBrowserLanguageDetector.DetectorOptions): void; } + +export = i18nextBrowserLanguageDetector; diff --git a/types/i18next-browser-languagedetector/tsconfig.json b/types/i18next-browser-languagedetector/tsconfig.json index 15c0de0371..eeb1bd7670 100644 --- a/types/i18next-browser-languagedetector/tsconfig.json +++ b/types/i18next-browser-languagedetector/tsconfig.json @@ -2,11 +2,12 @@ "compilerOptions": { "module": "commonjs", "lib": [ - "es6" + "es6", + "dom" ], "noImplicitAny": true, "noImplicitThis": true, - "strictNullChecks": false, + "strictNullChecks": true, "baseUrl": "../", "typeRoots": [ "../" @@ -19,4 +20,4 @@ "index.d.ts", "i18next-browser-languagedetector-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/i18next-browser-languagedetector/tslint.json b/types/i18next-browser-languagedetector/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/i18next-browser-languagedetector/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/i18next-browser-languagedetector/v0/i18next-browser-languagedetector-tests.ts b/types/i18next-browser-languagedetector/v0/i18next-browser-languagedetector-tests.ts new file mode 100644 index 0000000000..0217ca74ce --- /dev/null +++ b/types/i18next-browser-languagedetector/v0/i18next-browser-languagedetector-tests.ts @@ -0,0 +1,42 @@ +import * as i18next from 'i18next'; +import LngDetector from 'i18next-browser-languagedetector'; + +const options = { + // order and from where user language should be detected + order: ['querystring', 'cookie', 'localStorage', 'navigator'], + + // keys or params to lookup language from + lookupQuerystring: 'lng', + lookupCookie: 'i18next', + lookupLocalStorage: 'i18nextLng', + + // cache user language on + caches: ['localStorage', 'cookie'], + + // optional expire and domain for set cookie + cookieMinutes: 10, + cookieDomain: 'myDomain' +}; +const myDetector = { + name: 'myDetectorsName', + + lookup(options: {}) { + // options -> are passed in options + return 'en'; + }, + + cacheUserLanguage(lng: string, options: {}) { + // options -> are passed in options + // lng -> current language, will be called after init and on changeLanguage + + // store it + } +}; + +i18next.use(LngDetector).init({ + detection: options +}); + +const lngDetector = new LngDetector(null, options); +lngDetector.init(options); +lngDetector.addDetector(myDetector); diff --git a/types/i18next-browser-languagedetector/v0/index.d.ts b/types/i18next-browser-languagedetector/v0/index.d.ts new file mode 100644 index 0000000000..424573f9b8 --- /dev/null +++ b/types/i18next-browser-languagedetector/v0/index.d.ts @@ -0,0 +1,82 @@ +// Type definitions for i18next-browser-languagedetector 0.0 +// Project: http://i18next.com/ +// Definitions by: Cyril Schumacher , Giedrius Grabauskas +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +import * as i18next from "i18next"; + +declare namespace I18next { + interface I18nextStatic extends i18nextBrowserLanguageDetector.I18nextStatic { } + interface I18nextOptions extends i18nextBrowserLanguageDetector.I18nextOptions { } +} + +declare namespace i18nextBrowserLanguageDetector { + /** + * @summary Interface for Language detector options. + * @interface + */ + interface LanguageDetectorOptions { + caches?: string[] | boolean; + cookieDomain?: string; + cookieExpirationDate?: Date; + lookupCookie?: string; + lookupFromPathIndex?: number; + lookupQuerystring?: string; + lookupSession?: string; + order?: string[]; + } + + /** + * @summary Interface for custom detector. + * @interface + */ + interface CustomDetector { + name: string; + + // todo: Checks paramters type. + cacheUserLanguage(lng: string, options: {}): void; + lookup(options: {}): string; + } + + /** + * @summary i18next options. + * @interface + */ + interface I18nextOptions { + detection?: LanguageDetectorOptions; + } + + /** + * @summary i18next interface. + * @interface + */ + interface I18nextStatic { + use(module: LngDetector): I18nextStatic; + } + + /** + * @summary i18next language detection. + * @class + */ + class LngDetector { + /** + * @summary Constructor. + * @constructor + */ + constructor(services?: any, options?: LanguageDetectorOptions); + + /** + * @summary Adds detector. + * @param {CustomDetector} detector The custom detector. + */ + addDetector(detector: CustomDetector): LngDetector; + + /** + * @summary Initializes detector. + * @param {LanguageDetectorOptions} options The options. + */ + init(options?: LanguageDetectorOptions): void; + } +} + +export default i18nextBrowserLanguageDetector.LngDetector; diff --git a/types/i18next-browser-languagedetector/v0/tsconfig.json b/types/i18next-browser-languagedetector/v0/tsconfig.json new file mode 100644 index 0000000000..61e38c316d --- /dev/null +++ b/types/i18next-browser-languagedetector/v0/tsconfig.json @@ -0,0 +1,27 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../../", + "typeRoots": [ + "../../" + ], + "paths": { + "i18next-browser-languagedetector": [ + "i18next-browser-languagedetector/v0" + ] + }, + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "i18next-browser-languagedetector-tests.ts" + ] +} diff --git a/types/i18next-browser-languagedetector/v0/tslint.json b/types/i18next-browser-languagedetector/v0/tslint.json new file mode 100644 index 0000000000..af6baaddc0 --- /dev/null +++ b/types/i18next-browser-languagedetector/v0/tslint.json @@ -0,0 +1,11 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "interface-name": [ + false + ], + "no-empty-interface": [ + false + ] + } +} diff --git a/types/i18next-xhr-backend/i18next-xhr-backend-tests.ts b/types/i18next-xhr-backend/i18next-xhr-backend-tests.ts index 9c12809271..858b2b28f9 100644 --- a/types/i18next-xhr-backend/i18next-xhr-backend-tests.ts +++ b/types/i18next-xhr-backend/i18next-xhr-backend-tests.ts @@ -1,18 +1,30 @@ -import * as i18next from 'i18next'; -import XHR from 'i18next-xhr-backend'; +import * as i18next from "i18next"; +import * as XHR from "i18next-xhr-backend"; -let options = { - loadPath: '', - addPath: '', +const options: XHR.BackendOptions = { + loadPath: "/locales/{{lng}}/{{ns}}.json", + addPath: "locales/add/{{lng}}/{{ns}}", allowMultiLoading: false, - parse: function(data:string) { return data.replace(/a/g, ''); }, + parse: (data: string) => data.replace(/a/g, ""), crossDomain: false, withCredentials: false, - ajax: function (url:string, options:Object, callback: Function, data: Object) {} + ajax: (url: string, options: XHR.BackendOptions, callback: XHR.AjaxRequestCallback, data: {}) => { }, + queryStringParams: { v: "1.3.5" } }; -i18next.use(XHR).init({ - backend: options -}); +i18next + .use(XHR) + .init({ + backend: options + }); -let xhr = new XHR(null, options); \ No newline at end of file +const xhr = new XHR(); +xhr.init(options); +const xhr2 = new XHR(null, options); +const type: string = xhr.type; +const newOptions: XHR.BackendOptions = xhr.options; +xhr.create("en", "ns", "key", "value"); +xhr.create(["en", "us"], "ns", "key", "value"); +xhr.read("en", "ns", (error: any, result: string | false) => { }); +xhr.readMulti(["en"], ["ns"], (error: any, result: string | false) => { }); +xhr.loadUrl("someurl", (error: any, result: string) => { }); diff --git a/types/i18next-xhr-backend/index.d.ts b/types/i18next-xhr-backend/index.d.ts index d1c95a0bd3..a3190ca878 100644 --- a/types/i18next-xhr-backend/index.d.ts +++ b/types/i18next-xhr-backend/index.d.ts @@ -1,36 +1,74 @@ -// Type definitions for i18next-xhr-backend 1.2.0 +// Type definitions for i18next-xhr-backend 1.4 // Project: https://github.com/i18next/i18next-xhr-backend -// Definitions by: Jan Mühlemann +// Definitions by: Jan Mühlemann , Giedrius Grabauskas // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -declare module 'i18next-xhr-backend' { - - interface Interpolator { - interpolate: () => string - } - interface Services { - interpolator: Interpolator - } +declare namespace I18NextXhrBackend { + type LoadPathOption = string | ((lngs: string[], namespaces: string[]) => string); interface BackendOptions { - loadPath?: string | Function, - addPath?: string, - allowMultiLoading?: boolean, - parse?: Function, - crossDomain?: boolean, - withCredentials?: boolean, - ajax?: Function + /** + * path where resources get loaded from, or a function + * returning a path: + * function(lngs, namespaces) { return customPath; } + * the returned path will interpolate lng, ns if provided like giving a static path + */ + loadPath?: LoadPathOption; + /** + * path to post missing resources + */ + addPath?: string; + /** + * your backend server supports multiLoading + * locales/resources.json?lng=de+en&ns=ns1+ns2 + * set loadPath: '/locales/resources.json?lng={{lng}}&ns={{ns}}' to adapt to multiLoading + */ + allowMultiLoading?: boolean; + /** + * parse data after it has been fetched + * in example use https://www.npmjs.com/package/json5 + * here it removes the letter a from the json (bad idea) + */ + parse?(data: string): string; + /** + * allow cross domain requests + */ + crossDomain?: boolean; + /** + * allow credentials on cross domain requests + */ + withCredentials?: boolean; + /** + * define a custom xhr function + * can be used to support XDomainRequest in IE 8 and 9 + */ + ajax?(url: string, options: BackendOptions, callback: AjaxRequestCallback, data: {} | string, cache: boolean): void; + /** + * adds parameters to resource URL. 'example.com' -> 'example.com?v=1.3.5' + */ + queryStringParams?: { [key: string]: string }; + + /** + * @see https://github.com/i18next/i18next-xhr-backend/blob/281c7e235e1157b33122adacef1957252e5700f1/src/ajax.js#L52 + */ + customHeaders?: { [key: string]: string }; } - export default class Backend { - type: 'backend'; - services: Services; - options: BackendOptions; - constructor(services?: Services, options?: BackendOptions); - init(services?: Services, options?: BackendOptions): void; - readMulti(languages: any[], namespaces: any[], callback: Function): void; - read(language: {}, namespace: {}, callback: Function): void; - loadUrl(url: string, callback: Function): void; - create(languages: any[], namespace: string, key: string, fallbackValue: string): void; - } -} \ No newline at end of file + type AjaxRequestCallback = (response: string, x: XMLHttpRequest) => void; + + type LoadCallback = (error: any, result: string | false) => void; +} + +declare class I18NextXhrBackend { + constructor(services?: any, options?: I18NextXhrBackend.BackendOptions); + init(options?: I18NextXhrBackend.BackendOptions): void; + readMulti(languages: string[], namespaces: string[], callback: I18NextXhrBackend.LoadCallback): void; + read(language: string, namespace: string, callback: I18NextXhrBackend.LoadCallback): void; + loadUrl(url: string, callback: I18NextXhrBackend.LoadCallback): void; + create(languages: string | string[], namespace: string, key: string, fallbackValue: string): void; + type: "backend"; + services: any; + options: I18NextXhrBackend.BackendOptions; +} + +export = I18NextXhrBackend; diff --git a/types/i18next-xhr-backend/tsconfig.json b/types/i18next-xhr-backend/tsconfig.json index 2b08241bb5..f6f93640ce 100644 --- a/types/i18next-xhr-backend/tsconfig.json +++ b/types/i18next-xhr-backend/tsconfig.json @@ -2,7 +2,8 @@ "compilerOptions": { "module": "commonjs", "lib": [ - "es6" + "es6", + "dom" ], "noImplicitAny": true, "noImplicitThis": true, @@ -19,4 +20,4 @@ "index.d.ts", "i18next-xhr-backend-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/i18next-xhr-backend/tslint.json b/types/i18next-xhr-backend/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/i18next-xhr-backend/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/is-alphanumerical/index.d.ts b/types/is-alphanumerical/index.d.ts similarity index 100% rename from is-alphanumerical/index.d.ts rename to types/is-alphanumerical/index.d.ts diff --git a/is-alphanumerical/is-alphanumerical-tests.ts b/types/is-alphanumerical/is-alphanumerical-tests.ts similarity index 100% rename from is-alphanumerical/is-alphanumerical-tests.ts rename to types/is-alphanumerical/is-alphanumerical-tests.ts diff --git a/is-alphanumerical/tsconfig.json b/types/is-alphanumerical/tsconfig.json similarity index 100% rename from is-alphanumerical/tsconfig.json rename to types/is-alphanumerical/tsconfig.json diff --git a/types/is-alphanumerical/tslint.json b/types/is-alphanumerical/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/is-alphanumerical/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jquery/README.md b/types/jquery/README.md index 8fab451ce0..3d5fbc2ce1 100644 --- a/types/jquery/README.md +++ b/types/jquery/README.md @@ -31,6 +31,8 @@ Note that while the factory function ignores the second parameter, it is require - Tests generated from examples in jQuery documentation. - [test/longdesc-tests.ts](test/longdesc-tests.ts) - Tests generated from non-example snippets in jQuery documentation. +- [test/learn-tests.ts](test/learn-tests.ts) + - Tests imported from examples in [jQuery Learning Center](https://learn.jquery.com). - [test/jquery-window-module-tests.ts](test/jquery-window-module-tests.ts)
[test/jquery-slim-window-module-tests.ts](test/jquery-slim-window-module-tests.ts) - Tests importing jQuery with a DOM available diff --git a/types/jquery/test/learn-tests.ts b/types/jquery/test/learn-tests.ts new file mode 100644 index 0000000000..17fc7cd285 --- /dev/null +++ b/types/jquery/test/learn-tests.ts @@ -0,0 +1,17 @@ +// From https://learn.jquery.com/plugins/basic-plugin-creation/ + +// Basic Plugin Authoring + +interface JQuery { + greenify: GreenifyPlugin; +} + +interface GreenifyPlugin { + (this: JQuery): void; +} + +jQuery.fn.greenify = function() { + this.css( "color", "green" ); +}; + +jQuery( "a" ).greenify(); // Makes all the links green. diff --git a/types/jquery/tsconfig.json b/types/jquery/tsconfig.json index 21d35a63da..901642e583 100644 --- a/types/jquery/tsconfig.json +++ b/types/jquery/tsconfig.json @@ -22,6 +22,7 @@ "jquery-tests.ts", "test/example-tests.ts", "test/longdesc-tests.ts", + "test/learn-tests.ts", "test/jquery-no-window-module-tests.ts", "test/jquery-window-module-tests.ts", "test/jquery-slim-no-window-module-tests.ts", diff --git a/types/js-yaml/index.d.ts b/types/js-yaml/index.d.ts index d19f10a61c..2817689c29 100644 --- a/types/js-yaml/index.d.ts +++ b/types/js-yaml/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for js-yaml 3.5.2 +// Type definitions for js-yaml 3.9.0 // Project: https://github.com/nodeca/js-yaml // Definitions by: Bart van der Schoor , Sebastian Clausen // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -51,6 +51,8 @@ declare namespace jsyaml { noRefs?: boolean; // if true don't try to be compatible with older yaml versions. Currently: don't quote "yes", "no" and so on, as required for YAML 1.1 (default: false) noCompatMode?: boolean; + // if true flow sequences will be condensed, omitting the space between `key: value` or `a, b`. Eg. `'[a,b]'` or `{a:{b:c}}`. Can be useful when using yaml for pretty URL query params as spaces are %-encoded. (default: false) + condenseFlow?: boolean; } export interface TypeConstructorOptions { diff --git a/types/jsnox/index.d.ts b/types/jsnox/index.d.ts index ad5fe5ed2e..791141da16 100644 --- a/types/jsnox/index.d.ts +++ b/types/jsnox/index.d.ts @@ -1,11 +1,10 @@ -// Type definitions for JSnoX +// Type definitions for JSnoX 2.1 // Project: https://github.com/af/jsnox // Definitions by: Steve Baker +// Dovydas Navickas // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 -/// - import * as React from "react"; /* @@ -13,13 +12,10 @@ import * as React from "react"; * This will normally be the React object but could be something else */ interface ReactLikeObject { - createElement

(type: React.ComponentClass

| string, - props: P, children: React.ReactNode): React.ReactElement

; + createElement

(type: React.ComponentClass

| string, props: P, children: React.ReactNode): React.ReactElement

; } -interface Module { - (reactObj: ReactLikeObject): CreateElement -} +type Module = (reactObj: ReactLikeObject) => CreateElement; interface CreateElement { /** @@ -30,7 +26,7 @@ interface CreateElement { * @param children A single React node (string or ReactElement) or array of nodes. * Note that unlike with React itself, multiple children must be placed into an array. */ -

(specString: string, children: React.ReactNode): React.DOMElement +

(specString: string, children: React.ReactNode): React.DOMElement; /** * Renders an HTML element from the given spec string, with optional props @@ -41,8 +37,7 @@ interface CreateElement { * @param children A single React node (string or ReactElement) or array of nodes. * Note that unlike with React itself, multiple children must be placed into an array. */ -

(specString: string, props?: React.HTMLAttributes<{}>, children?: React.ReactNode): React.DOMElement - +

(specString: string, props?: React.HTMLAttributes<{}>, children?: React.ReactNode): React.DOMElement; /** * Renders a React component, with children but no props @@ -51,7 +46,7 @@ interface CreateElement { * @param children A single React node (string or ReactElement) or array of nodes. * Note that unlike with React itself, multiple children must be placed into an array. */ -

(component: React.ComponentClass

, children: React.ReactNode): React.ReactElement

+

(component: React.ComponentClass

, children: React.ReactNode): React.ReactElement

; /** * Renders a React component, with optional props and children @@ -61,8 +56,8 @@ interface CreateElement { * @param children A single React node (string or ReactElement) or array of nodes. * Note that unlike with React itself, multiple children must be placed into an array. */ -

(component: React.ComponentClass

, props?: P, children?: React.ReactNode): React.ReactElement

+

(component: React.ComponentClass

, props?: P, children?: React.ReactNode): React.ReactElement

; } -declare var exports: Module -export = exports +declare var exports: Module; +export = exports; diff --git a/types/jsnox/jsnox-tests.ts b/types/jsnox/jsnox-tests.ts index 26014b362f..08821ca8c3 100644 --- a/types/jsnox/jsnox-tests.ts +++ b/types/jsnox/jsnox-tests.ts @@ -1,57 +1,56 @@ - -import * as React from 'react'; -import * as jsnox from 'jsnox'; -var $ = jsnox(React); +import * as React from "react"; +import * as jsnox from "jsnox"; +let $ = jsnox(React); interface PersonProps { - firstName: string - lastName: string - age: number + firstName: string; + lastName: string; + age: number; } -var Person = React.createClass({ - render():React.ReactElement { return null; } +let Person: React.ClassicComponentClass = React.createClass({ + render(): React.ReactElement { return null; } }); -var PersonTag = React.createFactory(Person); +let PersonTag = React.createFactory(Person); -var clickHandler: React.MouseEventHandler<{}>; +let clickHandler: React.MouseEventHandler<{}>; -// Tests with spec string -function spec_string () { - var result: React.ReactHTMLElement +// tests with spec string +function spec_string(): void { + let result: React.DOMElement, Element>; // just spec string - result = $('div') + result = $("div"); - // No properties, just children - result = $('div', 'hello') // one string child - result = $('div', $('span', 'world')) // one element child - result = $('div', ['hello', $('span', 'world')]) // mixed array of children + // no properties, just children + result = $("div", "hello"); // one string child + result = $("div", $("span", "world")); // one element child + result = $("div", ["hello", $("span", "world")]); // mixed array of children - // With html properties - result = $('div', { onClick: clickHandler }) // no children - result = $('div', { onClick: clickHandler }, 'hello') // one string child - result = $('div', { onClick: clickHandler }, $('span', 'world')) // one element child - result = $('div', { onClick: clickHandler }, ['hello', $('span', 'world')]) // mixed array of children + // with html properties + result = $("div", { onClick: clickHandler }); // no children + result = $("div", { onClick: clickHandler }, "hello"); // one string child + result = $("div", { onClick: clickHandler }, $("span", "world")); // one element child + result = $("div", { onClick: clickHandler }, ["hello", $("span", "world")]); // mixed array of children } -// Tests with react component -function react_component() { - var result: React.ReactElement<{}> +// tests with react component +function react_component(): void { + let result: React.ReactElement<{}>; // with nothing more - result = $(Person) + result = $(Person); - // No properties, just children - result = $(Person, 'hello') // one string child - result = $(Person, $('span', 'world')) // one element child - result = $(Person, ['hello', $('span', 'world')]) // mixed array of children + // no properties, just children + result = $(Person, "hello"); // one string child + result = $(Person, $("span", "world")); // one element child + result = $(Person, ["hello", $("span", "world")]); // mixed array of children - // With component props - var props = { firstName: 'Bob', lastName: 'Garfield', age: 72 } - result = $(Person, props) // no children - result = $(Person, props, 'hello') // one string child - result = $(Person, props, $('span', 'world')) // one element child - result = $(Person, props, ['hello', PersonTag()]) // mixed array of children + // with component props + let props: PersonProps = { firstName: "Bob", lastName: "Garfield", age: 72 }; + result = $(Person, props); // no children + result = $(Person, props, "hello"); // one string child + result = $(Person, props, $("span", "world")); // one element child + result = $(Person, props, ["hello", PersonTag()]); // mixed array of children } diff --git a/types/jsnox/tslint.json b/types/jsnox/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/jsnox/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/jsonp/index.d.ts b/types/jsonp/index.d.ts new file mode 100644 index 0000000000..3f1df60c87 --- /dev/null +++ b/types/jsonp/index.d.ts @@ -0,0 +1,19 @@ +// Type definitions for jsonp 0.2 +// Project: https://github.com/LearnBoost/jsonp +// Definitions by: Savva Surenkov +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +export = jsonp; + +declare function jsonp(url: string, options?: Options, cb?: RequestCallback): CancelFn; +declare function jsonp(url: string, callback?: RequestCallback): CancelFn; + +type CancelFn = () => void; +type RequestCallback = (error: Error | null, data: any) => void; + +interface Options { + param?: string; + prefix?: string; + name?: string; + timeout?: number; +} diff --git a/types/jsonp/jsonp-tests.ts b/types/jsonp/jsonp-tests.ts new file mode 100644 index 0000000000..703e104912 --- /dev/null +++ b/types/jsonp/jsonp-tests.ts @@ -0,0 +1,28 @@ +import jsonp = require('jsonp'); + +/** + * Dummy response callback. + */ +const print = (err: Error | null, data: any) => + console.log(err !== null ? err.message : data); + +/** + * Tests jsonp request with default parameters. + */ +const cancel1 = jsonp('https://jsonplaceholder.typicode.com/posts/1', print); +cancel1(); + +/** + * Tests parametrized jsonp request. + */ +const cancel2 = jsonp( + 'https://jsonplaceholder.typicode.com/posts/1', + { + param: 'cb', + timeout: 40000, + prefix: '_jsonp', + name: 'func', + }, + print, +); +cancel2(); diff --git a/types/jsonp/tsconfig.json b/types/jsonp/tsconfig.json new file mode 100644 index 0000000000..4ba94d9d89 --- /dev/null +++ b/types/jsonp/tsconfig.json @@ -0,0 +1,21 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": ["../"], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "jsonp-tests.ts" + ] +} diff --git a/types/jsonp/tslint.json b/types/jsonp/tslint.json new file mode 100644 index 0000000000..a62d0d4e68 --- /dev/null +++ b/types/jsonp/tslint.json @@ -0,0 +1,6 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + "ban-types": false + } +} diff --git a/types/jsonpath/index.d.ts b/types/jsonpath/index.d.ts index e691f860e1..36a04ef0de 100644 --- a/types/jsonpath/index.d.ts +++ b/types/jsonpath/index.d.ts @@ -1,18 +1,65 @@ -// Type definitions for jsonpath 0.1.3 +// Type definitions for jsonpath 0.2.11 // Project: https://www.npmjs.org/package/jsonpath -// Definitions by: Hiroki Horiuchi +// Definitions by: Hiroki Horiuchi , Ika // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped - - type PathComponent = string | number; -export declare function query(obj: any, pathExpression: string): any[]; -export declare function paths(obj: any, pathExpression: string): PathComponent[][]; -export declare function nodes(obj: any, pathExpression: string): { path: PathComponent[]; value: any; }[]; +/** + * Find elements in `obj` matching `pathExpression`. Returns an array of elements that + * satisfy the provided JSONPath expression,or an empty array if none were matched. + * Returns only first `count` elements if specified. + */ +export declare function query(obj: any, pathExpression: string, count?: number): any[]; + +/** + * Find paths to elements in `obj` matching `pathExpression`. Returns an array of + * element paths that satisfy the provided JSONPath expression. Each path is itself an + * array of keys representing the location within `obj` of the matching element. Returns + * only first `count` paths if specified. + */ +export declare function paths(obj: any, pathExpression: string, count?: number): PathComponent[][]; + +/** + * Find elements and their corresponding paths in `obj` matching `pathExpression`. + * Returns an array of node objects where each node has a `path` containing an array of + * keys representing the location within `obj`, and a `value` pointing to the matched + * element. Returns only first `count` nodes if specified. + */ +export declare function nodes(obj: any, pathExpression: string, count?: number): { path: PathComponent[]; value: any; }[]; + +/** + * Returns the value of the first element matching `pathExpression`. If `newValue` is + * provided, sets the value of the first matching element and returns the new value. + */ export declare function value(obj: any, pathExpression: string): any; -export declare function value(obj: any, pathExpression: string, newValue: any): any; +export declare function value(obj: any, pathExpression: string, newValue: T): T; + +/** + * Returns the parent of the first matching element. + */ export declare function parent(obj: any, pathExpression: string): any; + +/** + * Runs the supplied function `fn` on each matching element, and replaces each + * matching element with the return value from the function. The function accepts the + * value of the matching element as its only parameter. Returns matching nodes with + * their updated values. + */ export declare function apply(obj: any, pathExpression: string, fn: (x: any) => any): { path: PathComponent[]; value: any; }[]; + +/** + * Parse the provided JSONPath expression into path components and their associated + * operations. + */ export declare function parse(pathExpression: string): any[]; + +/** + * Returns a path expression in string form, given a path. The supplied path may either + * be a flat array of keys, as returned by `jp.nodes` for example, or may alternatively be a + * fully parsed path expression in the form of an array of path components as returned + * by `jp.parse`. + */ export declare function stringify(path: PathComponent[]): string; + +export as namespace jsonpath; diff --git a/types/jsonpath/jsonpath-tests.ts b/types/jsonpath/jsonpath-tests.ts index 770258a94f..a6e805c5e8 100644 --- a/types/jsonpath/jsonpath-tests.ts +++ b/types/jsonpath/jsonpath-tests.ts @@ -1,54 +1,31 @@ - import jp = require('jsonpath'); var data: any; -/** - * jp.query(obj, pathExpression) - * Find elements in obj matching pathExpression. Returns an array of elements that satisfy the provided JSONPath expression, or an empty array if none were matched. - */ +// jp.query() var authors = jp.query(data, '$..author'); +var authors = jp.query(data, '$..author', 2); -/** - * jp.paths(obj, pathExpression) - * Find elements in obj matching pathExpression. Returns an array of element paths that satisfy the provided JSONPath expression. Each path is itself an array of keys representing the location within obj of the matching element. - */ +// jp.paths() var paths = jp.paths(data, '$..author'); +var paths = jp.paths(data, '$..author', 2); -/** - * jp.nodes(obj, pathExpression) - * Find elements and their corresponding paths in obj matching pathExpression. Returns an array of node objects where each node has a path containing an array of keys representing the location within obj, and a value pointing to the matched element. - */ +// jp.nodes() var nodes = jp.nodes(data, '$..author'); +var nodes = jp.nodes(data, '$..author', 2); -/** - * jp.value(obj, pathExpression, [newValue]) - * Returns the value of the first element matching pathExpression. If newValue is provided, sets the value of the first matching element and returns the new value. - */ +// jp.value() var value = jp.value(data, '$.store..price'); jp.value(data, '$.store..price', 12.5); -/** - * jp.parent(obj, pathExpression) - * Returns the parent of the first matching element. - */ +// jp.parent() var parent = jp.parent(data, '$.store..price'); -/** - * jp.apply(obj, pathExpression, fn) - * Runs the supplied function fn on each matching element, and replaces each matching element with the return value from the function. The function accepts the value of the matching element as its only parameter. Returns matching nodes with their updated values. - */ +// jp.apply() var nodes = jp.apply(data, '$..author', (value: string) => { return value.toUpperCase() }); -/** - * jp.parse(pathExpression) - * Parse the provided JSONPath expression into path components and their associated operations. - */ +// jp.parse() var path = jp.parse('$..author'); -/** - * jp.stringify(path) - * Returns a path expression in string form, given a path. The supplied path may either be a flat array of keys, as returned by jp.nodes for example, or may alternatively be a fully parsed path expression in the form of an array of path components as returned by jp.parse. - */ +// jp.stringify() var pathExpression = jp.stringify(['$', 'store', 'book', 0, 'author']); - diff --git a/types/jsonwebtoken/index.d.ts b/types/jsonwebtoken/index.d.ts index 02a4a87dbb..246d107dbb 100644 --- a/types/jsonwebtoken/index.d.ts +++ b/types/jsonwebtoken/index.d.ts @@ -27,7 +27,7 @@ export class NotBeforeError extends JsonWebTokenError { export interface SignOptions { /** * Signature algorithm. Could be one of these values : - * - HS256: HMAC using SHA-256 hash algorithm + * - HS256: HMAC using SHA-256 hash algorithm (default) * - HS384: HMAC using SHA-384 hash algorithm * - HS512: HMAC using SHA-512 hash algorithm * - RS256: RSASSA using SHA-256 hash algorithm @@ -40,9 +40,10 @@ export interface SignOptions { */ algorithm?: string; keyid?: string; - /** @member {string} - Lifetime for the token expressed in a string describing a time span [rauchg/ms](https://github.com/rauchg/ms.js). Eg: `60`, `"2 days"`, `"10h"`, `"7d"` */ + /** @member {string} - expressed in seconds or a string describing a time span [zeit/ms](https://github.com/zeit/ms.js). Eg: 60, "2 days", "10h", "7d" */ expiresIn?: string | number; - notBefore?: string; + /** @member {string} - expressed in seconds or a string describing a time span [zeit/ms](https://github.com/zeit/ms.js). Eg: 60, "2 days", "10h", "7d" */ + notBefore?: string | number; audience?: string | string[]; subject?: string; issuer?: string; diff --git a/types/kafka-node/index.d.ts b/types/kafka-node/index.d.ts index 89261a3c4d..06464d5602 100644 --- a/types/kafka-node/index.d.ts +++ b/types/kafka-node/index.d.ts @@ -6,7 +6,7 @@ // # Classes export declare class Client { - constructor(connectionString: string, clientId?: string, options?: ZKOptions); + constructor(connectionString: string, clientId?: string, options?: ZKOptions, noBatchOptions?: AckBatchOptions, sslOptions?: any); close(callback?: Function): void; topicExists(topics: Array, callback: Function): void; refreshMetadata(topics: Array, cb?: (error: any, data: any) => any): void; diff --git a/types/kafka-node/kafka-node-tests.ts b/types/kafka-node/kafka-node-tests.ts index 557c40de8c..a348c8f771 100644 --- a/types/kafka-node/kafka-node-tests.ts +++ b/types/kafka-node/kafka-node-tests.ts @@ -6,6 +6,11 @@ var optionsClient = new kafka.Client('localhost:2181/', 'sendMessage', { sessionTimeout: 30000, spinDelay: 1000, retries: 0 +}, { + noAckBatchSize: 1000, + noAckBatchAge: 1000 * 10 +}, { + rejectUnauthorized: false }); optionsClient.close(); optionsClient.close(function(){}); diff --git a/types/keypress/index.d.ts b/types/keypress/index.d.ts index edb05ee583..122095cd09 100644 --- a/types/keypress/index.d.ts +++ b/types/keypress/index.d.ts @@ -46,6 +46,7 @@ declare namespace Keypress { unregister_many(combos: Combo[]): void; unregister_many(keys: string[]): void; get_registered_combos(): Combo[]; + destroy(): void; reset(): void; listen(): void; stop_listening(): void; diff --git a/types/koa-session/index.d.ts b/types/koa-session/index.d.ts index d46bdc7765..bd31a897e3 100644 --- a/types/koa-session/index.d.ts +++ b/types/koa-session/index.d.ts @@ -44,6 +44,13 @@ declare namespace session { */ signed?: boolean; + /** + * (boolean) Force a session identifier cookie to be set on every response + * The expiration is reset to the original maxAge, resetting the expiration countdown + * default is false + */ + rolling?: boolean; + /** * You can store the session content in external stores(redis, mongodb or other DBs) */ diff --git a/types/leaflet-draw/index.d.ts b/types/leaflet-draw/index.d.ts index 22d0d45169..cf535930a6 100644 --- a/types/leaflet-draw/index.d.ts +++ b/types/leaflet-draw/index.d.ts @@ -40,35 +40,35 @@ declare namespace L { * * Default value: {} */ - polyline?: DrawOptions.PolylineOptions; + polyline?: DrawOptions.PolylineOptions | false; /** * Polygon draw handler options. Set to false to disable handler. * * Default value: {} */ - polygon?: DrawOptions.PolygonOptions; + polygon?: DrawOptions.PolygonOptions | false; /** * Rectangle draw handler options. Set to false to disable handler. * * Default value: {} */ - rectangle?: DrawOptions.RectangleOptions; + rectangle?: DrawOptions.RectangleOptions | false; /** * Circle draw handler options. Set to false to disable handler. * * Default value: {} */ - circle?: DrawOptions.CircleOptions; + circle?: DrawOptions.CircleOptions | false; /** * Marker draw handler options. Set to false to disable handler. * * Default value: {} */ - marker?: DrawOptions.MarkerOptions; + marker?: DrawOptions.MarkerOptions | false; } interface EditOptions { @@ -85,14 +85,14 @@ declare namespace L { * * Default value: null */ - edit?: DrawOptions.EditHandlerOptions; + edit?: DrawOptions.EditHandlerOptions | false; /** * Delete handler options. Set to false to disable handler. * * Default value: null */ - remove?: DrawOptions.DeleteHandlerOptions; + remove?: DrawOptions.DeleteHandlerOptions | false; } interface Draw extends Control { diff --git a/types/leaflet-draw/leaflet-draw-tests.ts b/types/leaflet-draw/leaflet-draw-tests.ts index 21c08e21e9..80e175732f 100644 --- a/types/leaflet-draw/leaflet-draw-tests.ts +++ b/types/leaflet-draw/leaflet-draw-tests.ts @@ -45,3 +45,75 @@ map.on(L.Draw.Event.CREATED, (e: L.DrawEvents.Created) => { let examplePolygon: L.LatLngLiteral[] = [{lng: 0, lat: 0}, {lng: 10, lat: 0}, {lng: 10, lat: 10}, {lng: 0, lat: 10}, {lng: 0, lat: 0}]; let examplePolygonArea: number = L.GeometryUtil.geodesicArea(examplePolygon); L.GeometryUtil.readableArea(examplePolygonArea, true); + +function testBooleanControlOptions() { + const drawControl = new L.Control.Draw({ + position: 'topleft' , + draw: { + polygon: { + allowIntersection: false, + drawError: { + color: '#b00b00', + timeout: 1000 + }, + shapeOptions: { + color: '#bada55' + }, + showArea: true + }, + polyline: {}, + circle: false + }, + edit: { + featureGroup: drawnItems + } + }); +} + +function testExampleControlOptions() { + const editableLayers = new L.FeatureGroup([]); + map.addLayer(editableLayers); + + const MyCustomMarker = L.Icon.extend({ + options: { + shadowUrl: null, + iconAnchor: new L.Point(12, 12), + iconSize: new L.Point(24, 24), + iconUrl: 'link/to/image.png' + } + }); + const drawControl = new L.Control.Draw({ + position: 'topright', + draw: { + polyline: { + shapeOptions: { + color: '#f357a1', + weight: 10 + } + }, + polygon: { + allowIntersection: false, // Restricts shapes to simple polygons + drawError: { + color: '#e1e100', // Color the shape will turn when intersects + message: 'Oh snap! you can\'t draw that!' // Message that will show when intersect + }, + shapeOptions: { + color: '#bada55' + } + }, + circle: false, // Turns off this drawing tool + rectangle: { + shapeOptions: { + clickable: false + } + }, + marker: { + icon: new MyCustomMarker() + } + }, + edit: { + featureGroup: editableLayers, // REQUIRED!! + remove: false + } + }); +} diff --git a/types/leaflet/index.d.ts b/types/leaflet/index.d.ts index 80adf4bc3f..3f95bd4dce 100644 --- a/types/leaflet/index.d.ts +++ b/types/leaflet/index.d.ts @@ -399,7 +399,7 @@ declare namespace L { class Layer extends Evented { constructor(options?: LayerOptions); - addTo(map: Map): this; + addTo(map: Map|LayerGroup): this; remove(): this; removeFrom(map: Map): this; getPane(name?: string): HTMLElement | undefined; @@ -683,7 +683,7 @@ declare namespace L { * added/removed on the map as well. Extends Layer. */ class LayerGroup extends Layer { - constructor(layers: Layer[]); + constructor(layers?: Layer[]); /** * Returns a GeoJSON representation of the layer group (as a GeoJSON GeometryCollection, GeoJSONFeatureCollection or Multipoint). */ diff --git a/types/mailparser/index.d.ts b/types/mailparser/index.d.ts index 0bb84e9940..cf493139b4 100644 --- a/types/mailparser/index.d.ts +++ b/types/mailparser/index.d.ts @@ -1,88 +1,305 @@ // Type definitions for mailparser v2.0.0 // Project: https://www.npmjs.com/package/mailparser // Definitions by: Peter Snider +// Andrey Volynkin // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// -import StreamModule = require("stream"); +import StreamModule = require('stream'); import Stream = StreamModule.Stream; -import WritableStream = NodeJS.WritableStream; -import EventEmitter = NodeJS.EventEmitter; -interface Options { - debug?: boolean; // if set to true print all incoming lines to console - streamAttachments?: boolean; // if set to true, stream attachments instead of including them - unescapeSMTP?: boolean; // if set to true replace double dots in the beginning of the file - defaultCharset?: string; // the default charset for text/plain and text/html content, if not set reverts to Latin-1 - showAttachmentLinks?: boolean; // if set to true, show inlined attachment links filename +/** + * Structured object for headers with arguments. + * + * `content-type: text/plain; CHARSET="UTF-8"` => + * ``` + * { + * "value": "text/plain", + * "params": { + * "charset": "UTF-8" + * } + * } + * ``` + */ +interface StructuredHeader { + /** + * The main value. + */ + value: string; + /** + * Additional arguments. + */ + params: {[key: string]: string}; } +/** + * Possible types of a header value. + */ +export type HeaderValue = string | string[] | AddressObject | Date | StructuredHeader; +/** + * A Map object with lowercase header keys. + */ +export type Headers = Map; + +/** + * Address details. + */ interface EmailAddress { - address: string; - name: string; + /** + * The email address. + */ + address: string; + /** + * The name part of the email/group. + */ + name: string; + /** + * An array of grouped addresses. + */ + group?: EmailAddress[]; } - -interface Attachment { - contentType: string; - fileName: string; - contentDisposition: string; // e.g. 'attachment' - contentId: string; // e.g. '5.1321281380971@localhost' - transferEncoding: string; // e.g. 'base64' - length: number; // length of the attachment in bytes - generatedFileName: string; // e.g. 'image.png' - checksum: string; // the md5 hash of the file, e.g. 'e4cef4c6e26037bcf8166905207ea09b' - content: Buffer; // possibly a SlowBuffer - stream: Stream; // a stream to read the attachment if streamAttachments is set to true +/** + * Address object. + */ +interface AddressObject { + /** + * An array with address details. + */ + value: EmailAddress[]; + /** + * A formatted address string for HTML context. + */ + html: string; + /** + * A formatted address string for plaintext context. + */ + text: string; } -// emitted with the 'end' event +/** + * COmmon part of the Attachment object. + */ +interface AttachmentCommon { + /** + * Message type. + */ + type: 'attachment'; + /** + * Attachment contents. + */ + content: any; + /** + * MIME type of the message. + */ + contentType: string; + /** + * Content disposition type for the attachment, + * most probably `'attachment'`. + */ + contentDisposition: string; + /** + * File name of the attachment. + */ + filename?: string; + /** + * A Map value that holds MIME headers for the attachment node. + */ + headers: Headers; + /** + * A MD5 hash of the message content. + */ + checksum: string; + /** + * Message size in bytes. + */ + size: number; + /** + * The header value from `Content-ID`. + */ + contentId?: string; + /** + * `contentId` without `<` and `>`. + */ + cid?: string; // e.g. '5.1321281380971@localhost' + /** + * If true then this attachment should not be offered for download + * (at least not in the main attachments list). + */ + related?: boolean; +} + +/** + * Attachment object. + */ +interface Attachment extends AttachmentCommon { + /** + * A Buffer that contains the attachment contents. + */ + content: Buffer; + /** + * If true then this attachment should not be offered for download + * (at least not in the main attachments list). + */ + related: boolean; +} + +/** + * MailParser Attachment object. + */ +interface AttachmentStream extends AttachmentCommon { + /** + * A Buffer that contains the attachment contents. + */ + content: Stream; + /** + * Method must be called once you have processed the attachment. + */ + release(): void; +} + +/** + * Parsed mail object. + */ interface ParsedMail { - headers: any; // unprocessed headers in the form of - {key: value} - if there were multiple fields with the same key then the value is an array - from: EmailAddress[]; // should be only one though) - to: EmailAddress[]; - cc?: EmailAddress[]; - bcc?: EmailAddress[]; - subject: string; // the subject line - references?: string[]; // an array of reference message id values (not set if no reference values present) - inReplyTo?: string[]; // an array of In-Reply-To message id values (not set if no in-reply-to values present) - priority?: string; // priority of the e-mail, always one of the following: normal (default), high, low - text: string; // text body - html: string; // html body - date?: Date; // If date could not be resolved or is not found this field is not set. Check the original date string from headers.date - attachments?: Attachment[]; + /** + * An array of attachments. + */ + attachments?: Attachment[]; + /** + * A Map object with lowercase header keys. + * + * - All address headers are converted into address objects. + * - `references` is a string if only a single reference-id exists or an + * array if multiple ids exist. + * - `date` value is a Date object. + */ + headers: Headers; + /** + * The HTML body of the message. + * + * Sets to `false` when there is no HTML body. + * + * If the message included embedded images as cid: urls then these are all + * replaced with base64 formatted data: URIs. + */ + html: string | boolean; + /** + * The plaintext body of the message. + */ + text: string; + /** + * The plaintext body of the message formatted as HTML. + */ + textAsHtml: string; + /** + * The subject line. + */ + subject: string; + /** + * An array of referenced Message-ID values. + * + * Not set if no reference values present. + */ + references?: string[]; + /** + * A Date object for the `Date:` header. + */ + date?: Date; + /** + * An address object for the `To:` header. + */ + to: AddressObject; + /** + * An address object for the `From:` header. + */ + from: AddressObject; + /** + * An address object for the `Cc:` header. + */ + cc?: AddressObject; + /** + * An address object for the `Bcc:` header (usually not present). + */ + bcc?: AddressObject; + /** + * An address object for the `Reply-To:` header. + */ + replyTo?: AddressObject; + /** + * The Message-ID value string. + */ + messageId?: string; + /** + * The In-Reply-To value string. + */ + inReplyTo?: string; + /** + * Priority of the e-mail. + */ + priority?: 'normal' | 'low' | 'high'; } -export class MailParser extends StreamModule.Writable { - constructor(options?: Options); - on(event: string, callback: (any: any) => void): this; - - // from WritableStream - writable: boolean; - write(buffer: Buffer, cb?: Function): boolean; - write(str: string, cb?: Function): boolean; - write(str: string, encoding?: string, cb?: Function): boolean; - end(): void; - end(buffer: Buffer, cb?: Function): void; - end(str: string, cb?: Function): void; - end(str: string, encoding?: string, cb?: Function): void; - - // from EventEmitter - static listenerCount(emitter: EventEmitter, event: string): number; - addListener(event: string, listener: Function): this; - on(event: string, listener: Function): this; - once(event: string, listener: Function): this; - removeListener(event: string, listener: Function): this; - removeAllListeners(event?: string): this; - setMaxListeners(n: number): this; - getMaxListeners(): number; - listeners(event: string): Function[]; - emit(event: string, ...args: any[]): boolean; - listenerCount(type: string): number; +/** + * Text message content. + */ +interface MessageText { + /** + * Message type. + */ + type: 'text'; + /** + * Includes the HTML version of the message. + * + * Is set if the message has at least one `text/html` node. + */ + html?: string | boolean; + /** + * Includes the plaintext version of the message. + * + * Is set if the message has at least one `text/plain` node. + */ + text?: string; + /** + * Includes the plaintext version of the message in HTML format. + * + * Is set if the message has at least one `text/plain` node. + */ + textAsHtml?: string; } +/** + * A lower-level email parsing class. + * + * It is a transform stream that takes email source as bytestream for the input + * and emits data objects for attachments and text contents. + */ +export class MailParser extends StreamModule.Transform { + constructor(options?: StreamModule.TransformOptions); + on(event: string, callback: (any: any) => void): this; + on(event: 'headers', callback: (headers: Headers) => void): this; + on(event: 'data', callback: (data: AttachmentStream | MessageText) => void): this; + on(event: 'readable', callback: (data: AttachmentStream | MessageText) => void): this; +} + +/** + * A message source. + */ export type Source = Buffer | Stream | string; + +/** + * Parse email message to structure object. + * + * @param source A message source. + * @param callback Function to get a structured email object. + */ export function simpleParser(source: Source, callback: (err: any, mail: ParsedMail) => void): void; + +/** + * Parse email message to structure object. + * + * @param source A message source. + */ export function simpleParser(source: Source): Promise; diff --git a/types/mailparser/mailparser-tests.ts b/types/mailparser/mailparser-tests.ts index 30a6e7bf5c..142a2c8b0f 100644 --- a/types/mailparser/mailparser-tests.ts +++ b/types/mailparser/mailparser-tests.ts @@ -1,73 +1,38 @@ -import mailparser_mod = require("mailparser"); +// tslint:disable +import mailparser_mod = require('mailparser'); import MailParser = mailparser_mod.MailParser; -import ParsedMail = mailparser_mod.ParsedMail; -import Attachment = mailparser_mod.Attachment; import simpleParser = mailparser_mod.simpleParser; var mailparser = new MailParser(); - -mailparser.on("headers", function(headers){ - console.log(headers.received); +mailparser.on('headers', function(headers){ + console.log('Subject:', headers.get('subject')); }); -mailparser.on("end", function(mail){ - mail; // object structure for parsed e-mail +// Attachments +mailparser.on('data', data => { + if (data.type === 'attachment'){ + console.log(data.filename); + data.content.pipe(process.stdout); + data.content.on('end', () => data.release()); + } }); - -// Decode a simple e-mail -// This example decodes an e-mail from a string - -var email = "From: 'Sender Name' \r\n"+ - "To: 'Receiver Name' \r\n"+ - "Subject: Hello world!\r\n"+ - "\r\n"+ - "How are you today?"; - // setup an event listener when the parsing finishes -mailparser.on("end", function(mail_object){ - console.log("From:", mail_object.from); //[{address:'sender@example.com',name:'Sender Name'}] - console.log("Subject:", mail_object.subject); // Hello world! - console.log("Text body:", mail_object.text); // How are you today? +mailparser.on('data', data => { + if (data.type === 'text'){ + console.log(data.html); + } }); - // send the email source to the parser -mailparser.write(email); -mailparser.end(); - // Pipe file to MailParser // This example pipes a readableStream file to MailParser -mailparser = new MailParser(); -import fs = require("fs"); -mailparser.on("end", function(mail_object){ - console.log("Subject:", mail_object.subject); -}); - -fs.createReadStream("email.eml").pipe(mailparser); - - -// Attachments -mailparser.on("end", function(mail_object : ParsedMail){ - mail_object.attachments.forEach(function(attachment){ - console.log(attachment.fileName); - }); -}); - - -// Attachment streaming -var mp = new MailParser({ - streamAttachments: true -}) - -mp.on("attachment", function(attachment : Attachment, mail : ParsedMail){ - var output = fs.createWriteStream(attachment.generatedFileName); - attachment.stream.pipe(output); -}); +import fs = require('fs'); +fs.createReadStream('email.eml').pipe(mailparser); // check different sources and promise/callback api for simpleParser -var sourceString = ""; -var sourceBuffer = new Buffer(""); -var sourceStream = fs.createReadStream("foo.eml"); +var sourceString = ''; +var sourceBuffer = new Buffer(''); +var sourceStream = fs.createReadStream('foo.eml'); simpleParser(sourceString, (err, mail) => err ? err : mail.html); simpleParser(sourceBuffer, (err, mail) => err ? err : mail.html); @@ -76,3 +41,16 @@ simpleParser(sourceStream, (err, mail) => err ? err : mail.html); simpleParser(sourceString).then(mail => mail.html).catch(err => err); simpleParser(sourceBuffer).then(mail => mail.html).catch(err => err); simpleParser(sourceStream).then(mail => mail.html).catch(err => err); + +simpleParser(sourceString, (err, mail) => { + console.log(mail.headers.get('subject')); + console.log(mail.subject); + + // Attachments + mail.attachments.forEach(attachment => console.log(attachment.filename)); + + // Text + console.log(mail.text); + console.log(mail.html); + console.log(mail.textAsHtml); +}); diff --git a/types/mainloop.js/index.d.ts b/types/mainloop.js/index.d.ts index f34d6f035a..98c916d354 100644 --- a/types/mainloop.js/index.d.ts +++ b/types/mainloop.js/index.d.ts @@ -26,3 +26,6 @@ interface MainLoop { } declare var MainLoop: MainLoop; + +export = MainLoop; +export as namespace MainLoop; diff --git a/types/mainloop.js/tsconfig.json b/types/mainloop.js/tsconfig.json index 86c619379e..5dae699f05 100644 --- a/types/mainloop.js/tsconfig.json +++ b/types/mainloop.js/tsconfig.json @@ -20,4 +20,4 @@ "index.d.ts", "mainloop.js-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/mapbox-gl/index.d.ts b/types/mapbox-gl/index.d.ts index 680362fe82..10974f11a2 100644 --- a/types/mapbox-gl/index.d.ts +++ b/types/mapbox-gl/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for Mapbox GL JS v0.39.0 +// Type definitions for Mapbox GL JS v0.39.1 // Project: https://github.com/mapbox/mapbox-gl-js // Definitions by: Dominik Bruderer // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -669,7 +669,10 @@ declare namespace mapboxgl { */ // Todo: Pull out class to seperate definition for Module "point-geometry" export class Point { - constructor(options?: Object); + x: number; + y: number; + + constructor(x: number, y: number); clone(): Point; @@ -706,8 +709,8 @@ declare namespace mapboxgl { angleWidth(p: Point): number; angleWithSep(x: number, y: number): number; - - convert(a: Array | Point): Point; + + static convert(a: Array | Point): Point; } export class Marker { @@ -1045,7 +1048,7 @@ declare namespace mapboxgl { export interface CirclePaint { "circle-radius"?: number | StyleFunction; "circle-radius-transition"?: Transition; - "circle-color"?: string; + "circle-color"?: string | StyleFunction; "circle-blur"?: number | StyleFunction; "circle-opacity"?: number | StyleFunction; "circle-translate"?: number[]; diff --git a/types/material-ui/index.d.ts b/types/material-ui/index.d.ts index 386a83c93d..ec7ad246b4 100644 --- a/types/material-ui/index.d.ts +++ b/types/material-ui/index.d.ts @@ -221,6 +221,7 @@ declare namespace __MaterialUI { selectColor?: string; selectTextColor?: string; calendarYearBackgroundColor?: string; + headerColor?: string; }; dialog?: { titleFontSize?: number; @@ -1127,6 +1128,7 @@ declare namespace __MaterialUI { secondaryText?: React.ReactNode; secondaryTextLines?: number; // 1 or 2 style?: React.CSSProperties; + value?: any; } export class ListItem extends React.Component { } @@ -1173,6 +1175,7 @@ declare namespace __MaterialUI { focusState?: string; // 'none', 'focused', or 'keyboard-focused' innerDivStyle?: React.CSSProperties; insetChildren?: boolean; + label?: string | React.ReactNode; leftIcon?: React.ReactElement; menuItems?: React.ReactNode; onTouchTap?: TouchTapEventHandler; @@ -1180,7 +1183,6 @@ declare namespace __MaterialUI { rightIcon?: React.ReactElement; secondaryText?: React.ReactNode; style?: React.CSSProperties; - value?: any; containerElement?: React.ReactNode | string; } export class MenuItem extends React.Component { @@ -1263,6 +1265,8 @@ declare namespace __MaterialUI { style?: React.CSSProperties; transitionEnabled?: boolean; zDepth?: number; + width?: number | string; + height?: number | string; } export class Paper extends React.Component { } @@ -1412,7 +1416,8 @@ declare namespace __MaterialUI { namespace Switches { // what's not commonly overridden by Checkbox, RadioButton, or Toggle - interface CommonEnhancedSwitchProps extends React.HTMLAttributes<{}>, React.Props { + interface CommonEnhancedSwitchProps extends React.InputHTMLAttributes<{}>, React.Props { + label?: React.ReactNode; } interface EnhancedSwitchProps extends CommonEnhancedSwitchProps { @@ -1426,7 +1431,6 @@ declare namespace __MaterialUI { id?: string; inputStyle: React.CSSProperties; inputType: string; - label?: string; labelPosition?: string; // oneOf(['left', 'right']) labelStyle?: React.CSSProperties; name?: string; diff --git a/types/modernizr/index.d.ts b/types/modernizr/index.d.ts index 44d3c40775..c2fb44cc67 100644 --- a/types/modernizr/index.d.ts +++ b/types/modernizr/index.d.ts @@ -1,6 +1,10 @@ -// Type definitions for Modernizr 3.3 +// Type definitions for Modernizr 3.5 // Project: http://modernizr.com/ -// Definitions by: Boris Yankov , Theodore Brown , Leon Yu , Luca Trazzi +// Definitions by: Boris Yankov +// Theodore Brown +// Leon Yu +// Luca Trazzi +// Nathan Hardy // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped interface AudioBoolean { @@ -120,6 +124,7 @@ interface FeatureDetects { cookies: boolean; cors: boolean; cryptography: boolean; + customelements: boolean; customprotocolhandler: boolean; customevent: boolean; dart: boolean; @@ -147,6 +152,7 @@ interface FeatureDetects { ligatures: boolean; olreversed: boolean; mathml: boolean; + messagechannel: boolean; notification: boolean; pagevisibility: boolean; performance: boolean; @@ -204,6 +210,8 @@ interface FeatureDetects { checked: boolean; csschunit: boolean; csscolumns: false | CssColumnsBoolean; + cssgrid: boolean; + cssgridlegacy: boolean; cubicbezierrange: boolean; "display-runin": boolean; displaytable: boolean; @@ -218,7 +226,7 @@ interface FeatureDetects { fontface: boolean; generatedcontent: boolean; cssgradients: boolean; - csshairline: boolean; + hairline: boolean; hsla: boolean; csshyphens: boolean; softhyphens: boolean; @@ -252,6 +260,7 @@ interface FeatureDetects { textshadow: boolean; csstransforms: boolean; csstransforms3d: boolean; + csstransformslevel2: boolean; preserve3d: boolean; csstransitions: boolean; userselect: boolean; @@ -270,6 +279,7 @@ interface FeatureDetects { hidden: boolean; microdata: boolean; mutationobserver: boolean; + passiveeventlisteners: boolean; bdi: boolean; datalistelem: boolean; details: boolean; @@ -293,6 +303,7 @@ interface FeatureDetects { es5syntax: boolean; es5undefined: boolean; es6array: boolean; + arrow: boolean; es6collections: boolean; contains: boolean; generators: boolean; @@ -326,11 +337,14 @@ interface FeatureDetects { webpalpha: boolean; webpanimation: boolean; webplossless: boolean; + "webp-lossless": boolean; webp: false | WebpBoolean; inputformaction: boolean; inputformenctype: boolean; inputformmethod: boolean; inputformtarget: boolean; + hovermq: boolean; + pointermq: boolean; beacon: boolean; lowbandwidth: boolean; eventsource: boolean; @@ -360,7 +374,9 @@ interface FeatureDetects { bloburls: boolean; datauri: false | DatauriBoolean; urlparser: boolean; + urlsearchparams: boolean; videoautoplay: boolean; + videocrossorigin: boolean; videoloop: boolean; videopreload: boolean; webglextensions: false | WebglextensionsBoolean; @@ -390,7 +406,6 @@ interface FeatureDetects { crypto: boolean; displayrunin: boolean; fileinputdirectory: boolean; - hairline: boolean; inputsearchevent: boolean; raf: boolean; webanimations: boolean; diff --git a/types/next/index.d.ts b/types/next/index.d.ts new file mode 100644 index 0000000000..ab6e3df6f5 --- /dev/null +++ b/types/next/index.d.ts @@ -0,0 +1,170 @@ +// Type definitions for next 2.4 +// Project: https://github.com/zeit/next.js +// Definitions by: Drew Hays +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +declare module 'next' { + import * as http from 'http'; + import * as url from 'url'; + + type UrlLike = url.UrlObject | url.Url; + + interface ServerConfig { + // known keys + webpack?: any; + webpackDevMiddleware?: any; + poweredByHeader?: boolean; + distDir?: string; + assetPrefix?: string; + configOrigin?: string; + useFileSystemPublicRoutes?: boolean; + + // and since this is a config, it can take anything else, too. + [key: string]: any; + } + + interface ServerOptions { + dir?: string; + dev?: boolean; + staticMarkup?: boolean; + quiet?: boolean; + conf?: ServerConfig; + } + + interface Server { + handleRequest(req: http.IncomingMessage, res: http.ServerResponse, parsedUrl?: UrlLike): Promise; + getRequestHandler(): (req: http.IncomingMessage, res: http.ServerResponse, parsedUrl?: UrlLike) => Promise; + prepare(): Promise; + close(): Promise; + defineRoutes(): Promise; + start(): Promise; + run(req: http.IncomingMessage, res: http.ServerResponse, parsedUrl: UrlLike): Promise; + + render(req: http.IncomingMessage, res: http.ServerResponse, pathname: string, query: {[key: string]: any}, parsedUrl: UrlLike): Promise; + renderError(err: any, req: http.IncomingMessage, res: http.ServerResponse, pathname: string, query: {[key: string]: any}): Promise; + render404(req: http.IncomingMessage, res: http.ServerResponse, parsedUrl: UrlLike): Promise; + renderToHTML(req: http.IncomingMessage, res: http.ServerResponse, pathname: string, query: {[key: string]: any}): Promise; + renderErrorToHTML(err: any, req: http.IncomingMessage, res: http.ServerResponse, pathname: string, query: {[key: string]: any}): Promise; + + serveStatic(req: http.IncomingMessage, res: http.ServerResponse, path: string): Promise; + isServeableUrl(path: string): boolean; + isInternalUrl(req: http.IncomingMessage): boolean; + readBuildId(): string; + handleBuildId(buildId: string, res: http.ServerResponse): boolean; + getCompilationError(page: string, req: http.IncomingMessage, res: http.ServerResponse): Promise; + handleBuildHash(filename: string, hash: string, res: http.ServerResponse): void; + send404(res: http.ServerResponse): void; + } + + export default function(options?: ServerOptions): Server; +} + +declare module 'next/error' { + import * as React from 'react'; + export default class extends React.Component<{statusCode: number}, {}> {} +} + +declare module 'next/head' { + import * as React from 'react'; + + function defaultHead(): JSX.Element[]; + export default class extends React.Component<{}, {}> {} +} + +declare module 'next/document' { + import * as React from 'react'; + + interface DocumentProps { + __NEXT_DATA__?: any; + dev?: boolean; + chunks?: string[]; + head?: Array>; + styles?: Array>; + [key: string]: any; + } + + class Head extends React.Component {} + class Main extends React.Component<{}, {}> {} + class NextScript extends React.Component<{}, {}> {} + export default class extends React.Component {} +} + +declare module 'next/link' { + import * as url from 'url'; + import * as React from 'react'; + + type UrlLike = url.UrlObject | url.Url; + interface LinkState { + prefetch?: boolean; + shallow?: boolean; + scroll?: boolean; + replace?: boolean; + onError?(error: any): void; + href?: string | UrlLike; + as?: string | UrlLike; + children: React.ReactElement; + } + + export default class extends React.Component {} +} + +declare module 'next/dynamic' { + import * as React from 'react'; + + interface DynamicOptions { + loading?: React.ComponentType; + ssr?: boolean; + modules?(props: TCProps & TLProps): { [key: string]: Promise> }; + render?(props: TCProps & TLProps, modules: { [key: string]: React.ComponentType }): void; + } + + class SameLoopPromise extends Promise { + constructor(executor: (resolve: (value?: T) => void, reject: (reason?: any) => void) => void); + setResult(value: T): void; + setError(value: any): void; + runIfNeeded(): void; + } + export default function(componentPromise: Promise>, options?: DynamicOptions): React.ComponentType; +} + +declare module 'next/router' { + import * as React from 'react'; + + interface EventChangeOptions { + shallow?: boolean; + [key: string]: any; + } + + type RouterCallback = () => void; + interface SingletonRouter { + readyCallbacks: RouterCallback[]; + ready(cb: RouterCallback): void; + + // router properties + readonly components: { [key: string]: { Component: React.ComponentType, err: any } }; + readonly pathname: string; + readonly route: string; + readonly asPath: string; + readonly query: { [key: string]: any }; + + // router methods + reload(route: string): Promise; + back(): void; + push(url: string, as?: string, options?: EventChangeOptions): Promise; + replace(url: string, as?: string, options?: EventChangeOptions): Promise; + prefetch(url: string): Promise>; + + // router events + onAppUpdated?(nextRoute: string): void; + onRouteChangeStart?(url: string): void; + onBeforeHistoryChange?(as: string): void; + onRouteChangeComplete?(url: string): void; + onRouteChangeError?(error: any, url: string): void; + } + + const Singleton: SingletonRouter; + export default Singleton; +} diff --git a/types/next/next-tests.ts b/types/next/next-tests.ts new file mode 100644 index 0000000000..bfa93bfff8 --- /dev/null +++ b/types/next/next-tests.ts @@ -0,0 +1,54 @@ +import createServer from 'next'; +import * as http from 'http'; +import * as url from 'url'; + +const defaultServer = createServer(); +const server = createServer({ + dir: '..', + quiet: true, + conf: { + distDir: './dist', + useFileSystemPublicRoutes: false, + anotherProperty: { + key: true + } + } +}); + +const voidFunc = () => {}; +const stringFunc = (x: string) => x.split('\n'); + +server.prepare().then(voidFunc); +server.close().then(voidFunc); +server.defineRoutes().then(voidFunc); +server.start().then(voidFunc); + +const parsedUrl = url.parse('https://www.example.com'); +const handler = server.getRequestHandler(); + +function handle(req: http.IncomingMessage, res: http.ServerResponse) { + handler(req, res); + handler(req, res, parsedUrl).then(voidFunc); + server.run(req, res, parsedUrl).then(voidFunc); + + server.render(req, res, '/path/to/resource', {}, parsedUrl).then(voidFunc); + server.render(req, res, '/path/to/resource', { key: 'value' }, parsedUrl).then(voidFunc); + server.renderError(new Error(), req, res, '/path/to/resource', { key: 'value' }).then(voidFunc); + server.renderError('this can be an error, too!', req, res, '/path/to/resource', { key: 'value' }).then(voidFunc); + server.render404(req, res, parsedUrl).then(voidFunc); + + server.renderToHTML(req, res, '/path/to/resource', { foo: 'bar' }).then(x => x.split('\n')); + server.renderErrorToHTML(new Error(), req, res, '/path/to/resource', { foo: 'bar' }).then(x => x.split('\n')); + + server.serveStatic(req, res, '/path/to/thing').then(voidFunc); + + let b: boolean; + b = server.isServeableUrl('/path/to/thing'); + b = server.isInternalUrl(req); + b = server.handleBuildId('{buildId}', res); + + const s: string = server.readBuildId(); + server.getCompilationError('page', req, res).then(err => err.thisIsAnAny); + server.handleBuildHash('filename', 'hash', res); + server.send404(res); +} diff --git a/types/next/test/next-document-tests.tsx b/types/next/test/next-document-tests.tsx new file mode 100644 index 0000000000..4fbb25948b --- /dev/null +++ b/types/next/test/next-document-tests.tsx @@ -0,0 +1,12 @@ +import Document, * as document from 'next/document'; +import * as React from 'react'; + +const results = ( + + + + + + + +); diff --git a/types/next/test/next-dynamic-tests.tsx b/types/next/test/next-dynamic-tests.tsx new file mode 100644 index 0000000000..be10954de9 --- /dev/null +++ b/types/next/test/next-dynamic-tests.tsx @@ -0,0 +1,23 @@ +import dynamic, * as d from 'next/dynamic'; +import * as React from 'react'; + +// typically you'd use this with an esnext-style import() statement, but we'll make do without +interface DynamicComponentProps { + foo: string; + bar: number; +} +async function getComponent() { + return ( + (props: DynamicComponentProps) =>

I'm an async component! {props.foo} {props.bar}
+ ); +} + +interface LoadingComponentProps { + baz: boolean; +} + +const DynamicComponent = dynamic(getComponent(), { + loading: (props: LoadingComponentProps) =>
Loading! {props.baz}
+}); + +const jsx = (); diff --git a/types/next/test/next-error-tests.tsx b/types/next/test/next-error-tests.tsx new file mode 100644 index 0000000000..38692ac6de --- /dev/null +++ b/types/next/test/next-error-tests.tsx @@ -0,0 +1,6 @@ +import * as React from 'react'; +import ErrorComponent from 'next/error'; + +const result = ( + +); diff --git a/types/next/test/next-head-tests.tsx b/types/next/test/next-head-tests.tsx new file mode 100644 index 0000000000..eaf6754b49 --- /dev/null +++ b/types/next/test/next-head-tests.tsx @@ -0,0 +1,9 @@ +import Head, * as head from 'next/head'; +import * as React from 'react'; + +const elements: JSX.Element[] = head.defaultHead(); +const jsx = ( + + {elements} + +); diff --git a/types/next/test/next-link-tests.tsx b/types/next/test/next-link-tests.tsx new file mode 100644 index 0000000000..281c6aff7a --- /dev/null +++ b/types/next/test/next-link-tests.tsx @@ -0,0 +1,13 @@ +import Link from 'next/link'; +import * as React from 'react'; + +const links = ( +
+ { console.log("Handled error!", e); }} prefetch replace scroll shallow> + Gotta link to somewhere! + + + All props are optional! + +
+); diff --git a/types/next/test/next-router-tests.tsx b/types/next/test/next-router-tests.tsx new file mode 100644 index 0000000000..38d091dcc2 --- /dev/null +++ b/types/next/test/next-router-tests.tsx @@ -0,0 +1,50 @@ +import Router, * as r from 'next/router'; +import * as React from 'react'; +import * as qs from 'querystring'; + +Router.readyCallbacks.push(() => { console.log("I'll get called when the router initializes."); }); +Router.ready(() => { console.log("I'll get called immediately if the router initializes, or when it eventually does."); }); + +// Access readonly properties of the router. + +Object.keys(Router.components).forEach(key => { + const c = Router.components[key]; + c.err.isAnAny; + + return ; +}); + +function split(routeLike: string) { + routeLike.split('/').forEach(part => { + console.log("path part: ", part); + }); +} + +split(Router.pathname); +split(Router.asPath); +split(Router.asPath); + +const query = `?${qs.stringify(Router.query)}`; + +// Assign some callback methods. +Router.onAppUpdated = (nextRoute: string) => console.log(nextRoute); +Router.onRouteChangeStart = (url: string) => console.log("Route is starting to change.", url); +Router.onBeforeHistoryChange = (as: string) => console.log("History hasn't changed yet.", as); +Router.onRouteChangeComplete = (url: string) => console.log("Route chaneg is complete.", url); +Router.onRouteChangeError = (err: any, url: string) => console.log("Route is starting to change.", url, err); + +// Call methods on the router itself. +Router.reload('/route').then(() => console.log('route was reloaded')); +Router.back(); + +Router.push('/route').then((success: boolean) => console.log('route push success: ', success)); +Router.push('/route', '/asRoute').then((success: boolean) => console.log('route push success: ', success)); +Router.push('/route', '/asRoute', {shallow: false}).then((success: boolean) => console.log('route push success: ', success)); + +Router.replace('/route').then((success: boolean) => console.log('route replace success: ', success)); +Router.replace('/route', '/asRoute').then((success: boolean) => console.log('route replace success: ', success)); +Router.replace('/route', '/asRoute', {shallow: false}).then((success: boolean) => console.log('route replace success: ', success)); + +Router.prefetch('/route').then(Component => { + const element = (); +}); diff --git a/types/next/tsconfig.json b/types/next/tsconfig.json new file mode 100644 index 0000000000..0bcbd622d9 --- /dev/null +++ b/types/next/tsconfig.json @@ -0,0 +1,31 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "target": "es6", + "jsx": "react", + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "next-tests.ts", + "test/next-error-tests.tsx", + "test/next-head-tests.tsx", + "test/next-document-tests.tsx", + "test/next-link-tests.tsx", + "test/next-dynamic-tests.tsx", + "test/next-router-tests.tsx" + ] +} diff --git a/types/next/tslint.json b/types/next/tslint.json new file mode 100644 index 0000000000..98f9451050 --- /dev/null +++ b/types/next/tslint.json @@ -0,0 +1,9 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + // All of the different "export default" lines in the index.d.ts + // appear to be triggering this. Remove this when I know of a way + // to declare a default export across multiple package/subpackages. + "strict-export-declare-modifiers": false + } +} diff --git a/types/noble/index.d.ts b/types/noble/index.d.ts index 4f2b5f0b7c..d62b0609a8 100644 --- a/types/noble/index.d.ts +++ b/types/noble/index.d.ts @@ -4,6 +4,7 @@ // Hans Bakker // Shantanu Bhadoria // Luke Libraro +// Dan Chao // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// @@ -88,6 +89,8 @@ export declare class Characteristic extends events.EventEmitter { notify(notify: boolean, callback?: (error: string) => void): void; discoverDescriptors(callback?: (error: string, descriptors: Descriptor[]) => void): void; toString(): string; + subscribe(callback?: (error: string) => void): void; + unsubscribe(callback?: (error: string) => void): void; on(event: string, listener: Function): this; on(event: string, option: boolean, listener: Function): this; diff --git a/types/noble/noble-tests.ts b/types/noble/noble-tests.ts index baa65c5662..c790f2deb0 100644 --- a/types/noble/noble-tests.ts +++ b/types/noble/noble-tests.ts @@ -87,6 +87,10 @@ characteristic.on("write", true, (error: string): void => {}); characteristic.on("broadcast", (state: string): void => {}); characteristic.on("notify", (state: string): void => {}); characteristic.on("descriptorsDiscover", (descriptors: noble.Descriptor[]): void => {}); +characteristic.subscribe(); +characteristic.subscribe((error: string) => {}); +characteristic.unsubscribe(); +characteristic.unsubscribe((error: string) => {}); var descriptor: noble.Descriptor = new noble.Descriptor(); descriptor.uuid = ""; diff --git a/types/node-cache/index.d.ts b/types/node-cache/index.d.ts index 37b4389d69..558882a086 100644 --- a/types/node-cache/index.d.ts +++ b/types/node-cache/index.d.ts @@ -1,10 +1,17 @@ -// Type definitions for node-cache v3.0.0 +// Type definitions for node-cache 4.1 // Project: https://github.com/tcs-de/nodecache // Definitions by: Ilya Mochalov +// Daniel Thunell // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped /// +/** + * Since 4.1.0: Key-validation: The keys can be given as either string or number, + * but are casted to a string internally anyway. + */ +type Key = string | number; + declare namespace NodeCache { interface NodeCache { /** container for cached data */ @@ -23,9 +30,9 @@ declare namespace NodeCache { * @param cb Callback function */ get( - key: string, + key: Key, cb?: Callback - ): T; + ): T | undefined; /** * get multiple cached keys at once and change the stats @@ -34,9 +41,9 @@ declare namespace NodeCache { * @param cb Callback function */ mget( - keys: string[], - cb?: Callback<{[key: string]: T}> - ): {[key: string]: T}; + keys: Key[], + cb?: Callback<{ [key: string]: T }> + ): { [key: string]: T }; /** * set a cached key and change the stats @@ -48,14 +55,14 @@ declare namespace NodeCache { * @param cb Callback function */ set( - key: string, + key: Key, value: T, - ttl: number|string, + ttl: number | string, cb?: Callback ): boolean; set( - key: string, + key: Key, value: T, cb?: Callback ): boolean; @@ -67,7 +74,7 @@ declare namespace NodeCache { * @returns Number of deleted keys */ del( - keys: string|string[], + keys: Key | Key[], cb?: Callback ): number; @@ -75,13 +82,13 @@ declare namespace NodeCache { * reset or redefine the ttl of a key. If `ttl` is not passed or set to 0 it's similar to `.del()` */ ttl( - key: string, + key: Key, ttl: number, cb?: Callback ): boolean; ttl( - key: string, + key: Key, cb?: Callback, ttl?: number ): boolean; @@ -140,9 +147,7 @@ declare namespace NodeCache { v: T; } - interface Callback { - (err: any, data: T): void; - } + type Callback = (err: any, data: T | undefined) => void; } import events = require("events"); @@ -171,9 +176,9 @@ declare class NodeCache extends events.EventEmitter implements NodeCache.NodeCac * @param cb Callback function */ get( - key: string, + key: Key, cb?: Callback - ): T; + ): T | undefined; /** * get multiple cached keys at once and change the stats @@ -182,9 +187,9 @@ declare class NodeCache extends events.EventEmitter implements NodeCache.NodeCac * @param cb Callback function */ mget( - keys: string[], - cb?: Callback<{[key: string]: T}> - ): {[key: string]: T}; + keys: Key[], + cb?: Callback<{ [key: string]: T }> + ): { [key: string]: T }; /** * set a cached key and change the stats @@ -196,14 +201,14 @@ declare class NodeCache extends events.EventEmitter implements NodeCache.NodeCac * @param cb Callback function */ set( - key: string, + key: Key, value: T, - ttl: number|string, + ttl: number | string, cb?: Callback ): boolean; set( - key: string, + key: Key, value: T, cb?: Callback ): boolean; @@ -215,7 +220,7 @@ declare class NodeCache extends events.EventEmitter implements NodeCache.NodeCac * @returns Number of deleted keys */ del( - keys: string|string[], + keys: Key | Key[], cb?: Callback ): number; @@ -223,13 +228,13 @@ declare class NodeCache extends events.EventEmitter implements NodeCache.NodeCac * reset or redefine the ttl of a key. If `ttl` is not passed or set to 0 it's similar to `.del()` */ ttl( - key: string, + key: Key, ttl: number, cb?: Callback ): boolean; ttl( - key: string, + key: Key, cb?: Callback, ttl?: number ): boolean; @@ -260,4 +265,3 @@ declare class NodeCache extends events.EventEmitter implements NodeCache.NodeCac } export = NodeCache; - diff --git a/types/node-cache/node-cache-tests.ts b/types/node-cache/node-cache-tests.ts index 7f5f917c07..96c4cdd5e4 100644 --- a/types/node-cache/node-cache-tests.ts +++ b/types/node-cache/node-cache-tests.ts @@ -1,5 +1,3 @@ - - import NodeCache = require('node-cache'); import Options = NodeCache.Options; @@ -23,7 +21,7 @@ interface TypeSample { let cache: NodeCache; let key: string; let cb: Callback; - let result: TypeSample; + let result: TypeSample | undefined; result = cache.get(key); result = cache.get(key, cb); } @@ -31,8 +29,8 @@ interface TypeSample { { let cache: NodeCache; let keys: string[]; - let cb: Callback<{[key: string]: TypeSample}>; - let result: {[key: string]: TypeSample}; + let cb: Callback<{ [key: string]: TypeSample }>; + let result: { [key: string]: TypeSample }; result = cache.mget(keys); result = cache.mget(keys, cb); } @@ -41,7 +39,7 @@ interface TypeSample { let cache: NodeCache; let key: string; let value: TypeSample; - let ttl: number|string; + let ttl: number | string; let cb: Callback; let result: boolean; result = cache.set(key, value); @@ -52,7 +50,7 @@ interface TypeSample { { let cache: NodeCache; - let keys: string|string[]; + let keys: string | string[]; let cb: Callback; let result: number; result = cache.del(keys); @@ -85,6 +83,7 @@ interface TypeSample { result = cache.getStats(); } +/* tslint:disable void-return */ { let cache: NodeCache; let result: void; @@ -96,3 +95,4 @@ interface TypeSample { let result: void; result = cache.close(); } +/* tslint:enable void-return */ diff --git a/types/node-cache/tslint.json b/types/node-cache/tslint.json new file mode 100644 index 0000000000..30a1bdde2e --- /dev/null +++ b/types/node-cache/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} \ No newline at end of file diff --git a/types/node/index.d.ts b/types/node/index.d.ts index f9716e3e83..7551a5190b 100644 --- a/types/node/index.d.ts +++ b/types/node/index.d.ts @@ -379,7 +379,8 @@ declare namespace NodeJS { | 'linux' | 'openbsd' | 'sunos' - | 'win32'; + | 'win32' + | 'cygwin'; type Signals = "SIGABRT" | "SIGALRM" | "SIGBUS" | "SIGCHLD" | "SIGCONT" | "SIGFPE" | "SIGHUP" | "SIGILL" | "SIGINT" | "SIGIO" | @@ -1006,7 +1007,7 @@ declare module "cluster" { addListener(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this; // the handle is a net.Socket or net.Server object, or undefined. addListener(event: "online", listener: () => void): this; - emit(event: string, listener: (...args: any[]) => void): boolean + emit(event: string | symbol, ...args: any[]): boolean; emit(event: "disconnect"): boolean emit(event: "error", code: number, signal: string): boolean emit(event: "exit", code: number, signal: string): boolean @@ -1731,7 +1732,7 @@ declare module "readline" { export function createInterface(input: NodeJS.ReadableStream, output?: NodeJS.WritableStream, completer?: Completer | AsyncCompleter, terminal?: boolean): ReadLine; export function createInterface(options: ReadLineOptions): ReadLine; - export function cursorTo(stream: NodeJS.WritableStream, x: number, y: number): void; + export function cursorTo(stream: NodeJS.WritableStream, x: number, y?: number): void; export function moveCursor(stream: NodeJS.WritableStream, dx: number | string, dy: number | string): void; export function clearLine(stream: NodeJS.WritableStream, dir: number): void; export function clearScreenDown(stream: NodeJS.WritableStream): void; @@ -1781,7 +1782,7 @@ declare module "child_process" { stdio: [stream.Writable, stream.Readable, stream.Readable]; pid: number; kill(signal?: string): void; - send(message: any, sendHandle?: any): boolean; + send(message: any, sendHandle?: net.Socket | net.Server, options?: MessageOptions, callback?: (error: Error) => void): boolean; connected: boolean; disconnect(): void; unref(): void; @@ -1839,6 +1840,10 @@ declare module "child_process" { prependOnceListener(event: "message", listener: (message: any, sendHandle: net.Socket | net.Server) => void): this; } + export interface MessageOptions { + keepOpen: boolean; + } + export interface SpawnOptions { cwd?: string; env?: any; @@ -1848,6 +1853,7 @@ declare module "child_process" { gid?: number; shell?: boolean | string; } + export function spawn(command: string, args?: string[], options?: SpawnOptions): ChildProcess; export interface ExecOptions { diff --git a/types/node/node-tests.ts b/types/node/node-tests.ts index 84625061a2..fef0cd9862 100644 --- a/types/node/node-tests.ts +++ b/types/node/node-tests.ts @@ -1410,6 +1410,7 @@ namespace readline_tests { let x: number; let y: number; + readline.cursorTo(stream, x); readline.cursorTo(stream, x, y); } diff --git a/types/node/v6/index.d.ts b/types/node/v6/index.d.ts index b71a70e537..0b87d6f2f6 100644 --- a/types/node/v6/index.d.ts +++ b/types/node/v6/index.d.ts @@ -861,7 +861,7 @@ declare module "cluster" { addListener(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this; // the handle is a net.Socket or net.Server object, or undefined. addListener(event: "online", listener: () => void): this; - emit(event: string, listener: Function): boolean + emit(event: string | symbol, ...args: any[]): boolean; emit(event: "disconnect", listener: () => void): boolean emit(event: "error", listener: (code: number, signal: string) => void): boolean emit(event: "exit", listener: (code: number, signal: string) => void): boolean diff --git a/types/node/v7/index.d.ts b/types/node/v7/index.d.ts index f075587a95..59b3d680c7 100644 --- a/types/node/v7/index.d.ts +++ b/types/node/v7/index.d.ts @@ -870,7 +870,7 @@ declare module "cluster" { addListener(event: "message", listener: (message: any, handle: net.Socket | net.Server) => void): this; // the handle is a net.Socket or net.Server object, or undefined. addListener(event: "online", listener: () => void): this; - emit(event: string, listener: Function): boolean + emit(event: string | symbol, ...args: any[]): boolean; emit(event: "disconnect", listener: () => void): boolean emit(event: "error", listener: (code: number, signal: string) => void): boolean emit(event: "exit", listener: (code: number, signal: string) => void): boolean @@ -1583,6 +1583,9 @@ declare module "readline" { completer?: Completer | AsyncCompleter; terminal?: boolean; historySize?: number; + prompt?: string; + crlfDelay?: number; + removeHistoryDuplicates?: boolean; } export function createInterface(input: NodeJS.ReadableStream, output?: NodeJS.WritableStream, completer?: Completer | AsyncCompleter, terminal?: boolean): ReadLine; diff --git a/types/office-js/index.d.ts b/types/office-js/index.d.ts index 935c7b3c35..4c5f6f0ad2 100644 --- a/types/office-js/index.d.ts +++ b/types/office-js/index.d.ts @@ -288,6 +288,10 @@ declare namespace Office { * Triggers when a document level selection happens */ DocumentSelectionChanged, + /** + * Triggers when the active item changes + */ + ItemChanged, /** * Triggers when a customXmlPart node was deleted */ @@ -1897,6 +1901,14 @@ declare namespace Office { ewsUrl: string; item: Item; userProfile: UserProfile; + /** + * Adds an event handler for a supported event + * @param eventType The event that should invoke the handler + * @param handler The function to handle the event + * @param options Any optional parameters or state data passed to the method + * @param callback The optional method to call when the handler is added + */ + addHandlerAsync(eventType: Office.EventType, handler: (type: Office.EventType) => void, options?: any, callback?: (result: AsyncResult) => void): void; /** * Converts an item ID formatted for REST into EWS format. * @param itemId An item ID formatted for the Outlook REST APIs diff --git a/types/openlayers/index.d.ts b/types/openlayers/index.d.ts index 42587298f0..356ba72429 100644 --- a/types/openlayers/index.d.ts +++ b/types/openlayers/index.d.ts @@ -13572,7 +13572,7 @@ declare module olx { rotation?: number; size?: ol.Size; imgSize?: ol.Size; - src: string; + src?: string; } diff --git a/types/paper/index.d.ts b/types/paper/index.d.ts index 197707058b..918603be84 100644 --- a/types/paper/index.d.ts +++ b/types/paper/index.d.ts @@ -3514,6 +3514,12 @@ declare module 'paper' { * @param highlight [optional] - */ constructor(color: Gradient, origin: Point, destination: Point, highlight?: Point); + + /** + * Creates a RGB Color object. + * @param hex - the RGB color in hex, i.e. #000000 + */ + constructor(hex: string); /** * The type of the color as a string. diff --git a/types/passport-google-oauth2/index.d.ts b/types/passport-google-oauth2/index.d.ts new file mode 100644 index 0000000000..5c131622e7 --- /dev/null +++ b/types/passport-google-oauth2/index.d.ts @@ -0,0 +1,48 @@ +// Type definitions for passport-google-oauth2 0.1 +// Project: https://github.com/mstade/passport-google-oauth2 +// Definitions by: Elliot Blackburn +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import {Request} from 'express'; + +export interface StrategyOptions { + clientID: string; + clientSecret: string; + callbackURL: string; + passReqToCallback?: true; + scope?: string[]; +} + +export interface StrategyOptionsWithRequest { + clientID: string; + clientSecret: string; + callbackURL: string; + passReqToCallback: true; + scope?: string[]; +} + +export interface VerifyOptions { + message: string; +} + +export type VerifyCallback = (error: any, user?: any, options?: VerifyOptions) => void; + +export type VerifyFunctionWithRequest = ( + req: Request, + accessToken: string, + refreshToken: string, + profile: any, + done: VerifyCallback +) => void; + +export type VerifyFunction = (accessToken: string, refreshToken: string, profile: any, done: VerifyCallback) => void; + +export class Strategy implements Strategy { + name: string; + authenticate: (req: Request, options?: object) => void; + + constructor(options: StrategyOptionsWithRequest, verify: VerifyFunctionWithRequest); + constructor(options: StrategyOptions, verify: VerifyFunction); + constructor(verify: VerifyFunction); +} diff --git a/types/passport-google-oauth2/passport-google-oauth2-tests.ts b/types/passport-google-oauth2/passport-google-oauth2-tests.ts new file mode 100644 index 0000000000..37261bc818 --- /dev/null +++ b/types/passport-google-oauth2/passport-google-oauth2-tests.ts @@ -0,0 +1,17 @@ +import * as express from 'express'; +import * as PassportGoogle from 'passport-google-oauth2'; +import { Strategy as GoogleStrategy } from 'passport-google-oauth2'; + +new GoogleStrategy({ + callbackURL: 'callbackurl', + clientID: 'clientid', + clientSecret: 'shhh', + passReqToCallback: true, +}, ( + req: express.Request, + accessToken: string, + refreshToken: string, + profile: any, + done: PassportGoogle.VerifyCallback) => { + // Some registration / log in logic +}); diff --git a/types/passport-google-oauth2/tsconfig.json b/types/passport-google-oauth2/tsconfig.json new file mode 100644 index 0000000000..38b1a17f54 --- /dev/null +++ b/types/passport-google-oauth2/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "passport-google-oauth2-tests.ts" + ] +} diff --git a/types/passport-google-oauth2/tslint.json b/types/passport-google-oauth2/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/passport-google-oauth2/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/passport-local-mongoose/index.d.ts b/types/passport-local-mongoose/index.d.ts index 8a2d036c9f..2e3377a9b8 100644 --- a/types/passport-local-mongoose/index.d.ts +++ b/types/passport-local-mongoose/index.d.ts @@ -19,8 +19,8 @@ declare module 'mongoose' { // statics interface PassportLocalModel extends Model { authenticate(): (username: string, password: string, cb: (err: any, res: T, error: any) => void) => void; - serializeUser(): (user: PassportLocalModel, cb: (err: any) => void) => void; - deserializeUser(): (username: string, cb: (err: any) => void) => void; + serializeUser(): (user: PassportLocalModel, cb: (err: any, id?: any) => void) => void; + deserializeUser(): (username: string, cb: (err: any, user?: any) => void) => void; register(user: T, password: string, cb: (err: any, account: any) => void): void; findByUsername(username: string, selectHashSaltFields: boolean, cb: (err: any, account: any) => void): any; createStrategy(): passportLocal.Strategy; diff --git a/types/pg/index.d.ts b/types/pg/index.d.ts index 2b442b1227..6718fb3f12 100644 --- a/types/pg/index.d.ts +++ b/types/pg/index.d.ts @@ -71,7 +71,7 @@ export declare class Pool extends events.EventEmitter { connect(): Promise; connect(callback: (err: Error, client: Client, done: () => void) => void): void; - end(): Promise; + end(callback?: () => void): Promise; query(queryStream: QueryConfig & stream.Readable): stream.Readable; query(queryTextOrConfig: string | QueryConfig): Promise; diff --git a/types/pg/pg-tests.ts b/types/pg/pg-tests.ts index 73c18ac1b7..4b4cfba7ec 100644 --- a/types/pg/pg-tests.ts +++ b/types/pg/pg-tests.ts @@ -74,3 +74,8 @@ pool.connect((err, client, done) => { pool.on('error', (err, client) => { console.error('idle client error', err.message, err.stack) }) + +pool.end(); +pool.end(() => { + console.log("pool is closed"); +}); diff --git a/types/pixi.js/index.d.ts b/types/pixi.js/index.d.ts index bcf403d475..f7410baaa6 100644 --- a/types/pixi.js/index.d.ts +++ b/types/pixi.js/index.d.ts @@ -199,25 +199,6 @@ declare namespace PIXI { // display - interface ApplicationOptions extends RendererOptions { - view?: HTMLCanvasElement; - transparent?: boolean; - autoResize?: boolean; - antialias?: boolean; - resolution?: number; - clearBeforeRender?: boolean; - backgroundColor?: number; - roundPixels?: boolean; - context?: WebGLRenderingContext; - preserveDrawingBuffer?: boolean; - legacy?: boolean; - width?: number; - height?: number; - forceCanvas?: boolean; - sharedTicker?: boolean; - sharedLoader?: boolean; - } - class Application { constructor(options?: ApplicationOptions) constructor(width?: number, height?: number, options?: ApplicationOptions, noWebGL?: boolean, sharedTicker?: boolean, sharedLoader?: boolean); @@ -725,18 +706,91 @@ declare namespace PIXI { } // renderers interface RendererOptions { - view?: HTMLCanvasElement; - transparent?: boolean; - autoResize?: boolean; - antialias?: boolean; - resolution?: number; - clearBeforeRender?: boolean; - backgroundColor?: number; - roundPixels?: boolean; - context?: WebGLRenderingContext; + /** + * the width of the renderers view [default=800] + */ width?: number; + + /** + * the height of the renderers view [default=600] + */ height?: number; + + /** + * the canvas to use as a view, optional + */ + view?: HTMLCanvasElement; + + /** + * If the render view is transparent, [default=false] + */ + transparent?: boolean; + + /** + * sets antialias (only applicable in chrome at the moment) [default=false] + */ + antialias?: boolean; + + /** + * enables drawing buffer preservation, enable this if you need to call toDataUrl on the webgl context [default=false] + */ + preserveDrawingBuffer?: boolean; + + /** + * The resolution / device pixel ratio of the renderer, retina would be 2 [default=1] + */ + resolution?: number; + + /** + * prevents selection of WebGL renderer, even if such is present [default=false] + */ forceCanvas?: boolean; + + /** + * The background color of the rendered area (shown if not transparent) [default=0x000000] + */ + backgroundColor?: number; + + /** + * This sets if the renderer will clear the canvas or not before the new render pass. [default=true] + */ + clearBeforeRender?: boolean; + + /** + * If true Pixi will Math.floor() x/ y values when rendering, stopping pixel interpolation. [default=false] + */ + roundPixels?: boolean; + + /** + * forces FXAA antialiasing to be used over native FXAA is faster, but may not always look as great ** webgl only** [default=false] + */ + forceFXAA?: boolean; + + /** + * `true` to ensure compatibility with older / less advanced devices. If you experience unexplained flickering try setting this to true. **webgl only** [default=false] + */ + legacy?: boolean; + + /** + * Depricated + */ + context?: WebGLRenderingContext; + + /** + * Depricated + */ + autoResize?: boolean; + } + interface ApplicationOptions extends RendererOptions { + /** + * `true` to use PIXI.ticker.shared, `false` to create new ticker. [default=false] + */ + sharedTicker?: boolean; + + /** + * `true` to use PIXI.loaders.shared, `false` to create new Loader. + */ + sharedLoader?: boolean; } class SystemRenderer extends utils.EventEmitter { constructor(system: string, options?: RendererOptions); @@ -825,20 +879,7 @@ declare namespace PIXI { resize(width: number, height: number): void; destroy(): void; } - interface WebGLRendererOptions { - view?: HTMLCanvasElement; - transparent?: boolean; - autoResize?: boolean; - antialias?: boolean; - forceFXAA?: boolean; - resolution?: number; - clearBeforeRender?: boolean; - backgroundColor?: number; - preserveDrawingBuffer?: boolean; - roundPixels?: boolean; - legacy?: boolean; - width?: number; - height?: number; + interface WebGLRendererOptions extends RendererOptions { } class WebGLRenderer extends SystemRenderer { // plugintarget mixin start @@ -2512,12 +2553,18 @@ declare namespace PIXI { protected maxItemsPerFrame: number; protected itemsLeft: number; + + beginFrame(): void; + allowedToUpload(): boolean; } class TimeLimiter { constructor(maxMilliseconds: number); protected maxMilliseconds: number; protected frameStart: number; + + beginFrame(): void; + allowedToUpload(): boolean; } } @@ -2713,6 +2760,11 @@ declare namespace PIXI { function isWebGLSupported(): boolean; function sign(n: number): number; function removeItems(arr: T[], startIdx: number, removeCount: number): void; + function correctBlendMode(blendMode: number, premultiplied: boolean): number; + function premultiplyTint(tint: number, alpha: number): number; + function premultiplyRgba(rgb: Float32Array | number[], alpha: number, out?: Float32Array, premultiply?: boolean): Float32Array; + function premultiplyTintToRgba(tint: number, alpha: number, out?: Float32Array, premultiply?: boolean): Float32Array; + const premultiplyBlendMode: number[][]; const TextureCache: any; const BaseTextureCache: any; diff --git a/types/postmark/index.d.ts b/types/postmark/index.d.ts new file mode 100644 index 0000000000..76d9c48ee4 --- /dev/null +++ b/types/postmark/index.d.ts @@ -0,0 +1,216 @@ +// Type definitions for postmark 1.3 +// Project: http://wildbit.github.io/postmark.js +// Definitions by: Ben Bayard +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +interface PostmarkError { + status: number; + message: string; + code: number; +} + +interface PostmarkMessageHeader { + Name: string; + Value: string; +} + +interface PostmarkAttachment { + Content: string; + Name: string; + ContentType: string; +} + +interface Filter { + count: number; + offset: number; +} + +interface PostmarkMessageWithTemplate { + To: string; + From: string; + Cc?: string; + Bcc?: string; + ReplyTo?: string; + TemplateId?: string; + TemplateModel?: any; + Tag?: string; + Subject?: string; + TrackOpens?: boolean; + TrackLinks?: string; + Headers?: PostmarkMessageHeader[]; +} + +interface PostmarkMessage { + To: string; + From: string; + Cc?: string; + Bcc?: string; + ReplyTo?: string; + Tag?: string; + Subject?: string; + HTMLBody?: string; + TextBody?: string; + TrackOpens?: boolean; + TrackLinks?: string; + Headers?: PostmarkMessageHeader[]; + Attachments?: PostmarkAttachment[]; +} + +interface Sender { + Color: string; + RawEmailEnabled: boolean; + SmtpApiActivated: boolean; + DeliveryHookUrl: string; + InboundHookUrl: string; + BounceHookUrl: boolean; + IncludeBounceContentInHook: boolean; + OpenHookUrl: boolean; + PostFirstOpenOnly: boolean; + TrackOpens: boolean; + TrackLinks: string; + InboundDomain: string; + InboundSpamThreshold: number; +} + +interface TemplateValidator { + Subject: string; + HtmlBody: string; + TextBody: string; + TestRenderModel?: T; + InlineCssForHtmlTestRender?: boolean; +} + +type PostmarkCallback = ((e: PostmarkError, ret: T) => void) | undefined; + +interface SimpleOptions { + ssl: boolean; + requestHost: string; +} + +interface Options extends SimpleOptions { + requestFactory( + options: SimpleOptions + ): ( + path?: string, + type?: string, + content?: PostmarkMessage, + callback?: PostmarkCallback + ) => any; +} + +declare class Client { + constructor(serverKey: string, options: Partial); + send(message: PostmarkMessage, callback: PostmarkCallback): void; + sendEmailWithTemplate( + message: PostmarkMessageWithTemplate, + callback: PostmarkCallback + ): void; + batch(message: PostmarkMessage[], callback: PostmarkCallback): void; + sendEmail(message: PostmarkMessage, callback: PostmarkCallback): void; + sendEmailBatch(message: PostmarkMessage[], callback: PostmarkCallback): void; + getDeliveryStatistics(callback: PostmarkCallback): void; + getBounces(filter: Partial, callback: PostmarkCallback): void; + getBounce(id: number, callback: PostmarkCallback): void; + getBounceDump(id: number, callback: PostmarkCallback): void; + activateBounce(id: number, callback: PostmarkCallback): void; + getBounceTags(callback: PostmarkCallback): void; + getServer(callback: PostmarkCallback): void; + editServer(options: Pick, callback: PostmarkCallback): void; + getOutboundMessages(filter: Partial, callback: PostmarkCallback): void; + getOutboundMessageDetails(id: number, callback: PostmarkCallback): void; + getMessageOpens(filter: Partial, callback: PostmarkCallback): void; + getMessageOpensForSingleMessage(id: number, filter: Partial, callback: PostmarkCallback): void; + getInboundMessages(filter: Partial, callback: PostmarkCallback): void; + getInboundMessageDetails(id: number, callback: PostmarkCallback): void; + bypassBlockedInboundMessage(id: number, callback: PostmarkCallback): void; + retryInboundHookForMessage(id: number, callback: PostmarkCallback): void; + getOuboundOverview(filter: Partial, callback: PostmarkCallback): void; + validateTemplate(templateObject: TemplateValidator, callback: PostmarkCallback): void; +} + +interface CreateSignature { + FromEmail: string; + Name: string; + ReplyToEmail?: string; + ReturnPathDomain?: string; +} + +interface CreateServer { + Name: string; + Color?: string; + RawEmailEnabled?: boolean; + SmtpApiActivated?: boolean; + DeliveryHookUrl?: string; + InboundHookUrl?: string; + BounceHookUrl?: string; + IncludeBounceContentInHook?: boolean; + OpenHookUrl?: string; + PostFirstOpenOnly?: boolean; + TrackOpens?: boolean; + TrackLinks?: string; + InboundDomain?: string; + InboundSpamThreshold?: number; +} + +interface CreateDomain { + Name: string; + ReturnPathDomain?: string; +} + +declare class AdminClient { + constructor(apiKey: string, options: Partial); + listSenderSignatures(query: Partial, callback: PostmarkCallback): void; + createSenderSignature(options: CreateSignature, callback: PostmarkCallback): void; + editSenderSignature( + id: number, + options: Partial>, + callback: PostmarkCallback + ): void; + deleteSenderSignature(id: number, callback: PostmarkCallback): void; + resendSenderSignatureConfirmation(id: number, callback: PostmarkCallback): void; + verifySenderSignatureSPF(id: number, callback: PostmarkCallback): void; + requestNewDKIMForSenderSignature(id: number, callback: PostmarkCallback): void; + getServer(id: number, callback: PostmarkCallback): void; + createServer(options: CreateServer, callback: PostmarkCallback): void; + editServer( + id: number, + options: Pick, + callback: PostmarkCallback + ): void; + deleteServer(id: number, callback: PostmarkCallback): void; + listServers(query: Partial, callback: PostmarkCallback): void; + listDomains(query: Partial, callback: PostmarkCallback): void; + getDomain(id: number, callback: PostmarkCallback): void; + createDomain( + options: CreateDomain, + callback: PostmarkCallback + ): void; + editDomain( + id: number, + options: Pick, + callback: PostmarkCallback + ): void; + deleteDomain(id: number, callback: PostmarkCallback): void; + verifyDomainSPF(id: number, callback: PostmarkCallback): void; + rotateDKIMForDomain(id: number, callback: PostmarkCallback): void; +} + +interface ClientClass { + new(serverKey: string, options: Partial): Client; +} + +interface AdminClientClass { + new(apiKey: string, options: Partial): AdminClient; +} + +interface Postmark { + (apiKey: string, options: Partial): void; + defaults: Options; + Client: ClientClass; + AdminClient: AdminClientClass; +} + +declare var postmark: Postmark; + +export = postmark; diff --git a/types/postmark/postmark-tests.ts b/types/postmark/postmark-tests.ts new file mode 100644 index 0000000000..451b0051f4 --- /dev/null +++ b/types/postmark/postmark-tests.ts @@ -0,0 +1,61 @@ +import postmark = require('postmark'); + +declare var options: typeof postmark.defaults; +const message = { To: 'me', From: 'you' }; +const templateMessage = {...message, TemplateId: '1'}; +const filter = { offset: 0 }; +const editSender = { Color: 'black' }; +const templateValidator = { + Subject: '123', + HtmlBody: '123345', + TextBody: '123535', +}; + +declare function callback(err: any, data: any): void; + +const client = new postmark.Client('124345', options); +const adminClient = new postmark.AdminClient('1123235', options); + +client.send(message, callback); +client.sendEmailWithTemplate(templateMessage, callback); +client.batch([message, message], callback); +client.sendEmail(message, callback); +client.sendEmailBatch([message, message], callback); +client.getDeliveryStatistics(callback); +client.getBounces(filter, callback); +client.getBounce(1, callback); +client.getBounceDump(1, callback); +client.activateBounce(1, callback); +client.getBounceTags(callback); +client.getServer(callback); +client.editServer(editSender, callback); +client.getOutboundMessages(filter, callback); +client.getOutboundMessageDetails(1, callback); +client.getMessageOpens(filter, callback); +client.getMessageOpensForSingleMessage(1, filter, callback); +client.getInboundMessages(filter, callback); +client.getInboundMessageDetails(1, callback); +client.bypassBlockedInboundMessage(1, callback); +client.retryInboundHookForMessage(1, callback); +client.getOuboundOverview(filter, callback); +client.validateTemplate(templateValidator, callback); + +adminClient.listSenderSignatures(filter, callback); +adminClient.createSenderSignature({FromEmail: '', Name: ''}, callback); +adminClient.editSenderSignature(0, {ReplyToEmail: '123'}, callback); +adminClient.deleteSenderSignature(0, callback); +adminClient.resendSenderSignatureConfirmation(0, callback); +adminClient.verifySenderSignatureSPF(0, callback); +adminClient.requestNewDKIMForSenderSignature(0, callback); +adminClient.getServer(0, callback); +adminClient.createServer({Name: '123'}, callback); +adminClient.editServer(0, {Color: 'black'}, callback); +adminClient.deleteServer(0, callback); +adminClient.listServers(filter, callback); +adminClient.listDomains(filter, callback); +adminClient.getDomain(0, callback); +adminClient.createDomain({Name: '1234'}, callback); +adminClient.editDomain(0, {ReturnPathDomain: '/'}, callback); +adminClient.deleteDomain(0, callback); +adminClient.verifyDomainSPF(0, callback); +adminClient.rotateDKIMForDomain(0, callback); diff --git a/types/postmark/tsconfig.json b/types/postmark/tsconfig.json new file mode 100644 index 0000000000..a7bd7a7e3c --- /dev/null +++ b/types/postmark/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "postmark-tests.ts" + ] +} diff --git a/types/postmark/tslint.json b/types/postmark/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/postmark/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/pretty-bytes/index.d.ts b/types/pretty-bytes/index.d.ts new file mode 100644 index 0000000000..7cd856b4f5 --- /dev/null +++ b/types/pretty-bytes/index.d.ts @@ -0,0 +1,8 @@ +// Type definitions for pretty-bytes 4.0 +// Project: https://github.com/sindresorhus/pretty-bytes +// Definitions by: York Yao +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare function prettyBytes(bytes: number): string; +export = prettyBytes; +declare namespace prettyBytes { } diff --git a/types/pretty-bytes/pretty-bytes-tests.ts b/types/pretty-bytes/pretty-bytes-tests.ts new file mode 100644 index 0000000000..71745d9a1b --- /dev/null +++ b/types/pretty-bytes/pretty-bytes-tests.ts @@ -0,0 +1,7 @@ +import prettyBytes = require('pretty-bytes'); + +prettyBytes(1337); +// => '1.34 kB' + +prettyBytes(100); +// => '100 B' diff --git a/types/pretty-bytes/tsconfig.json b/types/pretty-bytes/tsconfig.json new file mode 100644 index 0000000000..1f040dc3ac --- /dev/null +++ b/types/pretty-bytes/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "pretty-bytes-tests.ts" + ] +} \ No newline at end of file diff --git a/types/pretty-bytes/tslint.json b/types/pretty-bytes/tslint.json new file mode 100644 index 0000000000..e60c15844f --- /dev/null +++ b/types/pretty-bytes/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} \ No newline at end of file diff --git a/types/qs/index.d.ts b/types/qs/index.d.ts index d3574383a5..2ecbed14be 100644 --- a/types/qs/index.d.ts +++ b/types/qs/index.d.ts @@ -1,9 +1,10 @@ -// Type definitions for qs 6.4.0 +// Type definitions for qs 6.5.0 // Project: https://github.com/ljharb/qs // Definitions by: Roman Korneev // Leon Yu // Belinda Teh // Melvin Lee +// Arturs Vonda // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped export = QueryString; @@ -23,6 +24,7 @@ declare namespace QueryString { serializeDate?: (d: Date) => string; format?: 'RFC1738' | 'RFC3986'; encodeValuesOnly?: boolean; + addQueryPrefix?: boolean; } interface IParseOptions { @@ -36,6 +38,7 @@ declare namespace QueryString { allowPrototypes?: boolean; parameterLimit?: number; strictNullHandling?: boolean; + ignoreQueryPrefix?: boolean; } function stringify(obj: any, options?: IStringifyOptions): string; diff --git a/types/qs/qs-tests.ts b/types/qs/qs-tests.ts index d71aa55957..49fe89a4aa 100644 --- a/types/qs/qs-tests.ts +++ b/types/qs/qs-tests.ts @@ -233,6 +233,11 @@ qs.parse('a=b&c=d', { delimiter: '&' }); assert.deepEqual(parsedStrictNull, { a: null, b: '' }); } +() => { + var parsedQueryPrefix = qs.parse('?a&b=', { ignoreQueryPrefix: true }); + assert.deepEqual(parsedQueryPrefix, { a: '', b: '' }); +} + () => { var nullsSkipped = qs.stringify({ a: 'b', c: null }, { skipNulls: true }); assert.equal(nullsSkipped, 'a=b'); @@ -278,3 +283,7 @@ qs.parse('a=b&c=d', { delimiter: '&' }); ); assert.equal(encodedValues,'a=b&c[0]=d&c[1]=e%3Df&f[0][0]=g&f[1][0]=h'); } + +() => { + assert.equal(qs.stringify({ a: 'b' }, { addQueryPrefix: true }), '?a=b'); +} diff --git a/types/ramda/index.d.ts b/types/ramda/index.d.ts index cb0241bea7..1697ff4341 100644 --- a/types/ramda/index.d.ts +++ b/types/ramda/index.d.ts @@ -628,6 +628,12 @@ declare namespace R { forEach(fn: (x: T) => void, list: T[]): T[]; forEach(fn: (x: T) => void): (list: T[]) => T[]; + /** + * Iterate over an input object, calling a provided function fn for each key and value in the object. + */ + forEachObjIndexed(fn: (value: T[keyof T], key: keyof T, obj: T) => void, obj: T): T; + forEachObjIndexed(fn: (value: T[keyof T], key: keyof T, obj: T) => void): (obj: T) => T; + /** * Creates a new object out of a list key-value pairs. */ @@ -813,7 +819,7 @@ declare namespace R { /** * Checks if the input value is null or undefined. */ - isNil(value: any): boolean; + isNil(value: any): value is null | undefined; /** * Returns a string made by inserting the `separator` between each @@ -913,6 +919,8 @@ declare namespace R { map(fn: (x: T) => U, list: T[]): U[]; map(fn: (x: T) => U, obj: Functor): Functor; // used in functors map(fn: (x: T) => U): (list: T[]) => U[]; + map(fn: (x: T[keyof T]) => U[keyof T], obj: T): U; + map(fn: (x: T[keyof T]) => U[keyof T]): (obj: T) => U; /** * The mapAccum function behaves like a combination of map and reduce. @@ -1502,6 +1510,12 @@ declare namespace R { splitWhen(pred: (val: T) => boolean, list: U[]): U[][]; splitWhen(pred: (val: T) => boolean): (list: U[]) => U[][]; + /** + * Checks if a list starts with the provided values + */ + startsWith(a: any, list: any): boolean; + startsWith(a: any): (list: any) => boolean; + /** * Subtracts two numbers. Equivalent to `a - b` but curried. */ diff --git a/types/ramda/ramda-tests.ts b/types/ramda/ramda-tests.ts index 18a5ed4e7d..908c88828a 100644 --- a/types/ramda/ramda-tests.ts +++ b/types/ramda/ramda-tests.ts @@ -753,6 +753,24 @@ interface Obj { R.map((x: number) => x - 1, numberFunctor); // => "Hello World" }; +() => { + interface A { + a: number; + b: number; + } + + interface B { + a: string; + b: string; + } + + R.map(R.inc, {a: 1, b: 2}); + R.map(R.toString, {a: 1, b: 2}); + + R.map(R.inc)({a: 1, b: 2}); + R.map(R.toString)({a: 1, b: 2}); +}; + () => { let digits = ["1", "2", "3", "4"]; diff --git a/types/raven/index.d.ts b/types/raven/index.d.ts index 5a79d5d309..a312c2b452 100644 --- a/types/raven/index.d.ts +++ b/types/raven/index.d.ts @@ -84,6 +84,6 @@ export type TransportCallback = (options: { [key: string]: any }) => void; export interface CaptureOptions { tags?: { [key: string]: string }; extra?: { [key: string]: any }; - fingerprint?: string; + fingerprint?: string[]; level?: string; } diff --git a/types/rc-slider/index.d.ts b/types/rc-slider/index.d.ts index 34cfc22056..c30f6a649c 100644 --- a/types/rc-slider/index.d.ts +++ b/types/rc-slider/index.d.ts @@ -1,154 +1,165 @@ -// Type definitions for rc-slider 6.1 +// Type definitions for rc-slider 8.1 // Project: https://github.com/react-component/slider -// Definitions by: Marcinkus Mantas +// Definitions by: Marcinkus Mantas , Alexander Mattoni // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 -import * as React from 'react'; +import * as React from "react"; -declare namespace RcSliderClass { - interface Marks { - [number: number]: JSX.Element | string | { style: any, label: string | JSX.Element }; - } - - interface CommonApiProps { - /** - * Additional CSS class for the root DOM node - * @default '' - */ - className?: string; - /** - * The minimum value of the slider - * @default 0 - */ - min?: number; - /** - * The maximum value of the slider - * @default 100 - */ - max?: number; - /** - * Marks on the slider. The key determines the position, and the value determines what will show. - * If you want to set the style of a specific mark point, the value should be an object which contains style and label properties. - * @default '{}' | {number: { style, label }} - */ - marks?: Marks; - /** - * Value to be added or subtracted on each step the slider makes. Must be greater than zero, and max - min should be evenly divisible by the step value. - * @default 1 - */ - step?: number; - /** - * If vertical is true, the slider will be vertical. - * @default false - */ - vertical?: boolean; - /** - * A handle generator which could be used to customized handle. - */ - handle?(props: any): React.ReactNode; - /** - * If the value is true, it means a continuous value interval, otherwise, it is a independent value. - * @default true - */ - included?: boolean; - /** - * If true, handles can't be moved. - * @default false - */ - disabled?: boolean; - /** - * When the step value is greater than 1, you can set the dots to true if you want to render the slider with dots. - * @default false - */ - dots?: boolean; - /** - * onBeforeChange will be triggered when ontouchstart or onmousedown is triggered. - */ - onBeforeChange?(value: any): any | undefined; - /** - * onChange will be triggered while the value of Slider changing. - */ - onChange?(value: any): any | undefined; - /** - * onAfterChange will be triggered when ontouchend or onmouseup is triggered. - */ - onAfterChange?(value: any): any | undefined; - - /** - * @deprecated in version ^6.0.0. Use rc-tooltip - * Tooltip transition class name - */ - tipTransitionName?: string; - - /** - * @deprecated in version ^6.0.0. Use rc-tooltip - * Tooltip formatter - */ - tipFormatter?: ((value: any) => any | undefined) | null; - } - - interface SliderProps extends CommonApiProps { - /** - * Set initial value of slider. - * @default 0 - */ - defaultValue?: number; - /** - * Set current value of slider. - */ - value?: number; - } - - interface RangeProps extends CommonApiProps { - /** - * Set initial positions of handles. - * @default [0,0] - */ - defaultValue?: number[]; - /** - * Set current positions of handles. - */ - value?: number[]; - /** - * Determine how many ranges to render, and multiple handles will be rendered (number + 1). - * @default 1 - */ - count?: number; - /** - * allowCross could be set as true to allow those handles to cross. - * @default true - */ - allowCross?: boolean; - /** - * pushable could be set as true to allow pushing of surrounding handles when moving an handle. When set to a number, the number will be the minimum ensured distance between handles. - * @default true - */ - pushable?: boolean; - } - - interface HandleProps extends CommonApiProps { - /** - * Class name - */ - className: string; - /** - * Styling if true, then bottom: {offset} else left: {offset} - * @default False - */ - vertical: boolean; - /** - * Styling option offset - */ - offset: number; - } +export interface Marks { + [number: number]: + | JSX.Element + | string + | { style: any; label: string | JSX.Element }; } -declare class RcSliderClass extends React.Component { } +export interface CommonApiProps { + /** + * Additional CSS class for the root DOM node + * @default '' + */ + className?: string; + /** + * The minimum value of the slider + * @default 0 + */ + min?: number; + /** + * The maximum value of the slider + * @default 100 + */ + max?: number; + /** + * Marks on the slider. The key determines the position, and the value determines what will show. + * If you want to set the style of a specific mark point, the value should be an object which contains style and label properties. + * @default '{}' | {number: { style, label }} + */ + marks?: Marks; + /** + * Value to be added or subtracted on each step the slider makes. Must be greater than zero, and max - min should be evenly divisible by the step value. + * @default 1 + */ + step?: number; + /** + * If vertical is true, the slider will be vertical. + * @default false + */ + vertical?: boolean; + /** + * A handle generator which could be used to customized handle. + */ + handle?(props: any): React.ReactNode; + /** + * If the value is true, it means a continuous value interval, otherwise, it is a independent value. + * @default true + */ + included?: boolean; + /** + * If true, handles can't be moved. + * @default false + */ + disabled?: boolean; + /** + * When the step value is greater than 1, you can set the dots to true if you want to render the slider with dots. + * @default false + */ + dots?: boolean; + /** + * onBeforeChange will be triggered when ontouchstart or onmousedown is triggered. + */ + onBeforeChange?(value: any): any | undefined; + /** + * onChange will be triggered while the value of Slider changing. + */ + onChange?(value: any): any | undefined; + /** + * onAfterChange will be triggered when ontouchend or onmouseup is triggered. + */ + onAfterChange?(value: any): any | undefined; -declare namespace RcSliderClass { - class Range extends React.Component { } - class Handle extends React.Component { } + /** + * @deprecated in version ^6.0.0. Use rc-tooltip + * Tooltip transition class name + */ + tipTransitionName?: string; + + /** + * @deprecated in version ^6.0.0. Use rc-tooltip + * Tooltip formatter + */ + tipFormatter?: ((value: any) => any | undefined) | null; + + /** + * The style used for handle. (both for slider(Object) and range(Array of Object), the array will be used for mutli handle follow element order) + */ + handleStyle?: React.CSSProperties[] | React.CSSProperties; + + /** + * The style used for track. (both for slider(Object) and range(Array of Object), the array will be used for mutli track follow element order) + */ + trackStyle?: React.CSSProperties[] | React.CSSProperties; + + /** + * The style used for the track base color. + */ + railStyle?: React.CSSProperties; } -export = RcSliderClass; +export interface SliderProps extends CommonApiProps { + /** + * Set initial value of slider. + * @default 0 + */ + defaultValue?: number; + /** + * Set current value of slider. + */ + value?: number; +} + +export interface RangeProps extends CommonApiProps { + /** + * Set initial positions of handles. + * @default [0,0] + */ + defaultValue?: number[]; + /** + * Set current positions of handles. + */ + value?: number[]; + /** + * Determine how many ranges to render, and multiple handles will be rendered (number + 1). + * @default 1 + */ + count?: number; + /** + * allowCross could be set as true to allow those handles to cross. + * @default true + */ + allowCross?: boolean; + /** + * pushable could be set as true to allow pushing of surrounding handles when moving an handle. When set to a number, the number will be the minimum ensured distance between handles. + * @default true + */ + pushable?: boolean; +} + +export interface HandleProps extends CommonApiProps { + /** + * Class name + */ + className: string; + /** + * Styling if true, then bottom: {offset} else left: {offset} + * @default False + */ + vertical: boolean; + /** + * Styling option offset + */ + offset: number; +} + +export default class Slider extends React.Component { } +export class Range extends React.Component { } +export class Handle extends React.Component { } diff --git a/types/rc-slider/rc-slider-tests.tsx b/types/rc-slider/rc-slider-tests.tsx index 55c0674741..7e2e14e317 100644 --- a/types/rc-slider/rc-slider-tests.tsx +++ b/types/rc-slider/rc-slider-tests.tsx @@ -1,7 +1,6 @@ import * as React from 'react'; import * as ReactDOM from 'react-dom'; -import * as Slider from 'rc-slider'; -import { Range, Handle } from 'rc-slider'; +import Slider, { Range, Handle } from 'rc-slider'; ReactDOM.render( , diff --git a/types/react-big-calendar/index.d.ts b/types/react-big-calendar/index.d.ts index 646826bee4..529d14a369 100644 --- a/types/react-big-calendar/index.d.ts +++ b/types/react-big-calendar/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for react-big-calendar 0.12.3 +// Type definitions for react-big-calendar 0.14.0 // Project: https://github.com/intljusticemission/react-big-calendar // Definitions by: Piotr Witek // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -53,9 +53,5 @@ declare module 'react-big-calendar' { static globalizeLocalizer(globalizeInstance: Object): void; } - /* This enables 'import * as BigCalendar' syntax when compiling to es2015 */ - namespace BigCalendar {} - - /* react-big-calendar is exported as a commonjs module (it uses babel-preset-jason) */ - export = BigCalendar; + export default BigCalendar; } diff --git a/types/react-big-calendar/react-big-calendar-tests.tsx b/types/react-big-calendar/react-big-calendar-tests.tsx index 2ca939c0a6..b123532d49 100644 --- a/types/react-big-calendar/react-big-calendar-tests.tsx +++ b/types/react-big-calendar/react-big-calendar-tests.tsx @@ -1,7 +1,7 @@ import * as React from "react"; import * as ReactDOM from "react-dom"; import * as ReactDOMServer from "react-dom/server"; -import BigCalendar = require("react-big-calendar"); +import BigCalendar from "react-big-calendar"; // Don't want to add this as a dependency, because it is only used for tests. declare const moment: any; diff --git a/types/react-burger-menu/index.d.ts b/types/react-burger-menu/index.d.ts index 6d3a508c97..8e43992940 100644 --- a/types/react-burger-menu/index.d.ts +++ b/types/react-burger-menu/index.d.ts @@ -2,11 +2,10 @@ // Project: https://github.com/negomi/react-burger-menu // Definitions by: Rajab Shakirov // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 import * as React from "react"; -// TODO (Rajab) actually I don't want export Props, but -// `npm run lint react-burger-menu` error doesn't allow me to do it; export interface Props { burgerBarClassName?: string; burgerButtonClassName?: string; @@ -42,8 +41,6 @@ export interface Props { width?: number | string; } -// TODO (Rajab) actually I don't want export ReactBurgerMenu, but -// `npm run lint react-burger-menu` error doesn't allow me to do it; export class ReactBurgerMenu extends React.Component { } export class slide extends ReactBurgerMenu { } diff --git a/types/react-dates/index.d.ts b/types/react-dates/index.d.ts index d290c84995..c3559f5278 100644 --- a/types/react-dates/index.d.ts +++ b/types/react-dates/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for react-dates v12.1.0 +// Type definitions for react-dates v12.1.1 // Project: https://github.com/airbnb/react-dates // Definitions by: Artur Ampilogov // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -226,6 +226,7 @@ declare namespace ReactDates { // navigation related props navPrev?: string | JSX.Element, navNext?: string | JSX.Element, + hideKeyboardShortcutsPanel?: boolean; onPrevMonthClick?: (e: React.EventHandler>) => void, onNextMonthClick?: (e: React.EventHandler>) => void, diff --git a/types/react-dates/react-dates-tests.tsx b/types/react-dates/react-dates-tests.tsx index d8d6691b45..c775480a2f 100644 --- a/types/react-dates/react-dates-tests.tsx +++ b/types/react-dates/react-dates-tests.tsx @@ -47,6 +47,7 @@ class SingleDatePickerFullTest extends React.Component { keepOpenOnDateSelect={true} navNext="next" navPrev="prev" + hideKeyboardShortcutsPanel={true} withPortal={false} onDateChange={d => {}} focused={false} diff --git a/types/react-dropzone/index.d.ts b/types/react-dropzone/index.d.ts index c47b64d9bc..cd07fd3341 100644 --- a/types/react-dropzone/index.d.ts +++ b/types/react-dropzone/index.d.ts @@ -28,7 +28,7 @@ declare module "react-dropzone" { disablePreview?: boolean; // Enable/disable preview generation disableClick?: boolean; // Disallow clicking on the dropzone container to open file dialog - inputProps?: React.ChangeTargetHTMLProps; // Pass additional attributes to the tag + inputProps?: React.InputHTMLAttributes; // Pass additional attributes to the tag multiple?: boolean; // Allow dropping multiple files accept?: string; // Allow specific types of files. See https://github.com/okonet/attr-accept for more information name?: string; // name attribute for the input tag diff --git a/types/react-input-mask/index.d.ts b/types/react-input-mask/index.d.ts index 4396198fde..a830650812 100644 --- a/types/react-input-mask/index.d.ts +++ b/types/react-input-mask/index.d.ts @@ -7,7 +7,7 @@ import * as React from "react"; declare namespace reactInputMask { - interface ReactInputMaskProps extends React.HTMLAttributes { + interface ReactInputMaskProps extends React.InputHTMLAttributes { /** * Mask string. Format characters are: * * `9`: `0-9` diff --git a/types/react-loadable/index.d.ts b/types/react-loadable/index.d.ts index 424372a068..b9ea35c5b0 100644 --- a/types/react-loadable/index.d.ts +++ b/types/react-loadable/index.d.ts @@ -67,7 +67,7 @@ export interface OptionsWithRender extends Common * }); * ``` */ - render(loaded: Exports, props: Props): React.ReactNode; + render?(loaded: Exports, props: Props): React.ReactNode; } export interface OptionsWithMap extends CommonOptions { diff --git a/types/react-native-collapsible/Accordion.d.ts b/types/react-native-collapsible/Accordion.d.ts new file mode 100644 index 0000000000..2a2fc04a9f --- /dev/null +++ b/types/react-native-collapsible/Accordion.d.ts @@ -0,0 +1,64 @@ +import * as React from 'react'; +import { EasingMode } from './index'; + +export interface AccordionProps { + /** + * An array of sections passed to the render methods + */ + sections: string[]; + + /** + * A function that should return a renderable representing the header + */ + renderHeader(content: any, index: number, isActive: boolean): JSX.Element; + + /** + * A function that should return a renderable representing the content + */ + renderContent(content: any, index: number, isActive: boolean): JSX.Element; + + /** + * An optional function that is called when currently active section is changed, index === false when collapsed + */ + onChange?(index: number): void; + + /** + * Set which index in the sections array is initially open. Defaults to none. + */ + initiallyActiveSection?: number; + + /** + * Control which index in the sections array is currently open. Defaults to none. If false, closes all sections. + */ + activeSection?: boolean | number; + + /** + * The color of the underlay that will show through when tapping on headers. + * + * @default black + */ + underlayColor?: string; + + /** + * Alignment of the content when transitioning, can be top, center or bottom + * + * @default top + */ + align?: 'top' | 'center' | 'bottom'; + + /** + * Duration of transition in milliseconds + * + * @default 300 + */ + duration?: number; + + /** + * Function or function name from Easing (or tween-functions if < RN 0.8). Collapsible will try to combine Easing functions for you if you name them like tween-functions. + * + * @default easeOutCubic + */ + easing?: EasingMode | any; +} + +export default class Accordion extends React.Component {} diff --git a/types/react-native-collapsible/index.d.ts b/types/react-native-collapsible/index.d.ts new file mode 100644 index 0000000000..bdd8dd9ea5 --- /dev/null +++ b/types/react-native-collapsible/index.d.ts @@ -0,0 +1,79 @@ +// Type definitions for react-native-collapsible 0.8 +// Project: https://github.com/oblador/react-native-collapsible +// Definitions by: Kyle Roach +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import * as React from 'react'; + +export type EasingMode = +'linear' | +'easeInQuad' | +'easeOutQuad' | +'easeInOutQuad' | +'easeInCubic' | +'easeOutCubic' | +'easeInOutCubic' | +'easeInQuart' | +'easeOutQuart' | +'easeInOutQuart' | +'easeInQuint' | +'easeOutQuint' | +'easeInOutQuint' | +'easeInSine' | +'easeOutSine' | +'easeInOutSine' | +'easeInExpo' | +'easeOutExpo' | +'easeInOutExpo' | +'easeInCirc' | +'easeOutCirc' | +'easeInOutCirc' | +'easeInElastic' | +'easeOutElastic' | +'easeInOutElastic' | +'easeInBack' | +'easeOutBack' | +'easeInOutBack' | +'easeInBounce' | +'easeOutBounce' | +'easeInOutBounce'; + +export interface CollapsibleProps { + /** + * Alignment of the content when transitioning, can be top, center or bottom + * + * @default top + */ + align?: 'top' | 'center' | 'bottom'; + + /** + * Whether to show the child components or not + * + * @default true + */ + collapsed?: boolean; + + /** + * Which height should the component collapse to + * + * @default 0 + */ + collapsedHeight?: number; + + /** + * Duration of transition in milliseconds + * + * @default 300 + */ + duration?: number; + + /** + * Function or function name from Easing (or tween-functions if < RN 0.8). Collapsible will try to combine Easing functions for you if you name them like tween-functions + * + * @default easeOutCubic + */ + easing?: EasingMode | any; +} + +export default class Collapsible extends React.Component {} diff --git a/types/react-native-collapsible/react-native-collapsible-tests.tsx b/types/react-native-collapsible/react-native-collapsible-tests.tsx new file mode 100644 index 0000000000..1107084f3d --- /dev/null +++ b/types/react-native-collapsible/react-native-collapsible-tests.tsx @@ -0,0 +1,38 @@ +import * as React from 'react'; +import { View } from 'react-native'; +import Collapsible from 'react-native-collapsible'; +import Accordion from 'react-native-collapsible/Accordion'; + +class CollapsibleTest extends React.Component { + render() { + return ( + + + + ); + } +} + +class AccordianTest extends React.Component { + _renderHeader() { + return ( + + ); + } + + _renderContent() { + return ( + + ); + } + + render() { + return ( + + ); + } +} diff --git a/types/react-native-collapsible/tsconfig.json b/types/react-native-collapsible/tsconfig.json new file mode 100644 index 0000000000..1e5b287fb1 --- /dev/null +++ b/types/react-native-collapsible/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "jsx": "react" + }, + "files": [ + "index.d.ts", + "Accordion.d.ts", + "react-native-collapsible-tests.tsx" + ] +} diff --git a/types/react-native-collapsible/tslint.json b/types/react-native-collapsible/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/react-native-collapsible/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/react-native-communications/index.d.ts b/types/react-native-communications/index.d.ts new file mode 100644 index 0000000000..d50ce419a0 --- /dev/null +++ b/types/react-native-communications/index.d.ts @@ -0,0 +1,11 @@ +// Type definitions for react-native-communications 2.2 +// Project: https://github.com/anarchicknight/react-native-communications +// Definitions by: HuHuanming +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +export function phonecall(phoneNumber: string, isPrompt: boolean): void; +export function email(to: string, cc: string, bcc: string, subject: string, body: string): void; +export function text(phoneNumber?: string | null, body?: string | null): void; +export function textWithoutEncoding(phoneNumber?: string | null, body?: string | null): void; +export function web(address?: string | null): void; diff --git a/types/react-native-communications/react-native-communications-tests.ts b/types/react-native-communications/react-native-communications-tests.ts new file mode 100644 index 0000000000..754f8a5a0c --- /dev/null +++ b/types/react-native-communications/react-native-communications-tests.ts @@ -0,0 +1,16 @@ +import { phonecall, email, text, textWithoutEncoding, web } from 'react-native-communications'; + +phonecall('123456789', true); + +email('a@example.com', 'a@example.com', 'a@example.com', 'subject', 'body'); + +text(); +text('123456789'); +text('123456789', 'body'); + +textWithoutEncoding(); +textWithoutEncoding('123456789'); +textWithoutEncoding('123456789', 'body'); + +web(); +web('https://example.com'); diff --git a/types/react-native-communications/tsconfig.json b/types/react-native-communications/tsconfig.json new file mode 100644 index 0000000000..86667ea7d7 --- /dev/null +++ b/types/react-native-communications/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true, + "jsx": "react" + }, + "files": [ + "index.d.ts", + "react-native-communications-tests.ts" + ] +} diff --git a/types/react-native-communications/tslint.json b/types/react-native-communications/tslint.json new file mode 100644 index 0000000000..d88586e5bd --- /dev/null +++ b/types/react-native-communications/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} diff --git a/types/react-native-elements/README.md b/types/react-native-elements/README.md new file mode 100644 index 0000000000..64f9f69538 --- /dev/null +++ b/types/react-native-elements/README.md @@ -0,0 +1,27 @@ +# [React Native Elements](https://github.com/react-native-training/react-native-elements) + +### Component Checklist +List will update as typings are added + +- [x] Buttons +- [x] Badge +- [ ] Social Icons / Social Icon Buttons +- [ ] Icons +- [ ] Side Menu +- [ ] Form Elements +- [ ] Search Bar +- [ ] ButtonGroup +- [ ] Checkboxes +- [ ] List Element +- [ ] Badge +- [ ] Tab Bar Component +- [x] HTML style headings +- [ ] Card component +- [ ] Pricing Component +- [ ] Grid Component +- [ ] Slider Component +- [ ] Tile Component +- [ ] Avatar Component +- [ ] Rating Component +- [ ] SwipeDeck Component +- [ ] Header Component diff --git a/types/react-native-elements/index.d.ts b/types/react-native-elements/index.d.ts new file mode 100644 index 0000000000..a3c1f693ef --- /dev/null +++ b/types/react-native-elements/index.d.ts @@ -0,0 +1,253 @@ +// Type definitions for react-native-elements 0.13 +// Project: https://github.com/react-native-training/react-native-elements#readme +// Definitions by: Kyle Roach +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import * as React from 'react'; +import { ViewStyle, TextStyle } from 'react-native'; + +export interface TextProps { + /** + * font size 40 + */ + h1?: boolean; + + /** + * font size 34 + */ + h2?: boolean; + + /** + * font size 28 + */ + h3?: boolean; + + /** + * font size 22 + */ + h4?: boolean; + + /** + * font family name + */ + fontFamily?: string; + + /** + * Additional styling for Text + */ + style?: TextStyle; +} + +/** + * HTML Style Headings + * + * @desc https://react-native-training.github.io/react-native-elements/API/HTML_style_headings/ + */ +export class Text extends React.Component {} + +export interface ButtonIcon { + name?: string; + color?: string; + size?: number; + type?: 'material' | 'material-community' | 'simple-line-icon' | 'zocial' | 'font-awesome' | 'octicon' | 'ionicon' | 'foundation' | 'evilicon' | 'entypo'; + buttonStyle?: TextStyle; +} + +export interface ButtonProperties { + /** + * Specify other component such as TouchableOpacity or other + * + * @default TouchableHighlight (iOS), TouchableNativeFeedback (android) + */ + Component?: JSX.Element; + + /** + * Additional styling for button component + * + * @default null + */ + buttonStyle?: ViewStyle; + + /** + * Button title + */ + title: string; + + /** + * Makes button large + * + * @default false + */ + large?: boolean; + + /** + * Specify different font family + * + * @default System font (iOS), Sans Serif (android) + */ + fontFamily?: string; + + /** + * Specify font weight for title + * + * @default null + */ + fontWeight?: string; + + /** + * Moves icon to right of title + * + * @default false + */ + iconRight?: boolean; + + /** + * onPress method + */ + onPress(): void; + + /** + * onLongPress method + */ + onLongPress?(): void; + + /** + * Icon configuration + */ + icon?: ButtonIcon; + + /** + * Specify other icon component instead of default. The component will have all values from the icon prop + * + * @default MaterialIcon + * @see https://github.com/oblador/react-native-vector-icons#icon-component + */ + iconComponent?: JSX.Element; + + /** + * Background color of button + * + * @default #397af8 + */ + backgroundColor?: string; + + /** + * Adds border radius to button + * (Note: if you set this, don't forget to also set borderRadius to containerViewStyle prop, otherwise unexpected behaviour might occur) + * + * @default 0 + */ + borderRadius?: number; + + /** + * Font color + * + * @default #fff + */ + color?: string; + + /** + * Text styling + * + * @default null + */ + textStyle?: TextStyle; + + /** + * Font size + * + * @default 18 + */ + fontSize?: number; + + /** + * Underlay color for button press + * + * @default transparent + */ + underlayColor?: string; + + /** + * Flag to add raised button styling + * + * @default false + */ + raised?: boolean; + + /** + * Indicates button is disabled + * + * @default false + */ + disabled?: boolean; + + /** + * Disabled button styling + * + * @default null + */ + disabledStyle?: ViewStyle; + + /** + * Styling for Component container + * + * @default null + */ + containerViewStyle?: ViewStyle; +} + +/** + * Button component + * + * @see https://react-native-training.github.io/react-native-elements/API/buttons/ + */ +export class Button extends React.Component {} + +export interface BadgeProperties { + /** + * Text value to be displayed by badge + * + * @default null + */ + value?: string | number; + + /** + * Style for the outer badge component + */ + containerStyle?: ViewStyle; + + /** + * Style for the outer-most badge component + */ + wrapperStyle?: ViewStyle; + + /** + * Style for the text in the badge + */ + textStyle?: TextStyle; + + /** + * Override the default badge contents, mutually exclusive with 'value' property + */ + children?: JSX.Element; + + /** + * Custom component to replace the badge outer component + * + * @default View, if onPress then TouchableOpacity + */ + component?: React.ComponentClass; + + /** + * Function called when pressed on the badge + */ + onPress?(): void; +} + +/** + * Badge component + * + * @see https://react-native-training.github.io/react-native-elements/API/badge/ + */ +export class Badge extends React.Component {} diff --git a/types/react-native-elements/react-native-elements-tests.tsx b/types/react-native-elements/react-native-elements-tests.tsx new file mode 100644 index 0000000000..d2042b4ff1 --- /dev/null +++ b/types/react-native-elements/react-native-elements-tests.tsx @@ -0,0 +1,78 @@ +import * as React from 'react'; +import { View, StyleSheet, TouchableNativeFeedback } from 'react-native'; +import { Button, Text, Badge } from 'react-native-elements'; + +class TextTest extends React.Component { + render() { + return ( + + Heading 1 + Heading 2 + Heading 3 + Heading 4 + + ); + } +} + +class BadgeTest extends React.Component { + render() { + return ( + + + + + User 1 + + + console.log('pressed')} value="5" /> + + + + ); + } +} + +class ButtonTest extends React.Component { + handleButtonPress() { + console.log('I got pressed'); + } + + render() { + return ( + + + + + + ; + } +} diff --git a/types/react-swipe/tsconfig.json b/types/react-swipe/tsconfig.json new file mode 100644 index 0000000000..304ae7e451 --- /dev/null +++ b/types/react-swipe/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "jsx": "react", + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [ + ], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "react-swipe-tests.tsx" + ] +} diff --git a/types/react-swipe/tslint.json b/types/react-swipe/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/react-swipe/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/react-tag-input/index.d.ts b/types/react-tag-input/index.d.ts new file mode 100644 index 0000000000..626b44acac --- /dev/null +++ b/types/react-tag-input/index.d.ts @@ -0,0 +1,20 @@ +// Type definitions for React-Tags (react-tag-input) 4.7 +// Project: https://github.com/prakhar1989/react-tags +// Definitions by: Ogglas +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import * as React from "react"; + +export interface ReactTagsProps { + tags?: Array<{id: number, text: string }>; + suggestions?: string[]; + handleDelete: ((i: number) => void); + handleAddition: ((tag: string) => void); + handleDrag?: ((tag: { id: number; text: string; }, currPos: number, newPos: number) => void); + placeholder?: string; +} + +export class WithContext extends React.Component { } + +export default WithContext; diff --git a/types/react-tag-input/react-tag-input-tests.tsx b/types/react-tag-input/react-tag-input-tests.tsx new file mode 100644 index 0000000000..a78bced3b9 --- /dev/null +++ b/types/react-tag-input/react-tag-input-tests.tsx @@ -0,0 +1,16 @@ +import * as React from "react"; +import * as ReactDOM from "react-dom"; +import { WithContext as ReactTags } from "react-tag-input"; + +let tags = Array({ id: 0, text: "test" }, { id: 1, text: "testing" }); + +let suggestions = Array("test1", "test2"); + +ReactDOM.render( + console.log("Delete: " + i)} + handleAddition={(tag: string) => console.log("Add: " + tag)} + handleDrag={(tag: { id: number; text: string; }, currPos: number, newPos: number) => console.log("Drag: " + tag.text)} />, + document.getElementById("app") +); diff --git a/types/react-tag-input/tsconfig.json b/types/react-tag-input/tsconfig.json new file mode 100644 index 0000000000..78318da79d --- /dev/null +++ b/types/react-tag-input/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": false, + "baseUrl": "../", + "jsx": "react", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "react-tag-input-tests.tsx" + ] +} \ No newline at end of file diff --git a/types/react-tag-input/tslint.json b/types/react-tag-input/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/react-tag-input/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/react-tooltip/index.d.ts b/types/react-tooltip/index.d.ts new file mode 100644 index 0000000000..c4c380f533 --- /dev/null +++ b/types/react-tooltip/index.d.ts @@ -0,0 +1,55 @@ +// Type definitions for react-tooltip 3.3 +// Project: https://github.com/wwayne/react-tooltip +// Definitions by: Deividas Bakanas +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +import * as React from "react"; + +declare class ReactTooltip extends React.Component { } + +declare namespace ReactTooltip { + interface Offset { + top?: number; + right?: number; + left?: number; + bottom?: number; + } + + type ElementEvents = keyof HTMLElementEventMap; + type WindowEvents = keyof WindowEventMap; + + type GetContentCallback = () => React.ReactNode; + type GetContent = GetContentCallback | [GetContentCallback, number]; + + interface Props { + id?: string; + place?: "top" | "right" | "bottom" | "left"; + type?: "success" | "warning" | "error" | "info" | "light"; + effect?: "float" | "solid"; + event?: ElementEvents; + eventOff?: ElementEvents; + globalEventOff?: WindowEvents; + isCapture?: boolean; + offset?: Offset; + multiline?: boolean; + className?: string; + html?: boolean; + delayHide?: number; + delayShow?: number; + insecure?: boolean; + border?: boolean; + getContent?: GetContent; + afterShow?(): void; + afterHide?(): void; + disable?: boolean; + scrollHide?: boolean; + resizeHide?: boolean; + wrapper?: "div" | "span"; + role?: string; + class?: string; + watchWindow?: boolean; + } +} + +export = ReactTooltip; diff --git a/types/react-tooltip/react-tooltip-tests.tsx b/types/react-tooltip/react-tooltip-tests.tsx new file mode 100644 index 0000000000..7fa5332f27 --- /dev/null +++ b/types/react-tooltip/react-tooltip-tests.tsx @@ -0,0 +1,79 @@ +import * as React from "react"; +import * as ReactTooltip from "react-tooltip"; + +export class ReactTooltipTest extends React.PureComponent { + render() { + const getContent: ReactTooltip.GetContent = [() => Math.floor(Math.random() * 100), 30]; + + return
+ d(`・∀・)b + + Show happy face + + + இдஇ + { console.log("afterHide"); }}> + Show sad face + + + σ`∀´)σ + (〃∀〃) + { console.log("afterShow"); }}> +

This is a global react component tooltip

+

You can put every thing here

+
    +
  • Word
  • +
  • Chart
  • +
  • Else
  • +
+
+ + ( •̀д•́) + + + ( •̀д•́) + + + (・ω´・ )́) + + + =( •̀д•́) + + + =( •̀д•́) + new Date().toISOString(), 1000]} /> + + d(`・∀・)b + + + Show happy face + +
+ + Show happy face + +
+
; + } +} diff --git a/types/react-tooltip/tsconfig.json b/types/react-tooltip/tsconfig.json new file mode 100644 index 0000000000..d52b7c28ab --- /dev/null +++ b/types/react-tooltip/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6", + "dom", + "dom.iterable" + ], + "jsx": "react", + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "react-tooltip-tests.tsx" + ] +} diff --git a/types/react-tooltip/tslint.json b/types/react-tooltip/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/react-tooltip/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/react-user-tour/react-user-tour-tests.tsx b/types/react-user-tour/react-user-tour-tests.tsx index c961ee5bbd..56e4e2c2ce 100644 --- a/types/react-user-tour/react-user-tour-tests.tsx +++ b/types/react-user-tour/react-user-tour-tests.tsx @@ -44,7 +44,7 @@ class TestApp extends React.Component<{}, State> { ]} />; - return
+ return
{Tour}
; } diff --git a/types/react/index.d.ts b/types/react/index.d.ts index 6ce2919510..537b6eefde 100644 --- a/types/react/index.d.ts +++ b/types/react/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for React v15.0 +// Type definitions for React 15.0 // Project: http://facebook.github.io/react/ // Definitions by: Asana // AssureSign @@ -10,6 +10,8 @@ // Eric Anderson // Albert Kurniawan // Tanguy Krotoff +// Dovydas Navickas +// Stéphane Goetz // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.3 @@ -25,20 +27,22 @@ type NativeTransitionEvent = TransitionEvent; type NativeUIEvent = UIEvent; type NativeWheelEvent = WheelEvent; +// tslint:disable-next-line:export-just-namespace export = React; export as namespace React; declare namespace React { - // // React Elements // ---------------------------------------------------------------------- type ReactType = string | ComponentType; - type ComponentType

= ComponentClass

| StatelessComponent

; + type ComponentType

= ComponentClass

| StatelessComponent

; type Key = string | number; type Ref = string | ((instance: T | null) => any); + + // tslint:disable-next-line:interface-over-type-literal type ComponentState = {}; interface Attributes { @@ -66,47 +70,51 @@ declare namespace React { type ClassicElement

= CElement>; - interface DOMElement

, T extends Element> extends ReactElement

{ + // string fallback for custom web-components + interface DOMElement

| SVGAttributes, T extends Element> extends ReactElement

{ type: string; ref: Ref; } - interface ReactHTMLElement extends DOMElement, T> { + // ReactHTML for ReactHTMLElement + // tslint:disable-next-line:no-empty-interface + interface ReactHTMLElement extends DetailedReactHTMLElement, T> { } + + interface DetailedReactHTMLElement

, T extends HTMLElement> extends DOMElement { + type: keyof ReactHTML; } + // ReactSVG for ReactSVGElement interface ReactSVGElement extends DOMElement, SVGElement> { + type: keyof ReactSVG; } // // Factories // ---------------------------------------------------------------------- - interface Factory

{ - (props?: Attributes & P, ...children: ReactNode[]): ReactElement

; - } + type Factory

= (props?: Attributes & P, ...children: ReactNode[]) => ReactElement

; - interface SFCFactory

{ - (props?: Attributes & P, ...children: ReactNode[]): SFCElement

; - } + type SFCFactory

= (props?: Attributes & P, ...children: ReactNode[]) => SFCElement

; - interface ComponentFactory> { - (props?: ClassAttributes & P, ...children: ReactNode[]): CElement; - } + type ComponentFactory> = + (props?: ClassAttributes & P, ...children: ReactNode[]) => CElement; type CFactory> = ComponentFactory; type ClassicFactory

= CFactory>; - interface DOMFactory

, T extends Element> { - (props?: ClassAttributes & P | null, ...children: ReactNode[]): DOMElement; - } + type DOMFactory

, T extends Element> = + (props?: ClassAttributes & P | null, ...children: ReactNode[]) => DOMElement; - interface HTMLFactory extends DOMFactory, T> { - } + // tslint:disable-next-line:no-empty-interface + interface HTMLFactory extends DetailedHTMLFactory, T> {} - interface ChangeTargetHTMLFactory extends DOMFactory, T> { + interface DetailedHTMLFactory

, T extends HTMLElement> extends DOMFactory { + (props?: ClassAttributes & P | null, ...children: ReactNode[]): DetailedReactHTMLElement; } interface SVGFactory extends DOMFactory, SVGElement> { + (props?: ClassAttributes & SVGAttributes | null, ...children: ReactNode[]): ReactSVGElement; } // @@ -127,8 +135,15 @@ declare namespace React { function createClass(spec: ComponentSpec): ClassicComponentClass

; + // DOM Elements + function createFactory( + type: keyof ReactHTML): HTMLFactory; + function createFactory( + type: keyof ReactSVG): SVGFactory; function createFactory

, T extends Element>( type: string): DOMFactory; + + // Custom components function createFactory

(type: SFC

): SFCFactory

; function createFactory

( type: ClassType, ClassicComponentClass

>): CFactory>; @@ -136,10 +151,11 @@ declare namespace React { type: ClassType): CFactory; function createFactory

(type: ComponentClass

): Factory

; + // DOM Elements function createElement

, T extends HTMLElement>( type: keyof ReactHTML, props?: ClassAttributes & P, - ...children: ReactNode[]): ReactHTMLElement; + ...children: ReactNode[]): DetailedReactHTMLElement; function createElement

, T extends SVGElement>( type: keyof ReactSVG, props?: ClassAttributes & P, @@ -148,6 +164,8 @@ declare namespace React { type: string, props?: ClassAttributes & P, ...children: ReactNode[]): DOMElement; + + // Custom components function createElement

( type: SFC

, props?: Attributes & P, @@ -165,10 +183,29 @@ declare namespace React { props?: Attributes & P, ...children: ReactNode[]): ReactElement

; + // DOM Elements + // ReactHTMLElement + function cloneElement

, T extends HTMLElement>( + element: DetailedReactHTMLElement, + props?: P, + ...children: ReactNode[]): DetailedReactHTMLElement; + // ReactHTMLElement, less specific + function cloneElement

, T extends HTMLElement>( + element: ReactHTMLElement, + props?: P, + ...children: ReactNode[]): ReactHTMLElement; + // SVGElement + function cloneElement

, T extends SVGElement>( + element: ReactSVGElement, + props?: P, + ...children: ReactNode[]): ReactSVGElement; + // DOM Element (has to be the last, because type checking stops at first overload that fits) function cloneElement

, T extends Element>( element: DOMElement, - props?: ClassAttributes & P, + props?: DOMAttributes & P, ...children: ReactNode[]): DOMElement; + + // Custom components function cloneElement

( element: SFCElement

, props?: Q, // should be Q & Attributes, but then Q is inferred as {} @@ -184,10 +221,10 @@ declare namespace React { function isValidElement

(object: {}): object is ReactElement

; - var DOM: ReactDOM; - var PropTypes: ReactPropTypes; - var Children: ReactChildren; - var version: string; + const DOM: ReactDOM; + const PropTypes: ReactPropTypes; + const Children: ReactChildren; + const version: string; // // Component API @@ -196,11 +233,17 @@ declare namespace React { type ReactInstance = Component | Element; // Base component for plain JS classes + // tslint:disable-next-line:no-empty-interface interface Component

extends ComponentLifecycle { } class Component { constructor(props?: P, context?: any); + + // Disabling unified-signatures to have separate overloads. It's easier to understand this way. + // tslint:disable:unified-signatures setState(f: (prevState: S, props: P) => Pick, callback?: () => any): void; setState(state: Pick, callback?: () => any): void; + // tslint:enable:unified-signatures + forceUpdate(callBack?: () => any): void; render(): JSX.Element | null | false; @@ -281,7 +324,7 @@ declare namespace React { } interface Mixin extends ComponentLifecycle { - mixins?: Mixin[]; + mixins?: Array>; statics?: { [key: string]: any; }; @@ -344,6 +387,7 @@ declare namespace React { relatedTarget: EventTarget; } + // tslint:disable-next-line:no-empty-interface interface FormEvent extends SyntheticEvent { } @@ -433,9 +477,7 @@ declare namespace React { // Event Handler Types // ---------------------------------------------------------------------- - interface EventHandler> { - (event: E): void; - } + type EventHandler> = (event: E) => void; type ReactEventHandler = EventHandler>; @@ -477,11 +519,10 @@ declare namespace React { ref?: Ref; } - interface HTMLProps extends HTMLAttributes, ClassAttributes { + interface HTMLProps extends AllHTMLAttributes, ClassAttributes { } - interface ChangeTargetHTMLProps extends ChangeTargetHTMLAttributes, ClassAttributes { - } + type DetailedHTMLProps, T> = ClassAttributes & E; interface SVGProps extends SVGAttributes, ClassAttributes { } @@ -671,7 +712,6 @@ declare namespace React { // This interface is not complete. Only properties accepting // unitless numbers are listed here (see CSSProperty.js in React) interface CSSProperties { - /** * Aligns a flex container's lines within the flex container when there is extra space in the cross-axis, similar to how justify-content aligns individual items within the main-axis. */ @@ -688,7 +728,10 @@ declare namespace React { alignSelf?: CSSWideKeyword | "auto" | "flex-start" | "flex-end" | "center" | "baseline" | "stretch"; /** - * This property allows precise alignment of elements, such as graphics, that do not have a baseline-table or lack the desired baseline in their baseline-table. With the alignment-adjust property, the position of the baseline identified by the alignment-baseline can be explicitly determined. It also determines precisely the alignment point for each glyph within a textual element. + * This property allows precise alignment of elements, such as graphics, + * that do not have a baseline-table or lack the desired baseline in their baseline-table. + * With the alignment-adjust property, the position of the baseline identified by the alignment-baseline + * can be explicitly determined. It also determines precisely the alignment point for each glyph within a textual element. */ alignmentAdjust?: CSSWideKeyword | any; @@ -747,7 +790,9 @@ declare namespace React { /** * This property describes how the element's background images should blend with each other and the element's background color. - * The value is a list of blend modes that corresponds to each background image. Each element in the list will apply to the corresponding element of background-image. If a property doesn’t have enough comma-separated values to match the number of layers, the UA must calculate its used value by repeating the list of values until there are enough. + * The value is a list of blend modes that corresponds to each background image. Each element in the list will apply to the + * corresponding element of background-image. If a property doesn’t have enough comma-separated values to match the number of layers, + * the UA must calculate its used value by repeating the list of values until there are enough. */ backgroundBlendMode?: CSSWideKeyword | any; @@ -789,7 +834,8 @@ declare namespace React { behavior?: CSSWideKeyword | any; /** - * Shorthand property that defines the different properties of all four sides of an element's border in a single declaration. It can be used to set border-width, border-style and border-color, or a subset of these. + * Shorthand property that defines the different properties of all four sides of an element's border in a single declaration. + * It can be used to set border-width, border-style and border-color, or a subset of these. */ border?: CSSWideKeyword | any; @@ -820,7 +866,9 @@ declare namespace React { borderBottomStyle?: CSSWideKeyword | any; /** - * Sets the width of an element's bottom border. To set all four borders, use the border-width shorthand property which sets the values simultaneously for border-top-width, border-right-width, border-bottom-width, and border-left-width. + * Sets the width of an element's bottom border. To set all four borders, + * use the border-width shorthand property which sets the values simultaneously for border-top-width, + * border-right-width, border-bottom-width, and border-left-width. */ borderBottomWidth?: CSSWideKeyword | any; @@ -830,69 +878,90 @@ declare namespace React { borderCollapse?: CSSWideKeyword | any; /** - * The CSS border-color property sets the color of an element's four borders. This property can have from one to four values, made up of the elementary properties: + * The CSS border-color property sets the color of an element's four borders. + * This property can have from one to four values, made up of the elementary properties: * • border-top-color * • border-right-color * • border-bottom-color * • border-left-color The default color is the currentColor of each of these values. - * If you provide one value, it sets the color for the element. Two values set the horizontal and vertical values, respectively. Providing three values sets the top, vertical, and bottom values, in that order. Four values set all for sides: top, right, bottom, and left, in that order. + * If you provide one value, it sets the color for the element. Two values set the horizontal and vertical values, + * respectively. Providing three values sets the top, vertical, and bottom values, in that order. + * Four values set all for sides: top, right, bottom, and left, in that order. */ borderColor?: CSSWideKeyword | any; /** - * Specifies different corner clipping effects, such as scoop (inner curves), bevel (straight cuts) or notch (cut-off rectangles). Works along with border-radius to specify the size of each corner effect. + * Specifies different corner clipping effects, such as scoop (inner curves), bevel (straight cuts) or notch (cut-off rectangles). + * Works along with border-radius to specify the size of each corner effect. */ borderCornerShape?: CSSWideKeyword | any; /** - * The property border-image-source is used to set the image to be used instead of the border style. If this is set to none the border-style is used instead. + * The property border-image-source is used to set the image to be used instead of the border style. + * If this is set to none the border-style is used instead. */ borderImageSource?: CSSWideKeyword | any; /** - * The border-image-width CSS property defines the offset to use for dividing the border image in nine parts, the top-left corner, central top edge, top-right-corner, central right edge, bottom-right corner, central bottom edge, bottom-left corner, and central right edge. They represent inward distance from the top, right, bottom, and left edges. + * The border-image-width CSS property defines the offset to use for dividing the border image in nine parts, + * the top-left corner, central top edge, top-right-corner, central right edge, bottom-right corner, central bottom edge, + * bottom-left corner, and central right edge. They represent inward distance from the top, right, bottom, and left edges. */ borderImageWidth?: CSSWideKeyword | any; /** - * Shorthand property that defines the border-width, border-style and border-color of an element's left border in a single declaration. Note that you can use the corresponding longhand properties to set specific individual properties of the left border — border-left-width, border-left-style and border-left-color. + * Shorthand property that defines the border-width, border-style and border-color of an element's left border in a single declaration. + * Note that you can use the corresponding longhand properties to set specific individual properties of the left border — border-left-width, + * border-left-style and border-left-color. */ borderLeft?: CSSWideKeyword | any; /** - * The CSS border-left-color property sets the color of an element's left border. This page explains the border-left-color value, but often you will find it more convenient to fix the border's left color as part of a shorthand set, either border-left or border-color. + * The CSS border-left-color property sets the color of an element's left border. This page explains the border-left-color value, + * but often you will find it more convenient to fix the border's left color as part of a shorthand set, either border-left or border-color. * Colors can be defined several ways. For more information, see Usage. */ borderLeftColor?: CSSWideKeyword | any; /** - * Sets the style of an element's left border. To set all four borders, use the shorthand property, border-style. Otherwise, you can set the borders individually with border-top-style, border-right-style, border-bottom-style, border-left-style. + * Sets the style of an element's left border. To set all four borders, use the shorthand property, border-style. + * Otherwise, you can set the borders individually with border-top-style, border-right-style, border-bottom-style, border-left-style. */ borderLeftStyle?: CSSWideKeyword | any; /** - * Sets the width of an element's left border. To set all four borders, use the border-width shorthand property which sets the values simultaneously for border-top-width, border-right-width, border-bottom-width, and border-left-width. + * Sets the width of an element's left border. To set all four borders, + * use the border-width shorthand property which sets the values simultaneously for border-top-width, + * border-right-width, border-bottom-width, and border-left-width. */ borderLeftWidth?: CSSWideKeyword | any; /** - * Shorthand property that defines the border-width, border-style and border-color of an element's right border in a single declaration. Note that you can use the corresponding longhand properties to set specific individual properties of the right border — border-right-width, border-right-style and border-right-color. + * Shorthand property that defines the border-width, border-style and border-color of an element's right border + * in a single declaration. Note that you can use the corresponding longhand properties to set specific + * individual properties of the right border — border-right-width, border-right-style and border-right-color. */ borderRight?: CSSWideKeyword | any; /** - * Sets the color of an element's right border. This page explains the border-right-color value, but often you will find it more convenient to fix the border's right color as part of a shorthand set, either border-right or border-color. + * Sets the color of an element's right border. This page explains the border-right-color value, + * but often you will find it more convenient to fix the border's right color as part of a shorthand set, + * either border-right or border-color. * Colors can be defined several ways. For more information, see Usage. */ borderRightColor?: CSSWideKeyword | any; /** - * Sets the style of an element's right border. To set all four borders, use the shorthand property, border-style. Otherwise, you can set the borders individually with border-top-style, border-right-style, border-bottom-style, border-left-style. + * Sets the style of an element's right border. To set all four borders, use the shorthand property, + * border-style. Otherwise, you can set the borders individually with border-top-style, border-right-style, + * border-bottom-style, border-left-style. */ borderRightStyle?: CSSWideKeyword | any; /** - * Sets the width of an element's right border. To set all four borders, use the border-width shorthand property which sets the values simultaneously for border-top-width, border-right-width, border-bottom-width, and border-left-width. + * Sets the width of an element's right border. To set all four borders, + * use the border-width shorthand property which sets the values simultaneously for border-top-width, + * border-right-width, border-bottom-width, and border-left-width. */ borderRightWidth?: CSSWideKeyword | any; @@ -902,17 +971,24 @@ declare namespace React { borderSpacing?: CSSWideKeyword | any; /** - * Sets the style of an element's four borders. This property can have from one to four values. With only one value, the value will be applied to all four borders; otherwise, this works as a shorthand property for each of border-top-style, border-right-style, border-bottom-style, border-left-style, where each border style may be assigned a separate value. + * Sets the style of an element's four borders. This property can have from one to four values. + * With only one value, the value will be applied to all four borders; + * otherwise, this works as a shorthand property for each of border-top-style, border-right-style, + * border-bottom-style, border-left-style, where each border style may be assigned a separate value. */ borderStyle?: CSSWideKeyword | any; /** - * Shorthand property that defines the border-width, border-style and border-color of an element's top border in a single declaration. Note that you can use the corresponding longhand properties to set specific individual properties of the top border — border-top-width, border-top-style and border-top-color. + * Shorthand property that defines the border-width, border-style and border-color of an element's top border + * in a single declaration. Note that you can use the corresponding longhand properties to set specific + * individual properties of the top border — border-top-width, border-top-style and border-top-color. */ borderTop?: CSSWideKeyword | any; /** - * Sets the color of an element's top border. This page explains the border-top-color value, but often you will find it more convenient to fix the border's top color as part of a shorthand set, either border-top or border-color. + * Sets the color of an element's top border. This page explains the border-top-color value, + * but often you will find it more convenient to fix the border's top color as part of a shorthand set, + * either border-top or border-color. * Colors can be defined several ways. For more information, see Usage. */ borderTopColor?: CSSWideKeyword | any; @@ -928,22 +1004,30 @@ declare namespace React { borderTopRightRadius?: CSSWideKeyword | any; /** - * Sets the style of an element's top border. To set all four borders, use the shorthand property, border-style. Otherwise, you can set the borders individually with border-top-style, border-right-style, border-bottom-style, border-left-style. + * Sets the style of an element's top border. To set all four borders, use the shorthand property, border-style. + * Otherwise, you can set the borders individually with border-top-style, border-right-style, border-bottom-style, border-left-style. */ borderTopStyle?: CSSWideKeyword | any; /** - * Sets the width of an element's top border. To set all four borders, use the border-width shorthand property which sets the values simultaneously for border-top-width, border-right-width, border-bottom-width, and border-left-width. + * Sets the width of an element's top border. To set all four borders, + * use the border-width shorthand property which sets the values simultaneously for border-top-width, + * border-right-width, border-bottom-width, and border-left-width. */ borderTopWidth?: CSSWideKeyword | any; /** - * Sets the width of an element's four borders. This property can have from one to four values. This is a shorthand property for setting values simultaneously for border-top-width, border-right-width, border-bottom-width, and border-left-width. + * Sets the width of an element's four borders. This property can have from one to four values. + * This is a shorthand property for setting values simultaneously for border-top-width, + * border-right-width, border-bottom-width, and border-left-width. */ borderWidth?: CSSWideKeyword | any; /** - * This property specifies how far an absolutely positioned box's bottom margin edge is offset above the bottom edge of the box's containing block. For relatively positioned boxes, the offset is with respect to the bottom edges of the box itself (i.e., the box is given a position in the normal flow, then offset from that position according to these properties). + * This property specifies how far an absolutely positioned box's bottom margin edge + * is offset above the bottom edge of the box's containing block. For relatively positioned boxes, + * the offset is with respect to the bottom edges of the box itself + * (i.e., the box is given a position in the normal flow, then offset from that position according to these properties). */ bottom?: CSSWideKeyword | any; @@ -953,7 +1037,9 @@ declare namespace React { boxAlign?: CSSWideKeyword | any; /** - * Breaks a box into fragments creating new borders, padding and repeating backgrounds or lets it stay as a continuous box on a page break, column break, or, for inline elements, at a line break. + * Breaks a box into fragments creating new borders, + * padding and repeating backgrounds or lets it stay as a continuous box on a page break, + * column break, or, for inline elements, at a line break. */ boxDecorationBreak?: CSSWideKeyword | any; @@ -976,7 +1062,8 @@ declare namespace React { /** * Do not use. This property has been replaced by flex-order. - * Specifies the ordinal group that a child element of the object belongs to. This ordinal value identifies the display order (along the axis defined by the box-orient property) for the group. + * Specifies the ordinal group that a child element of the object belongs to. + * This ordinal value identifies the display order (along the axis defined by the box-orient property) for the group. */ boxOrdinalGroup?: CSSWideKeyword | any; @@ -997,7 +1084,11 @@ declare namespace React { boxShadow?: CSSWideKeyword | any; /** - * The CSS break-after property allows you to force a break on multi-column layouts. More specifically, it allows you to force a break after an element. It allows you to determine if a break should occur, and what type of break it should be. The break-after CSS property describes how the page, column or region break behaves after the generated box. If there is no generated box, the property is ignored. + * The CSS break-after property allows you to force a break on multi-column layouts. + * More specifically, it allows you to force a break after an element. + * It allows you to determine if a break should occur, and what type of break it should be. + * The break-after CSS property describes how the page, column or region break behaves after the generated box. + * If there is no generated box, the property is ignored. */ breakAfter?: CSSWideKeyword | any; @@ -1012,23 +1103,28 @@ declare namespace React { breakInside?: CSSWideKeyword | any; /** - * The clear CSS property specifies if an element can be positioned next to or must be positioned below the floating elements that precede it in the markup. + * The clear CSS property specifies if an element can be positioned next to + * or must be positioned below the floating elements that precede it in the markup. */ clear?: CSSWideKeyword | any; /** * Deprecated; see clip-path. - * Lets you specify the dimensions of an absolutely positioned element that should be visible, and the element is clipped into this shape, and displayed. + * Lets you specify the dimensions of an absolutely positioned element that should be visible, + * and the element is clipped into this shape, and displayed. */ clip?: CSSWideKeyword | any; /** - * Clipping crops an graphic, so that only a portion of the graphic is rendered, or filled. This clip-rule property, when used with the clip-path property, defines which clip rule, or algorithm, to use when filling the different parts of a graphics. + * Clipping crops an graphic, so that only a portion of the graphic is rendered, or filled. + * This clip-rule property, when used with the clip-path property, defines which clip rule, or algorithm, + * to use when filling the different parts of a graphics. */ clipRule?: CSSWideKeyword | any; /** - * The color property sets the color of an element's foreground content (usually text), accepting any standard CSS color from keywords and hex values to RGB(a) and HSL(a). + * The color property sets the color of an element's foreground content (usually text), + * accepting any standard CSS color from keywords and hex values to RGB(a) and HSL(a). */ color?: CSSWideKeyword | any; @@ -1064,7 +1160,8 @@ declare namespace React { columnRuleWidth?: CSSWideKeyword | any; /** - * The column-span CSS property makes it possible for an element to span across all columns when its value is set to all. An element that spans more than one column is called a spanning element. + * The column-span CSS property makes it possible for an element to span across all columns when its value is set to all. + * An element that spans more than one column is called a spanning element. */ columnSpan?: CSSWideKeyword | any; @@ -1079,22 +1176,31 @@ declare namespace React { columns?: CSSWideKeyword | any; /** - * The counter-increment property accepts one or more names of counters (identifiers), each one optionally followed by an integer which specifies the value by which the counter should be incremented (e.g. if the value is 2, the counter increases by 2 each time it is invoked). + * The counter-increment property accepts one or more names of counters (identifiers), + * each one optionally followed by an integer which specifies the value by which the counter should be incremented + * (e.g. if the value is 2, the counter increases by 2 each time it is invoked). */ counterIncrement?: CSSWideKeyword | any; /** - * The counter-reset property contains a list of one or more names of counters, each one optionally followed by an integer (otherwise, the integer defaults to 0.) Each time the given element is invoked, the counters specified by the property are set to the given integer. + * The counter-reset property contains a list of one or more names of counters, + * each one optionally followed by an integer (otherwise, the integer defaults to 0.). + * Each time the given element is invoked, the counters specified by the property are set to the given integer. */ counterReset?: CSSWideKeyword | any; /** - * The cue property specifies sound files (known as an "auditory icon") to be played by speech media agents before and after presenting an element's content; if only one file is specified, it is played both before and after. The volume at which the file(s) should be played, relative to the volume of the main element, may also be specified. The icon files may also be set separately with the cue-before and cue-after properties. + * The cue property specifies sound files (known as an "auditory icon") to be played by speech media agents + * before and after presenting an element's content; if only one file is specified, it is played both before and after. + * The volume at which the file(s) should be played, relative to the volume of the main element, may also be specified. + * The icon files may also be set separately with the cue-before and cue-after properties. */ cue?: CSSWideKeyword | any; /** - * The cue-after property specifies a sound file (known as an "auditory icon") to be played by speech media agents after presenting an element's content; the volume at which the file should be played may also be specified. The shorthand property cue sets cue sounds for both before and after the element is presented. + * The cue-after property specifies a sound file (known as an "auditory icon") to be played by speech media agents + * after presenting an element's content; the volume at which the file should be played may also be specified. + * The shorthand property cue sets cue sounds for both before and after the element is presented. */ cueAfter?: CSSWideKeyword | any; @@ -1114,7 +1220,11 @@ declare namespace React { display?: CSSWideKeyword | any; /** - * The ‘fill’ property paints the interior of the given graphical element. The area to be painted consists of any areas inside the outline of the shape. To determine the inside of the shape, all subpaths are considered, and the interior is determined according to the rules associated with the current value of the ‘fill-rule’ property. The zero-width geometric outline of a shape is included in the area to be painted. + * The ‘fill’ property paints the interior of the given graphical element. + * The area to be painted consists of any areas inside the outline of the shape. + * To determine the inside of the shape, all subpaths are considered, + * and the interior is determined according to the rules associated with the current value of the ‘fill-rule’ property. + * The zero-width geometric outline of a shape is included in the area to be painted. */ fill?: CSSWideKeyword | any; @@ -1125,7 +1235,10 @@ declare namespace React { fillOpacity?: CSSWideKeyword | number; /** - * The ‘fill-rule’ property indicates the algorithm which is to be used to determine what parts of the canvas are included inside the shape. For a simple, non-intersecting path, it is intuitively clear what region lies "inside"; however, for a more complex path, such as a path that intersects itself or where one subpath encloses another, the interpretation of "inside" is not so obvious. + * The ‘fill-rule’ property indicates the algorithm which is to be used to determine what parts of the canvas are included inside the shape. + * For a simple, non-intersecting path, it is intuitively clear what region lies "inside"; + * however, for a more complex path, such as a path that intersects itself or where one subpath encloses another, + * the interpretation of "inside" is not so obvious. * The ‘fill-rule’ property provides two options for how the inside of a shape is determined: */ fillRule?: CSSWideKeyword | any; @@ -1147,7 +1260,8 @@ declare namespace React { flexAlign?: CSSWideKeyword | any; /** - * The flex-basis CSS property describes the initial main size of the flex item before any free space is distributed according to the flex factors described in the flex property (flex-grow and flex-shrink). + * The flex-basis CSS property describes the initial main size of the flex item + * before any free space is distributed according to the flex factors described in the flex property (flex-grow and flex-shrink). */ flexBasis?: CSSWideKeyword | any; @@ -1191,13 +1305,17 @@ declare namespace React { flexShrink?: CSSWideKeyword | number; /** - * Specifies whether flex items are forced into a single line or can be wrapped onto multiple lines. If wrapping is allowed, this property also enables you to control the direction in which lines are stacked. + * Specifies whether flex items are forced into a single line or can be wrapped onto multiple lines. + * If wrapping is allowed, this property also enables you to control the direction in which lines are stacked. * See CSS flex-wrap property https://drafts.csswg.org/css-flexbox-1/#flex-wrap-property */ flexWrap?: CSSWideKeyword | "nowrap" | "wrap" | "wrap-reverse"; /** - * Elements which have the style float are floated horizontally. These elements can move as far to the left or right of the containing element. All elements after the floating element will flow around it, but elements before the floating element are not impacted. If several floating elements are placed after each other, they will float next to each other as long as there is room. + * Elements which have the style float are floated horizontally. + * These elements can move as far to the left or right of the containing element. + * All elements after the floating element will flow around it, but elements before the floating element are not impacted. + * If several floating elements are placed after each other, they will float next to each other as long as there is room. */ float?: CSSWideKeyword | any; @@ -1207,17 +1325,20 @@ declare namespace React { flowFrom?: CSSWideKeyword | any; /** - * The font property is shorthand that allows you to do one of two things: you can either set up six of the most mature font properties in one line, or you can set one of a choice of keywords to adopt a system font setting. + * The font property is shorthand that allows you to do one of two things: you can either set up six of the most mature font properties in one line, + * or you can set one of a choice of keywords to adopt a system font setting. */ font?: CSSWideKeyword | any; /** - * The font-family property allows one or more font family names and/or generic family names to be specified for usage on the selected element(s)' text. The browser then goes through the list; for each character in the selection it applies the first font family that has an available glyph for that character. + * The font-family property allows one or more font family names and/or generic family names to be specified for usage on the selected element(s)' text. + * The browser then goes through the list; for each character in the selection it applies the first font family that has an available glyph for that character. */ fontFamily?: CSSWideKeyword | any; /** - * The font-kerning property allows contextual adjustment of inter-glyph spacing, i.e. the spaces between the characters in text. This property controls metric kerning - that utilizes adjustment data contained in the font. Optical Kerning is not supported as yet. + * The font-kerning property allows contextual adjustment of inter-glyph spacing, i.e. the spaces between the characters in text. + * This property controls metric kerning - that utilizes adjustment data contained in the font. Optical Kerning is not supported as yet. */ fontKerning?: CSSWideKeyword | any; @@ -1226,12 +1347,14 @@ declare namespace React { * See CSS 3 font-size property https://www.w3.org/TR/css-fonts-3/#propdef-font-size */ fontSize?: CSSWideKeyword | - "xx-small" | "x-small" | "small" | "medium" | "large" | "x-large" | "xx-large" | - "larger" | "smaller" | - CSSLength | CSSPercentage; + "xx-small" | "x-small" | "small" | "medium" | "large" | "x-large" | "xx-large" | + "larger" | "smaller" | + CSSLength | CSSPercentage; /** - * The font-size-adjust property adjusts the font-size of the fallback fonts defined with font-family, so that the x-height is the same no matter what font is used. This preserves the readability of the text when fallback happens. + * The font-size-adjust property adjusts the font-size of the fallback fonts defined with font-family, + * so that the x-height is the same no matter what font is used. + * This preserves the readability of the text when fallback happens. * See CSS 3 font-size-adjust property https://www.w3.org/TR/css-fonts-3/#propdef-font-size-adjust */ fontSizeAdjust?: CSSWideKeyword | "none" | number; @@ -1241,11 +1364,13 @@ declare namespace React { * See CSS 3 font-stretch property https://drafts.csswg.org/css-fonts-3/#propdef-font-stretch */ fontStretch?: CSSWideKeyword | - "normal" | "ultra-condensed" | "extra-condensed" | "condensed" | "semi-condensed" | - "semi-expanded" | "expanded" | "extra-expanded" | "ultra-expanded"; + "normal" | "ultra-condensed" | "extra-condensed" | "condensed" | "semi-condensed" | + "semi-expanded" | "expanded" | "extra-expanded" | "ultra-expanded"; /** - * The font-style property allows normal, italic, or oblique faces to be selected. Italic forms are generally cursive in nature while oblique faces are typically sloped versions of the regular face. Oblique faces can be simulated by artificially sloping the glyphs of the regular face. + * The font-style property allows normal, italic, or oblique faces to be selected. + * Italic forms are generally cursive in nature while oblique faces are typically sloped versions of the regular face. + * Oblique faces can be simulated by artificially sloping the glyphs of the regular face. * See CSS 3 font-style property https://www.w3.org/TR/css-fonts-3/#propdef-font-style */ fontStyle?: CSSWideKeyword | "normal" | "italic" | "oblique"; @@ -1282,12 +1407,15 @@ declare namespace React { gridColumn?: CSSWideKeyword | any; /** - * Controls a grid item's placement in a grid area as well as grid position and a grid span. The grid-column-end property (with grid-row-start, grid-row-end, and grid-column-start) determines a grid item's placement by specifying the grid lines of a grid item's grid area. + * Controls a grid item's placement in a grid area as well as grid position and a grid span. + * The grid-column-end property (with grid-row-start, grid-row-end, and grid-column-start) determines a grid item's placement by specifying the grid lines of a grid item's grid area. */ gridColumnEnd?: CSSWideKeyword | any; /** - * Determines a grid item's placement by specifying the starting grid lines of a grid item's grid area . A grid item's placement in a grid area consists of a grid position and a grid span. See also ( grid-row-start, grid-row-end, and grid-column-end) + * Determines a grid item's placement by specifying the starting grid lines of a grid item's grid area. + * A grid item's placement in a grid area consists of a grid position and a grid span. + * See also ( grid-row-start, grid-row-end, and grid-column-end) */ gridColumnStart?: CSSWideKeyword | any; @@ -1297,7 +1425,8 @@ declare namespace React { gridRow?: CSSWideKeyword | any; /** - * Determines a grid item’s placement by specifying the block-end. A grid item's placement in a grid area consists of a grid position and a grid span. The grid-row-end property (with grid-row-start, grid-column-start, and grid-column-end) determines a grid item's placement by specifying the grid lines of a grid item's grid area. + * Determines a grid item’s placement by specifying the block-end. A grid item's placement in a grid area consists of a grid position and a grid span. + * The grid-row-end property (with grid-row-start, grid-column-start, and grid-column-end) determines a grid item's placement by specifying the grid lines of a grid item's grid area. */ gridRowEnd?: CSSWideKeyword | any; @@ -1310,17 +1439,22 @@ declare namespace React { gridRowSpan?: CSSWideKeyword | any; /** - * Specifies named grid areas which are not associated with any particular grid item, but can be referenced from the grid-placement properties. The syntax of the grid-template-areas property also provides a visualization of the structure of the grid, making the overall layout of the grid container easier to understand. + * Specifies named grid areas which are not associated with any particular grid item, but can be referenced from the grid-placement properties. + * The syntax of the grid-template-areas property also provides a visualization of the structure of the grid, making the overall layout of the grid container easier to understand. */ gridTemplateAreas?: CSSWideKeyword | any; /** - * Specifies (with grid-template-rows) the line names and track sizing functions of the grid. Each sizing function can be specified as a length, a percentage of the grid container’s size, a measurement of the contents occupying the column or row, or a fraction of the free space in the grid. + * Specifies (with grid-template-rows) the line names and track sizing functions of the grid. + * Each sizing function can be specified as a length, a percentage of the grid container’s size, + * a measurement of the contents occupying the column or row, or a fraction of the free space in the grid. */ gridTemplateColumns?: CSSWideKeyword | any; /** - * Specifies (with grid-template-columns) the line names and track sizing functions of the grid. Each sizing function can be specified as a length, a percentage of the grid container’s size, a measurement of the contents occupying the column or row, or a fraction of the free space in the grid. + * Specifies (with grid-template-columns) the line names and track sizing functions of the grid. + * Each sizing function can be specified as a length, a percentage of the grid container’s size, + * a measurement of the contents occupying the column or row, or a fraction of the free space in the grid. */ gridTemplateRows?: CSSWideKeyword | any; @@ -1340,7 +1474,8 @@ declare namespace React { hyphenateLimitLines?: CSSWideKeyword | any; /** - * Specifies the maximum amount of trailing whitespace (before justification) that may be left in a line before hyphenation is triggered to pull part of a word from the next line back up into the current one. + * Specifies the maximum amount of trailing whitespace (before justification) that may be left in a line before hyphenation is triggered + * to pull part of a word from the next line back up into the current one. */ hyphenateLimitZone?: CSSWideKeyword | any; @@ -1397,7 +1532,9 @@ declare namespace React { listStyle?: CSSWideKeyword | any; /** - * This property sets the image that will be used as the list item marker. When the image is available, it will replace the marker set with the 'list-style-type' marker. That also means that if the image is not available, it will show the style specified by list-style-property + * This property sets the image that will be used as the list item marker. When the image is available, + * it will replace the marker set with the 'list-style-type' marker. That also means that if the image is not available, + * it will show the style specified by list-style-property */ listStyleImage?: CSSWideKeyword | any; @@ -1412,7 +1549,9 @@ declare namespace React { listStyleType?: CSSWideKeyword | any; /** - * The margin property is shorthand to allow you to set all four margins of an element at once. Its equivalent longhand properties are margin-top, margin-right, margin-bottom and margin-left. Negative values are also allowed. + * The margin property is shorthand to allow you to set all four margins of an element at once. + * Its equivalent longhand properties are margin-top, margin-right, margin-bottom and margin-left. + * Negative values are also allowed. */ margin?: CSSWideKeyword | any; @@ -1447,22 +1586,29 @@ declare namespace React { marqueeStyle?: CSSWideKeyword | any; /** - * This property is shorthand for setting mask-image, mask-mode, mask-repeat, mask-position, mask-clip, mask-origin, mask-composite and mask-size. Omitted values are set to their original properties' initial values. + * This property is shorthand for setting mask-image, mask-mode, mask-repeat, mask-position, mask-clip, mask-origin, mask-composite and mask-size. + * Omitted values are set to their original properties' initial values. */ mask?: CSSWideKeyword | any; /** - * This property is shorthand for setting mask-border-source, mask-border-slice, mask-border-width, mask-border-outset, and mask-border-repeat. Omitted values are set to their original properties' initial values. + * This property is shorthand for setting mask-border-source, mask-border-slice, mask-border-width, mask-border-outset, and mask-border-repeat. + * Omitted values are set to their original properties' initial values. */ maskBorder?: CSSWideKeyword | any; /** - * This property specifies how the images for the sides and the middle part of the mask image are scaled and tiled. The first keyword applies to the horizontal sides, the second one applies to the vertical ones. If the second keyword is absent, it is assumed to be the same as the first, similar to the CSS border-image-repeat property. + * This property specifies how the images for the sides and the middle part of the mask image are scaled and tiled. + * The first keyword applies to the horizontal sides, the second one applies to the vertical ones. + * If the second keyword is absent, it is assumed to be the same as the first, similar to the CSS border-image-repeat property. */ maskBorderRepeat?: CSSWideKeyword | any; /** - * This property specifies inward offsets from the top, right, bottom, and left edges of the mask image, dividing it into nine regions: four corners, four edges, and a middle. The middle image part is discarded and treated as fully transparent black unless the fill keyword is present. The four values set the top, right, bottom and left offsets in that order, similar to the CSS border-image-slice property. + * This property specifies inward offsets from the top, right, bottom, and left edges of the mask image, + * dividing it into nine regions: four corners, four edges, and a middle. + * The middle image part is discarded and treated as fully transparent black unless the fill keyword is present. + * The four values set the top, right, bottom and left offsets in that order, similar to the CSS border-image-slice property. */ maskBorderSlice?: CSSWideKeyword | any; @@ -1477,22 +1623,28 @@ declare namespace React { maskBorderWidth?: CSSWideKeyword | any; /** - * Determines the mask painting area, which defines the area that is affected by the mask. The painted content of an element may be restricted to this area. + * Determines the mask painting area, which defines the area that is affected by the mask. + * The painted content of an element may be restricted to this area. */ maskClip?: CSSWideKeyword | any; /** - * For elements rendered as a single box, specifies the mask positioning area. For elements rendered as multiple boxes (e.g., inline boxes on several lines, boxes on several pages) specifies which boxes box-decoration-break operates on to determine the mask positioning area(s). + * For elements rendered as a single box, specifies the mask positioning area. + * For elements rendered as multiple boxes (e.g., inline boxes on several lines, boxes on several pages) + * specifies which boxes box-decoration-break operates on to determine the mask positioning area(s). */ maskOrigin?: CSSWideKeyword | any; /** - * This property must not be used. It is no longer included in any standard or standard track specification, nor is it implemented in any browser. It is only used when the text-align-last property is set to size. It controls allowed adjustments of font-size to fit line content. + * This property must not be used. It is no longer included in any standard or standard track specification, + * nor is it implemented in any browser. It is only used when the text-align-last property is set to size. + * It controls allowed adjustments of font-size to fit line content. */ maxFontSize?: CSSWideKeyword | any; /** - * Sets the maximum height for an element. It prevents the height of the element to exceed the specified value. If min-height is specified and is greater than max-height, max-height is overridden. + * Sets the maximum height for an element. It prevents the height of the element to exceed the specified value. + * If min-height is specified and is greater than max-height, max-height is overridden. */ maxHeight?: CSSWideKeyword | any; @@ -1502,7 +1654,8 @@ declare namespace React { maxWidth?: CSSWideKeyword | any; /** - * Sets the minimum height for an element. It prevents the height of the element to be smaller than the specified value. The value of min-height overrides both max-height and height. + * Sets the minimum height for an element. It prevents the height of the element to be smaller than the specified value. + * The value of min-height overrides both max-height and height. */ minHeight?: CSSWideKeyword | any; @@ -1532,10 +1685,13 @@ declare namespace React { orphans?: CSSWideKeyword | number; /** - * The CSS outline property is a shorthand property for setting one or more of the individual outline properties outline-style, outline-width and outline-color in a single rule. In most cases the use of this shortcut is preferable and more convenient. + * The CSS outline property is a shorthand property for setting one or more of the individual outline properties outline-style, + * outline-width and outline-color in a single rule. In most cases the use of this shortcut is preferable and more convenient. * Outlines differ from borders in the following ways: * • Outlines do not take up space, they are drawn above the content. - * • Outlines may be non-rectangular. They are rectangular in Gecko/Firefox. Internet Explorer attempts to place the smallest contiguous outline around all elements or shapes that are indicated to have an outline. Opera draws a non-rectangular shape around a construct. + * • Outlines may be non-rectangular. They are rectangular in Gecko/Firefox. + * Internet Explorer attempts to place the smallest contiguous outline around all elements or shapes that are indicated to have an outline. + * Opera draws a non-rectangular shape around a construct. */ outline?: CSSWideKeyword | any; @@ -1550,7 +1706,8 @@ declare namespace React { outlineOffset?: CSSWideKeyword | any; /** - * The overflow property controls how extra content exceeding the bounding box of an element is rendered. It can be used in conjunction with an element that has a fixed width and height, to eliminate text-induced page distortion. + * The overflow property controls how extra content exceeding the bounding box of an element is rendered. + * It can be used in conjunction with an element that has a fixed width and height, to eliminate text-induced page distortion. */ overflow?: CSSWideKeyword | "auto" | "hidden" | "scroll" | "visible"; @@ -1570,72 +1727,99 @@ declare namespace React { overflowY?: CSSWideKeyword | "auto" | "hidden" | "scroll" | "visible"; /** - * The padding optional CSS property sets the required padding space on one to four sides of an element. The padding area is the space between an element and its border. Negative values are not allowed but decimal values are permitted. The element size is treated as fixed, and the content of the element shifts toward the center as padding is increased. + * The padding optional CSS property sets the required padding space on one to four sides of an element. + * The padding area is the space between an element and its border. Negative values are not allowed but decimal values are permitted. + * The element size is treated as fixed, and the content of the element shifts toward the center as padding is increased. * The padding property is a shorthand to avoid setting each side separately (padding-top, padding-right, padding-bottom, padding-left). */ padding?: CSSWideKeyword | any; /** - * The padding-bottom CSS property of an element sets the padding space required on the bottom of an element. The padding area is the space between the content of the element and its border. Contrary to margin-bottom values, negative values of padding-bottom are invalid. + * The padding-bottom CSS property of an element sets the padding space required on the bottom of an element. + * The padding area is the space between the content of the element and its border. + * Contrary to margin-bottom values, negative values of padding-bottom are invalid. */ paddingBottom?: CSSWideKeyword | any; /** - * The padding-left CSS property of an element sets the padding space required on the left side of an element. The padding area is the space between the content of the element and its border. Contrary to margin-left values, negative values of padding-left are invalid. + * The padding-left CSS property of an element sets the padding space required on the left side of an element. + * The padding area is the space between the content of the element and its border. + * Contrary to margin-left values, negative values of padding-left are invalid. */ paddingLeft?: CSSWideKeyword | any; /** - * The padding-right CSS property of an element sets the padding space required on the right side of an element. The padding area is the space between the content of the element and its border. Contrary to margin-right values, negative values of padding-right are invalid. + * The padding-right CSS property of an element sets the padding space required on the right side of an element. + * The padding area is the space between the content of the element and its border. + * Contrary to margin-right values, negative values of padding-right are invalid. */ paddingRight?: CSSWideKeyword | any; /** - * The padding-top CSS property of an element sets the padding space required on the top of an element. The padding area is the space between the content of the element and its border. Contrary to margin-top values, negative values of padding-top are invalid. + * The padding-top CSS property of an element sets the padding space required on the top of an element. + * The padding area is the space between the content of the element and its border. + * Contrary to margin-top values, negative values of padding-top are invalid. */ paddingTop?: CSSWideKeyword | any; /** - * The page-break-after property is supported in all major browsers. With CSS3, page-break-* properties are only aliases of the break-* properties. The CSS3 Fragmentation spec defines breaks for all CSS box fragmentation. + * The page-break-after property is supported in all major browsers. With CSS3, page-break-* properties are only aliases of the break-* properties. + * The CSS3 Fragmentation spec defines breaks for all CSS box fragmentation. */ pageBreakAfter?: CSSWideKeyword | any; /** - * The page-break-before property sets the page-breaking behavior before an element. With CSS3, page-break-* properties are only aliases of the break-* properties. The CSS3 Fragmentation spec defines breaks for all CSS box fragmentation. + * The page-break-before property sets the page-breaking behavior before an element. + * With CSS3, page-break-* properties are only aliases of the break-* properties. + * The CSS3 Fragmentation spec defines breaks for all CSS box fragmentation. */ pageBreakBefore?: CSSWideKeyword | any; /** - * Sets the page-breaking behavior inside an element. With CSS3, page-break-* properties are only aliases of the break-* properties. The CSS3 Fragmentation spec defines breaks for all CSS box fragmentation. + * Sets the page-breaking behavior inside an element. With CSS3, page-break-* properties are only aliases of the break-* properties. + * The CSS3 Fragmentation spec defines breaks for all CSS box fragmentation. */ pageBreakInside?: CSSWideKeyword | any; /** - * The pause property determines how long a speech media agent should pause before and after presenting an element. It is a shorthand for the pause-before and pause-after properties. + * The pause property determines how long a speech media agent should pause before and after presenting an element. + * It is a shorthand for the pause-before and pause-after properties. */ pause?: CSSWideKeyword | any; /** - * The pause-after property determines how long a speech media agent should pause after presenting an element. It may be replaced by the shorthand property pause, which sets pause time before and after. + * The pause-after property determines how long a speech media agent should pause after presenting an element. + * It may be replaced by the shorthand property pause, which sets pause time before and after. */ pauseAfter?: CSSWideKeyword | any; /** - * The pause-before property determines how long a speech media agent should pause before presenting an element. It may be replaced by the shorthand property pause, which sets pause time before and after. + * The pause-before property determines how long a speech media agent should pause before presenting an element. + * It may be replaced by the shorthand property pause, which sets pause time before and after. */ pauseBefore?: CSSWideKeyword | any; /** * The perspective property defines how far an element is placed from the view on the z-axis, from the screen to the viewer. - * Perspective defines how an object is viewed. In graphic arts, perspective is the representation on a flat surface of what the viewer's eye would see in a 3D space. (See Wikipedia for more information about graphical perspective and for related illustrations.) - * The illusion of perspective on a flat surface, such as a computer screen, is created by projecting points on the flat surface as they would appear if the flat surface were a window through which the viewer was looking at the object. In discussion of virtual environments, this flat surface is called a projection plane. + * Perspective defines how an object is viewed. In graphic arts, perspective is the representation on a flat surface of what the viewer's eye would see in a 3D space. + * (See Wikipedia for more information about graphical perspective and for related illustrations.) + * The illusion of perspective on a flat surface, such as a computer screen, + * is created by projecting points on the flat surface as they would appear if the flat surface were a window + * through which the viewer was looking at the object. In discussion of virtual environments, this flat surface is called a projection plane. */ perspective?: CSSWideKeyword | any; /** - * The perspective-origin property establishes the origin for the perspective property. It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element. - * When used with perspective, perspective-origin changes the appearance of an object, as if a viewer were looking at it from a different origin. An object appears differently if a viewer is looking directly at it versus looking at it from below, above, or from the side. Thus, the perspective-origin is like a vanishing point. - * The default value of perspective-origin is 50% 50%. This displays an object as if the viewer's eye were positioned directly at the center of the screen, both top-to-bottom and left-to-right. A value of 0% 0% changes the object as if the viewer was looking toward the top left angle. A value of 100% 100% changes the appearance as if viewed toward the bottom right angle. + * The perspective-origin property establishes the origin for the perspective property. + * It effectively sets the X and Y position at which the viewer appears to be looking at the children of the element. + * When used with perspective, perspective-origin changes the appearance of an object, + * as if a viewer were looking at it from a different origin. + * An object appears differently if a viewer is looking directly at it versus looking at it from below, above, or from the side. + * Thus, the perspective-origin is like a vanishing point. + * The default value of perspective-origin is 50% 50%. + * This displays an object as if the viewer's eye were positioned directly at the center of the screen, both top-to-bottom and left-to-right. + * A value of 0% 0% changes the object as if the viewer was looking toward the top left angle. + * A value of 100% 100% changes the appearance as if viewed toward the bottom right angle. */ perspectiveOrigin?: CSSWideKeyword | any; @@ -1645,13 +1829,15 @@ declare namespace React { pointerEvents?: CSSWideKeyword | any; /** - * The position property controls the type of positioning used by an element within its parent elements. The effect of the position property depends on a lot of factors, for example the position property of parent elements. + * The position property controls the type of positioning used by an element within its parent elements. + * The effect of the position property depends on a lot of factors, for example the position property of parent elements. */ position?: CSSWideKeyword | "static" | "relative" | "absolute" | "fixed" | "sticky"; /** * Obsolete: unsupported. - * This property determines whether or not a full-width punctuation mark character should be trimmed if it appears at the beginning of a line, so that its "ink" lines up with the first glyph in the line above and below. + * This property determines whether or not a full-width punctuation mark character should be trimmed if it appears at the beginning of a line, + * so that its "ink" lines up with the first glyph in the line above and below. */ punctuationTrim?: CSSWideKeyword | any; @@ -1661,17 +1847,20 @@ declare namespace React { quotes?: CSSWideKeyword | any; /** - * Controls whether the last region in a chain displays additional 'overset' content according its default overflow property, or if it displays a fragment of content as if it were flowing into a subsequent region. + * Controls whether the last region in a chain displays additional 'overset' content according its default overflow property, + * or if it displays a fragment of content as if it were flowing into a subsequent region. */ regionFragment?: CSSWideKeyword | any; /** - * The rest-after property determines how long a speech media agent should pause after presenting an element's main content, before presenting that element's exit cue sound. It may be replaced by the shorthand property rest, which sets rest time before and after. + * The rest-after property determines how long a speech media agent should pause after presenting an element's main content, + * before presenting that element's exit cue sound. It may be replaced by the shorthand property rest, which sets rest time before and after. */ restAfter?: CSSWideKeyword | any; /** - * The rest-before property determines how long a speech media agent should pause after presenting an intro cue sound for an element, before presenting that element's main content. It may be replaced by the shorthand property rest, which sets rest time before and after. + * The rest-before property determines how long a speech media agent should pause after presenting an intro cue sound for an element, + * before presenting that element's main content. It may be replaced by the shorthand property rest, which sets rest time before and after. */ restBefore?: CSSWideKeyword | any; @@ -1685,22 +1874,29 @@ declare namespace React { rubyPosition?: CSSWideKeyword | any; /** - * Defines the alpha channel threshold used to extract a shape from an image. Can be thought of as a "minimum opacity" threshold; that is, a value of 0.5 means that the shape will enclose all the pixels that are more than 50% opaque. + * Defines the alpha channel threshold used to extract a shape from an image. Can be thought of as a "minimum opacity" threshold; + * that is, a value of 0.5 means that the shape will enclose all the pixels that are more than 50% opaque. */ shapeImageThreshold?: CSSWideKeyword | any; /** - * A future level of CSS Shapes will define a shape-inside property, which will define a shape to wrap content within the element. See Editor's Draft and CSSWG wiki page on next-level plans + * A future level of CSS Shapes will define a shape-inside property, which will define a shape to wrap content within the element. + * See Editor's Draft and CSSWG wiki page on next-level plans */ shapeInside?: CSSWideKeyword | any; /** - * Adds a margin to a shape-outside. In effect, defines a new shape that is the smallest contour around all the points that are the shape-margin distance outward perpendicular to each point on the underlying shape. For points where a perpendicular direction is not defined (e.g., a triangle corner), takes all points on a circle centered at the point and with a radius of the shape-margin distance. This property accepts only non-negative values. + * Adds a margin to a shape-outside. In effect, defines a new shape that is the smallest contour around all the points + * that are the shape-margin distance outward perpendicular to each point on the underlying shape. + * For points where a perpendicular direction is not defined (e.g., a triangle corner), + * takes all points on a circle centered at the point and with a radius of the shape-margin distance. + * This property accepts only non-negative values. */ shapeMargin?: CSSWideKeyword | any; /** - * Declares a shape around which text should be wrapped, with possible modifications from the shape-margin property. The shape defined by shape-outside and shape-margin changes the geometry of a float element's float area. + * Declares a shape around which text should be wrapped, with possible modifications from the shape-margin property. + * The shape defined by shape-outside and shape-margin changes the geometry of a float element's float area. */ shapeOutside?: CSSWideKeyword | any; @@ -1710,7 +1906,8 @@ declare namespace React { speak?: CSSWideKeyword | any; /** - * The speak-as property determines how the speech synthesizer interprets the content: words as whole words or as a sequence of letters, numbers as a numerical value or a sequence of digits, punctuation as pauses in speech or named punctuation characters. + * The speak-as property determines how the speech synthesizer interprets the content: words as whole words or as a sequence of letters, + * numbers as a numerical value or a sequence of digits, punctuation as pauses in speech or named punctuation characters. */ speakAs?: CSSWideKeyword | any; @@ -1737,7 +1934,8 @@ declare namespace React { tableLayout?: CSSWideKeyword | any; /** - * The text-align CSS property describes how inline content like text is aligned in its parent block element. text-align does not control the alignment of block elements itself, only their inline content. + * The text-align CSS property describes how inline content like text is aligned in its parent block element. + * text-align does not control the alignment of block elements itself, only their inline content. */ textAlign?: CSSWideKeyword | any; @@ -1774,14 +1972,17 @@ declare namespace React { textDecorationSkip?: CSSWideKeyword | any; /** - * This property specifies the style of the text decoration line drawn on the specified element. The intended meaning for the values are the same as those of the border-style-properties. + * This property specifies the style of the text decoration line drawn on the specified element. + * The intended meaning for the values are the same as those of the border-style-properties. */ textDecorationStyle?: CSSWideKeyword | any; textDecorationUnderline?: CSSWideKeyword | any; /** - * The text-emphasis property will apply special emphasis marks to the elements text. Slightly similar to the text-decoration property only that this property can have affect on the line-height. It also is noted that this is shorthand for text-emphasis-style and for text-emphasis-color. + * The text-emphasis property will apply special emphasis marks to the elements text. + * Slightly similar to the text-decoration property only that this property can have affect on the line-height. + * It also is noted that this is shorthand for text-emphasis-style and for text-emphasis-color. */ textEmphasis?: CSSWideKeyword | any; @@ -1796,12 +1997,16 @@ declare namespace React { textEmphasisStyle?: CSSWideKeyword | any; /** - * This property helps determine an inline box's block-progression dimension, derived from the text-height and font-size properties for non-replaced elements, the height or the width for replaced elements, and the stacked block-progression dimension for inline-block elements. The block-progression dimension determines the position of the padding, border and margin for the element. + * This property helps determine an inline box's block-progression dimension, + * derived from the text-height and font-size properties for non-replaced elements, + * the height or the width for replaced elements, and the stacked block-progression dimension for inline-block elements. + * The block-progression dimension determines the position of the padding, border and margin for the element. */ textHeight?: CSSWideKeyword | any; /** - * Specifies the amount of space horizontally that should be left on the first line of the text of an element. This horizontal spacing is at the beginning of the first line and is in respect to the left edge of the containing block box. + * Specifies the amount of space horizontally that should be left on the first line of the text of an element. + * This horizontal spacing is at the beginning of the first line and is in respect to the left edge of the containing block box. */ textIndent?: CSSWideKeyword | any; @@ -1810,7 +2015,8 @@ declare namespace React { textKashidaSpace?: CSSWideKeyword | any; /** - * The text-line-through property is a shorthand property for text-line-through-style, text-line-through-color and text-line-through-mode. (Considered obsolete; use text-decoration instead.) + * The text-line-through property is a shorthand property for text-line-through-style, text-line-through-color and text-line-through-mode. + * (Considered obsolete; use text-decoration instead.) */ textLineThrough?: CSSWideKeyword | any; @@ -1838,7 +2044,9 @@ declare namespace React { textLineThroughWidth?: CSSWideKeyword | any; /** - * The text-overflow shorthand CSS property determines how overflowed content that is not displayed is signaled to the users. It can be clipped, display an ellipsis ('…', U+2026 HORIZONTAL ELLIPSIS) or a Web author-defined string. It covers the two long-hand properties text-overflow-mode and text-overflow-ellipsis + * The text-overflow shorthand CSS property determines how overflowed content that is not displayed is signaled to the users. + * It can be clipped, display an ellipsis ('…', U+2026 HORIZONTAL ELLIPSIS) or a Web author-defined string. + * It covers the two long-hand properties text-overflow-mode and text-overflow-ellipsis */ textOverflow?: CSSWideKeyword | any; @@ -1868,7 +2076,8 @@ declare namespace React { textOverlineWidth?: CSSWideKeyword | any; /** - * The text-rendering CSS property provides information to the browser about how to optimize when rendering text. Options are: legibility, speed or geometric precision. + * The text-rendering CSS property provides information to the browser about how to optimize when rendering text. + * Options are: legibility, speed or geometric precision. */ textRendering?: CSSWideKeyword | any; @@ -1878,7 +2087,8 @@ declare namespace React { textScript?: CSSWideKeyword | any; /** - * The CSS text-shadow property applies one or more drop shadows to the text and of an element. Each shadow is specified as an offset from the text, along with optional color and blur radius values. + * The CSS text-shadow property applies one or more drop shadows to the text and of an element. + * Each shadow is specified as an offset from the text, along with optional color and blur radius values. */ textShadow?: CSSWideKeyword | any; @@ -1900,7 +2110,9 @@ declare namespace React { textUnderlineStyle?: CSSWideKeyword | any; /** - * This property specifies how far an absolutely positioned box's top margin edge is offset below the top edge of the box's containing block. For relatively positioned boxes, the offset is with respect to the top edges of the box itself (i.e., the box is given a position in the normal flow, then offset from that position according to these properties). + * This property specifies how far an absolutely positioned box's top margin edge is offset below the top edge of the box's containing block. + * For relatively positioned boxes, the offset is with respect to the top edges of the box itself (i.e., the box is given a position in the normal flow, + * then offset from that position according to these properties). */ top?: CSSWideKeyword | any; @@ -1910,7 +2122,8 @@ declare namespace React { touchAction?: CSSWideKeyword | any; /** - * CSS transforms allow elements styled with CSS to be transformed in two-dimensional or three-dimensional space. Using this property, elements can be translated, rotated, scaled, and skewed. The value list may consist of 2D and/or 3D transform values. + * CSS transforms allow elements styled with CSS to be transformed in two-dimensional or three-dimensional space. + * Using this property, elements can be translated, rotated, scaled, and skewed. The value list may consist of 2D and/or 3D transform values. */ transform?: CSSWideKeyword | any; @@ -1930,12 +2143,14 @@ declare namespace React { transformStyle?: CSSWideKeyword | any; /** - * The transition CSS property is a shorthand property for transition-property, transition-duration, transition-timing-function, and transition-delay. It allows to define the transition between two states of an element. + * The transition CSS property is a shorthand property for transition-property, transition-duration, transition-timing-function, + * and transition-delay. It allows to define the transition between two states of an element. */ transition?: CSSWideKeyword | any; /** - * Defines when the transition will start. A value of ‘0s’ means the transition will execute as soon as the property is changed. Otherwise, the value specifies an offset from the moment the property is changed, and the transition will delay execution by that offset. + * Defines when the transition will start. A value of ‘0s’ means the transition will execute as soon as the property is changed. + * Otherwise, the value specifies an offset from the moment the property is changed, and the transition will delay execution by that offset. */ transitionDelay?: CSSWideKeyword | any; @@ -1975,7 +2190,8 @@ declare namespace React { userInput?: CSSWideKeyword | any; /** - * The vertical-align property controls how inline elements or text are vertically aligned compared to the baseline. If this property is used on table-cells it controls the vertical alignment of content of the table cell. + * The vertical-align property controls how inline elements or text are vertically aligned compared to the baseline. + * If this property is used on table-cells it controls the vertical alignment of content of the table cell. */ verticalAlign?: CSSWideKeyword | any; @@ -1990,22 +2206,34 @@ declare namespace React { voiceBalance?: CSSWideKeyword | any; /** - * The voice-duration property allows the author to explicitly set the amount of time it should take a speech synthesizer to read an element's content, for example to allow the speech to be synchronized with other media. With a value of auto (the default) the length of time it takes to read the content is determined by the content itself and the voice-rate property. + * The voice-duration property allows the author to explicitly set the amount of time it should take a speech synthesizer to read an element's content, + * for example to allow the speech to be synchronized with other media. + * With a value of auto (the default) the length of time it takes to read the content is determined by the content itself and the voice-rate property. */ voiceDuration?: CSSWideKeyword | any; /** - * The voice-family property sets the speaker's voice used by a speech media agent to read an element. The speaker may be specified as a named character (to match a voice option in the speech reading software) or as a generic description of the age and gender of the voice. Similar to the font-family property for visual media, a comma-separated list of fallback options may be given in case the speech reader does not recognize the character name or cannot synthesize the requested combination of generic properties. + * The voice-family property sets the speaker's voice used by a speech media agent to read an element. + * The speaker may be specified as a named character (to match a voice option in the speech reading software) + * or as a generic description of the age and gender of the voice. + * Similar to the font-family property for visual media, + * a comma-separated list of fallback options may be given in case the speech reader does not recognize the character name + * or cannot synthesize the requested combination of generic properties. */ voiceFamily?: CSSWideKeyword | any; /** - * The voice-pitch property sets pitch or tone (high or low) for the synthesized speech when reading an element; the pitch may be specified absolutely or relative to the normal pitch for the voice-family used to read the text. + * The voice-pitch property sets pitch or tone (high or low) for the synthesized speech when reading an element; + * the pitch may be specified absolutely or relative to the normal pitch for the voice-family used to read the text. */ voicePitch?: CSSWideKeyword | any; /** - * The voice-range property determines how much variation in pitch or tone will be created by the speech synthesize when reading an element. Emphasized text, grammatical structures and punctuation may all be rendered as changes in pitch, this property determines how strong or obvious those changes are; large ranges are associated with enthusiastic or emotional speech, while small ranges are associated with flat or mechanical speech. + * The voice-range property determines how much variation in pitch or tone will be created by the speech synthesize when reading an element. + * Emphasized text, grammatical structures and punctuation may all be rendered as changes in pitch, + * this property determines how strong or obvious those changes are; + * large ranges are associated with enthusiastic or emotional speech, + * while small ranges are associated with flat or mechanical speech. */ voiceRange?: CSSWideKeyword | any; @@ -2047,7 +2275,8 @@ declare namespace React { width?: CSSWideKeyword | any; /** - * The word-break property is often used when there is long generated content that is strung together without and spaces or hyphens to beak apart. A common case of this is when there is a long URL that does not have any hyphens. This case could potentially cause the breaking of the layout as it could extend past the parent element. + * The word-break property is often used when there is long generated content that is strung together without and spaces or hyphens to beak apart. + * A common case of this is when there is a long URL that does not have any hyphens. This case could potentially cause the breaking of the layout as it could extend past the parent element. */ wordBreak?: CSSWideKeyword | any; @@ -2105,129 +2334,28 @@ declare namespace React { suppressContentEditableWarning?: boolean; // Standard HTML Attributes - accept?: string; - acceptCharset?: string; accessKey?: string; - action?: string; - allowFullScreen?: boolean; - allowTransparency?: boolean; - alt?: string; - async?: boolean; - autoComplete?: string; - autoFocus?: boolean; - autoPlay?: boolean; - capture?: boolean; - cellPadding?: number | string; - cellSpacing?: number | string; - charSet?: string; - challenge?: string; - checked?: boolean; - cite?: string; - classID?: string; className?: string; - cols?: number; - colSpan?: number; - content?: string; contentEditable?: boolean; contextMenu?: string; - controls?: boolean; - coords?: string; - crossOrigin?: string; - data?: string; - dateTime?: string; - default?: boolean; - defer?: boolean; dir?: string; - disabled?: boolean; - download?: any; draggable?: boolean; - encType?: string; - form?: string; - formAction?: string; - formEncType?: string; - formMethod?: string; - formNoValidate?: boolean; - formTarget?: string; - frameBorder?: number | string; - headers?: string; - height?: number | string; hidden?: boolean; - high?: number; - href?: string; - hrefLang?: string; - htmlFor?: string; - httpEquiv?: string; id?: string; - inputMode?: string; - integrity?: string; - is?: string; - keyParams?: string; - keyType?: string; - kind?: string; - label?: string; lang?: string; - list?: string; - loop?: boolean; - low?: number; - manifest?: string; - marginHeight?: number; - marginWidth?: number; - max?: number | string; - maxLength?: number; - media?: string; - mediaGroup?: string; - method?: string; - min?: number | string; - minLength?: number; - multiple?: boolean; - muted?: boolean; - name?: string; - nonce?: string; - noValidate?: boolean; - open?: boolean; - optimum?: number; - pattern?: string; - placeholder?: string; - playsInline?: boolean; - poster?: string; - preload?: string; - radioGroup?: string; - readOnly?: boolean; - rel?: string; - required?: boolean; - reversed?: boolean; - role?: string; - rows?: number; - rowSpan?: number; - sandbox?: string; - scope?: string; - scoped?: boolean; - scrolling?: string; - seamless?: boolean; - selected?: boolean; - shape?: string; - size?: number; - sizes?: string; slot?: string; - span?: number; spellCheck?: boolean; - src?: string; - srcDoc?: string; - srcLang?: string; - srcSet?: string; - start?: number; - step?: number | string; style?: CSSProperties; - summary?: string; tabIndex?: number; - target?: string; title?: string; - type?: string; - useMap?: string; - value?: string | string[] | number; - width?: number | string; - wmode?: string; - wrap?: string; + + // Unknown + inputMode?: string; + is?: string; + radioGroup?: string; // , + + // WAI-ARIA + role?: string; // RDFa Attributes about?: string; @@ -2254,10 +2382,488 @@ declare namespace React { unselectable?: boolean; } - interface ChangeTargetHTMLAttributes extends HTMLAttributes { + interface AllHTMLAttributes extends HTMLAttributes { + // Standard HTML Attributes + accept?: string; + acceptCharset?: string; + action?: string; + allowFullScreen?: boolean; + allowTransparency?: boolean; + alt?: string; + async?: boolean; + autoComplete?: string; + autoFocus?: boolean; + autoPlay?: boolean; + capture?: boolean; + cellPadding?: number | string; + cellSpacing?: number | string; + charSet?: string; + challenge?: string; + checked?: boolean; + cite?: string; + classID?: string; + cols?: number; + colSpan?: number; + content?: string; + controls?: boolean; + coords?: string; + crossOrigin?: string; + data?: string; + dateTime?: string; + default?: boolean; + defer?: boolean; + disabled?: boolean; + download?: any; + encType?: string; + form?: string; + formAction?: string; + formEncType?: string; + formMethod?: string; + formNoValidate?: boolean; + formTarget?: string; + frameBorder?: number | string; + headers?: string; + height?: number | string; + high?: number; + href?: string; + hrefLang?: string; + htmlFor?: string; + httpEquiv?: string; + integrity?: string; + keyParams?: string; + keyType?: string; + kind?: string; + label?: string; + list?: string; + loop?: boolean; + low?: number; + manifest?: string; + marginHeight?: number; + marginWidth?: number; + max?: number | string; + maxLength?: number; + media?: string; + mediaGroup?: string; + method?: string; + min?: number | string; + minLength?: number; + multiple?: boolean; + muted?: boolean; + name?: string; + nonce?: string; + noValidate?: boolean; + open?: boolean; + optimum?: number; + pattern?: string; + placeholder?: string; + playsInline?: boolean; + poster?: string; + preload?: string; + readOnly?: boolean; + rel?: string; + required?: boolean; + reversed?: boolean; + rows?: number; + rowSpan?: number; + sandbox?: string; + scope?: string; + scoped?: boolean; + scrolling?: string; + seamless?: boolean; + selected?: boolean; + shape?: string; + size?: number; + sizes?: string; + span?: number; + src?: string; + srcDoc?: string; + srcLang?: string; + srcSet?: string; + start?: number; + step?: number | string; + summary?: string; + target?: string; + type?: string; + useMap?: string; + value?: string | string[] | number; + width?: number | string; + wmode?: string; + wrap?: string; + } + + interface AnchorHTMLAttributes extends HTMLAttributes { + download?: any; + href?: string; + hrefLang?: string; + media?: string; + rel?: string; + target?: string; + } + + // tslint:disable-next-line:no-empty-interface + interface AudioHTMLAttributes extends MediaHTMLAttributes {} + + interface AreaHTMLAttributes extends HTMLAttributes { + alt?: string; + coords?: string; + download?: any; + href?: string; + hrefLang?: string; + media?: string; + rel?: string; + shape?: string; + target?: string; + } + + interface BaseHTMLAttributes extends HTMLAttributes { + href?: string; + target?: string; + } + + interface BlockquoteHTMLAttributes extends HTMLAttributes { + cite?: string; + } + + interface ButtonHTMLAttributes extends HTMLAttributes { + autoFocus?: boolean; + disabled?: boolean; + form?: string; + formAction?: string; + formEncType?: string; + formMethod?: string; + formNoValidate?: boolean; + formTarget?: string; + name?: string; + type?: string; + value?: string | string[] | number; + } + + interface CanvasHTMLAttributes extends HTMLAttributes { + height?: number | string; + width?: number | string; + } + + interface ColHTMLAttributes extends HTMLAttributes { + span?: number; + } + + interface ColgroupHTMLAttributes extends HTMLAttributes { + span?: number; + } + + interface DetailsHTMLAttributes extends HTMLAttributes { + open?: boolean; + } + + interface DelHTMLAttributes extends HTMLAttributes { + cite?: string; + dateTime?: string; + } + + interface EmbedHTMLAttributes extends HTMLAttributes { + height?: number | string; + src?: string; + type?: string; + width?: number | string; + } + + interface FieldsetHTMLAttributes extends HTMLAttributes { + disabled?: boolean; + form?: string; + name?: string; + } + + interface FormHTMLAttributes extends HTMLAttributes { + acceptCharset?: string; + action?: string; + autoComplete?: string; + encType?: string; + method?: string; + name?: string; + noValidate?: boolean; + target?: string; + } + + interface HtmlHTMLAttributes extends HTMLAttributes { + manifest?: string; + } + + interface IframeHTMLAttributes extends HTMLAttributes { + allowFullScreen?: boolean; + allowTransparency?: boolean; + frameBorder?: number | string; + height?: number | string; + marginHeight?: number; + marginWidth?: number; + name?: string; + sandbox?: string; + scrolling?: string; + seamless?: boolean; + src?: string; + srcDoc?: string; + width?: number | string; + } + + interface ImgHTMLAttributes extends HTMLAttributes { + alt?: string; + height?: number | string; + sizes?: string; + src?: string; + srcSet?: string; + useMap?: string; + width?: number | string; + } + + interface InsHTMLAttributes extends HTMLAttributes { + cite?: string; + dateTime?: string; + } + + interface InputHTMLAttributes extends HTMLAttributes { + accept?: string; + alt?: string; + autoComplete?: string; + autoFocus?: boolean; + capture?: boolean; // https://www.w3.org/TR/html-media-capture/#the-capture-attribute + checked?: boolean; + crossOrigin?: string; + disabled?: boolean; + form?: string; + formAction?: string; + formEncType?: string; + formMethod?: string; + formNoValidate?: boolean; + formTarget?: string; + height?: number | string; + list?: string; + max?: number | string; + maxLength?: number; + min?: number | string; + minLength?: number; + multiple?: boolean; + name?: string; + pattern?: string; + placeholder?: string; + readOnly?: boolean; + required?: boolean; + size?: number; + src?: string; + step?: number | string; + type?: string; + value?: string | string[] | number; + width?: number | string; + onChange?: ChangeEventHandler; } + interface KeygenHTMLAttributes extends HTMLAttributes { + autoFocus?: boolean; + challenge?: string; + disabled?: boolean; + form?: string; + keyType?: string; + keyParams?: string; + name?: string; + } + + interface LabelHTMLAttributes extends HTMLAttributes { + form?: string; + htmlFor?: string; + } + + interface LiHTMLAttributes extends HTMLAttributes { + value?: string | string[] | number; + } + + interface LinkHTMLAttributes extends HTMLAttributes { + href?: string; + hrefLang?: string; + integrity?: string; + media?: string; + rel?: string; + sizes?: string; + type?: string; + } + + interface MapHTMLAttributes extends HTMLAttributes { + name?: string; + } + + interface MenuHTMLAttributes extends HTMLAttributes { + type?: string; + } + + interface MediaHTMLAttributes extends HTMLAttributes { + autoPlay?: boolean; + controls?: boolean; + crossOrigin?: string; + loop?: boolean; + mediaGroup?: string; + muted?: boolean; + preload?: string; + src?: string; + } + + interface MetaHTMLAttributes extends HTMLAttributes { + charSet?: string; + content?: string; + httpEquiv?: string; + name?: string; + } + + interface MeterHTMLAttributes extends HTMLAttributes { + form?: string; + high?: number; + low?: number; + max?: number | string; + min?: number | string; + optimum?: number; + value?: string | string[] | number; + } + + interface QuoteHTMLAttributes extends HTMLAttributes { + cite?: string; + } + + interface ObjectHTMLAttributes extends HTMLAttributes { + classID?: string; + data?: string; + form?: string; + height?: number | string; + name?: string; + type?: string; + useMap?: string; + width?: number | string; + wmode?: string; + } + + interface OlHTMLAttributes extends HTMLAttributes { + reversed?: boolean; + start?: number; + } + + interface OptgroupHTMLAttributes extends HTMLAttributes { + disabled?: boolean; + label?: string; + } + + interface OptionHTMLAttributes extends HTMLAttributes { + disabled?: boolean; + label?: string; + selected?: boolean; + value?: string | string[] | number; + } + + interface OutputHTMLAttributes extends HTMLAttributes { + form?: string; + htmlFor?: string; + name?: string; + } + + interface ParamHTMLAttributes extends HTMLAttributes { + name?: string; + value?: string | string[] | number; + } + + interface ProgressHTMLAttributes extends HTMLAttributes { + max?: number | string; + value?: string | string[] | number; + } + + interface ScriptHTMLAttributes extends HTMLAttributes { + async?: boolean; + charSet?: string; + crossOrigin?: string; + defer?: boolean; + integrity?: string; + nonce?: string; + src?: string; + type?: string; + } + + interface SelectHTMLAttributes extends HTMLAttributes { + autoFocus?: boolean; + disabled?: boolean; + form?: string; + multiple?: boolean; + name?: string; + required?: boolean; + size?: number; + + onChange?: ChangeEventHandler; + } + + interface SourceHTMLAttributes extends HTMLAttributes { + media?: string; + sizes?: string; + src?: string; + srcSet?: string; + type?: string; + } + + interface StyleHTMLAttributes extends HTMLAttributes { + media?: string; + nonce?: string; + scoped?: boolean; + type?: string; + } + + interface TableHTMLAttributes extends HTMLAttributes { + cellPadding?: number | string; + cellSpacing?: number | string; + summary?: string; + } + + interface TextareaHTMLAttributes extends HTMLAttributes { + autoFocus?: boolean; + cols?: number; + disabled?: boolean; + form?: string; + maxLength?: number; + minLength?: number; + name?: string; + placeholder?: string; + readOnly?: boolean; + required?: boolean; + rows?: number; + value?: string | string[] | number; + wrap?: string; + + onChange?: ChangeEventHandler; + } + + interface TdHTMLAttributes extends HTMLAttributes { + colSpan?: number; + headers?: string; + rowSpan?: number; + } + + interface ThHTMLAttributes extends HTMLAttributes { + colSpan?: number; + headers?: string; + rowSpan?: number; + scope?: string; + } + + interface TimeHTMLAttributes extends HTMLAttributes { + dateTime?: string; + } + + interface TrackHTMLAttributes extends HTMLAttributes { + default?: boolean; + kind?: string; + label?: string; + src?: string; + srcLang?: string; + } + + interface VideoHTMLAttributes extends MediaHTMLAttributes { + height?: number | string; + playsInline?: boolean; + poster?: string; + width?: number | string; + } + // this list is "complete" in that it contains every SVG attribute // that React supports, but the types can be improved. // Full list here: https://facebook.github.io/react/docs/dom-elements.html @@ -2292,7 +2898,8 @@ declare namespace React { accentHeight?: number | string; accumulate?: "none" | "sum"; additive?: "replace" | "sum"; - alignmentBaseline?: "auto" | "baseline" | "before-edge" | "text-before-edge" | "middle" | "central" | "after-edge" | "text-after-edge" | "ideographic" | "alphabetic" | "hanging" | "mathematical" | "inherit"; + alignmentBaseline?: "auto" | "baseline" | "before-edge" | "text-before-edge" | "middle" | "central" | "after-edge" | + "text-after-edge" | "ideographic" | "alphabetic" | "hanging" | "mathematical" | "inherit"; allowReorder?: "no" | "yes"; alphabetic?: number | string; amplitude?: number | string; @@ -2535,119 +3142,119 @@ declare namespace React { // ---------------------------------------------------------------------- interface ReactHTML { - a: HTMLFactory; - abbr: HTMLFactory; - address: HTMLFactory; - area: HTMLFactory; - article: HTMLFactory; - aside: HTMLFactory; - audio: HTMLFactory; - b: HTMLFactory; - base: HTMLFactory; - bdi: HTMLFactory; - bdo: HTMLFactory; - big: HTMLFactory; - blockquote: HTMLFactory; - body: HTMLFactory; - br: HTMLFactory; - button: HTMLFactory; - canvas: HTMLFactory; - caption: HTMLFactory; - cite: HTMLFactory; - code: HTMLFactory; - col: HTMLFactory; - colgroup: HTMLFactory; - data: HTMLFactory; - datalist: HTMLFactory; - dd: HTMLFactory; - del: HTMLFactory; - details: HTMLFactory; - dfn: HTMLFactory; - dialog: HTMLFactory; - div: HTMLFactory; - dl: HTMLFactory; - dt: HTMLFactory; - em: HTMLFactory; - embed: HTMLFactory; - fieldset: HTMLFactory; - figcaption: HTMLFactory; - figure: HTMLFactory; - footer: HTMLFactory; - form: HTMLFactory; - h1: HTMLFactory; - h2: HTMLFactory; - h3: HTMLFactory; - h4: HTMLFactory; - h5: HTMLFactory; - h6: HTMLFactory; - head: HTMLFactory; - header: HTMLFactory; - hgroup: HTMLFactory; - hr: HTMLFactory; - html: HTMLFactory; - i: HTMLFactory; - iframe: HTMLFactory; - img: HTMLFactory; - input: ChangeTargetHTMLFactory; - ins: HTMLFactory; - kbd: HTMLFactory; - keygen: HTMLFactory; - label: HTMLFactory; - legend: HTMLFactory; - li: HTMLFactory; - link: HTMLFactory; - main: HTMLFactory; - map: HTMLFactory; - mark: HTMLFactory; - menu: HTMLFactory; - menuitem: HTMLFactory; - meta: HTMLFactory; - meter: HTMLFactory; - nav: HTMLFactory; - noscript: HTMLFactory; - object: HTMLFactory; - ol: HTMLFactory; - optgroup: HTMLFactory; - option: HTMLFactory; - output: HTMLFactory; - p: HTMLFactory; - param: HTMLFactory; - picture: HTMLFactory; - pre: HTMLFactory; - progress: HTMLFactory; - q: HTMLFactory; - rp: HTMLFactory; - rt: HTMLFactory; - ruby: HTMLFactory; - s: HTMLFactory; - samp: HTMLFactory; - script: HTMLFactory; - section: HTMLFactory; - select: ChangeTargetHTMLFactory; - small: HTMLFactory; - source: HTMLFactory; - span: HTMLFactory; - strong: HTMLFactory; - style: HTMLFactory; - sub: HTMLFactory; - summary: HTMLFactory; - sup: HTMLFactory; - table: HTMLFactory; - tbody: HTMLFactory; - td: HTMLFactory; - textarea: ChangeTargetHTMLFactory; - tfoot: HTMLFactory; - th: HTMLFactory; - thead: HTMLFactory; - time: HTMLFactory; - title: HTMLFactory; - tr: HTMLFactory; - track: HTMLFactory; - u: HTMLFactory; - ul: HTMLFactory; - "var": HTMLFactory; - video: HTMLFactory; - wbr: HTMLFactory; + a: DetailedHTMLFactory, HTMLAnchorElement>; + abbr: DetailedHTMLFactory, HTMLElement>; + address: DetailedHTMLFactory, HTMLElement>; + area: DetailedHTMLFactory, HTMLAreaElement>; + article: DetailedHTMLFactory, HTMLElement>; + aside: DetailedHTMLFactory, HTMLElement>; + audio: DetailedHTMLFactory, HTMLAudioElement>; + b: DetailedHTMLFactory, HTMLElement>; + base: DetailedHTMLFactory, HTMLBaseElement>; + bdi: DetailedHTMLFactory, HTMLElement>; + bdo: DetailedHTMLFactory, HTMLElement>; + big: DetailedHTMLFactory, HTMLElement>; + blockquote: DetailedHTMLFactory, HTMLElement>; + body: DetailedHTMLFactory, HTMLBodyElement>; + br: DetailedHTMLFactory, HTMLBRElement>; + button: DetailedHTMLFactory, HTMLButtonElement>; + canvas: DetailedHTMLFactory, HTMLCanvasElement>; + caption: DetailedHTMLFactory, HTMLElement>; + cite: DetailedHTMLFactory, HTMLElement>; + code: DetailedHTMLFactory, HTMLElement>; + col: DetailedHTMLFactory, HTMLTableColElement>; + colgroup: DetailedHTMLFactory, HTMLTableColElement>; + data: DetailedHTMLFactory, HTMLElement>; + datalist: DetailedHTMLFactory, HTMLDataListElement>; + dd: DetailedHTMLFactory, HTMLElement>; + del: DetailedHTMLFactory, HTMLElement>; + details: DetailedHTMLFactory, HTMLElement>; + dfn: DetailedHTMLFactory, HTMLElement>; + dialog: DetailedHTMLFactory, HTMLElement>; + div: DetailedHTMLFactory, HTMLDivElement>; + dl: DetailedHTMLFactory, HTMLDListElement>; + dt: DetailedHTMLFactory, HTMLElement>; + em: DetailedHTMLFactory, HTMLElement>; + embed: DetailedHTMLFactory, HTMLEmbedElement>; + fieldset: DetailedHTMLFactory, HTMLFieldSetElement>; + figcaption: DetailedHTMLFactory, HTMLElement>; + figure: DetailedHTMLFactory, HTMLElement>; + footer: DetailedHTMLFactory, HTMLElement>; + form: DetailedHTMLFactory, HTMLFormElement>; + h1: DetailedHTMLFactory, HTMLHeadingElement>; + h2: DetailedHTMLFactory, HTMLHeadingElement>; + h3: DetailedHTMLFactory, HTMLHeadingElement>; + h4: DetailedHTMLFactory, HTMLHeadingElement>; + h5: DetailedHTMLFactory, HTMLHeadingElement>; + h6: DetailedHTMLFactory, HTMLHeadingElement>; + head: DetailedHTMLFactory, HTMLHeadElement>; + header: DetailedHTMLFactory, HTMLElement>; + hgroup: DetailedHTMLFactory, HTMLElement>; + hr: DetailedHTMLFactory, HTMLHRElement>; + html: DetailedHTMLFactory, HTMLHtmlElement>; + i: DetailedHTMLFactory, HTMLElement>; + iframe: DetailedHTMLFactory, HTMLIFrameElement>; + img: DetailedHTMLFactory, HTMLImageElement>; + input: DetailedHTMLFactory, HTMLInputElement>; + ins: DetailedHTMLFactory, HTMLModElement>; + kbd: DetailedHTMLFactory, HTMLElement>; + keygen: DetailedHTMLFactory, HTMLElement>; + label: DetailedHTMLFactory, HTMLLabelElement>; + legend: DetailedHTMLFactory, HTMLLegendElement>; + li: DetailedHTMLFactory, HTMLLIElement>; + link: DetailedHTMLFactory, HTMLLinkElement>; + main: DetailedHTMLFactory, HTMLElement>; + map: DetailedHTMLFactory, HTMLMapElement>; + mark: DetailedHTMLFactory, HTMLElement>; + menu: DetailedHTMLFactory, HTMLElement>; + menuitem: DetailedHTMLFactory, HTMLElement>; + meta: DetailedHTMLFactory, HTMLMetaElement>; + meter: DetailedHTMLFactory, HTMLElement>; + nav: DetailedHTMLFactory, HTMLElement>; + noscript: DetailedHTMLFactory, HTMLElement>; + object: DetailedHTMLFactory, HTMLObjectElement>; + ol: DetailedHTMLFactory, HTMLOListElement>; + optgroup: DetailedHTMLFactory, HTMLOptGroupElement>; + option: DetailedHTMLFactory, HTMLOptionElement>; + output: DetailedHTMLFactory, HTMLElement>; + p: DetailedHTMLFactory, HTMLParagraphElement>; + param: DetailedHTMLFactory, HTMLParamElement>; + picture: DetailedHTMLFactory, HTMLElement>; + pre: DetailedHTMLFactory, HTMLPreElement>; + progress: DetailedHTMLFactory, HTMLProgressElement>; + q: DetailedHTMLFactory, HTMLQuoteElement>; + rp: DetailedHTMLFactory, HTMLElement>; + rt: DetailedHTMLFactory, HTMLElement>; + ruby: DetailedHTMLFactory, HTMLElement>; + s: DetailedHTMLFactory, HTMLElement>; + samp: DetailedHTMLFactory, HTMLElement>; + script: DetailedHTMLFactory, HTMLScriptElement>; + section: DetailedHTMLFactory, HTMLElement>; + select: DetailedHTMLFactory, HTMLSelectElement>; + small: DetailedHTMLFactory, HTMLElement>; + source: DetailedHTMLFactory, HTMLSourceElement>; + span: DetailedHTMLFactory, HTMLSpanElement>; + strong: DetailedHTMLFactory, HTMLElement>; + style: DetailedHTMLFactory, HTMLStyleElement>; + sub: DetailedHTMLFactory, HTMLElement>; + summary: DetailedHTMLFactory, HTMLElement>; + sup: DetailedHTMLFactory, HTMLElement>; + table: DetailedHTMLFactory, HTMLTableElement>; + tbody: DetailedHTMLFactory, HTMLTableSectionElement>; + td: DetailedHTMLFactory, HTMLTableDataCellElement>; + textarea: DetailedHTMLFactory, HTMLTextAreaElement>; + tfoot: DetailedHTMLFactory, HTMLTableSectionElement>; + th: DetailedHTMLFactory, HTMLTableHeaderCellElement>; + thead: DetailedHTMLFactory, HTMLTableSectionElement>; + time: DetailedHTMLFactory, HTMLElement>; + title: DetailedHTMLFactory, HTMLTitleElement>; + tr: DetailedHTMLFactory, HTMLTableRowElement>; + track: DetailedHTMLFactory, HTMLTrackElement>; + u: DetailedHTMLFactory, HTMLElement>; + ul: DetailedHTMLFactory, HTMLUListElement>; + "var": DetailedHTMLFactory, HTMLElement>; + video: DetailedHTMLFactory, HTMLVideoElement>; + wbr: DetailedHTMLFactory, HTMLElement>; } interface ReactSVG { @@ -2680,15 +3287,13 @@ declare namespace React { // React.PropTypes // ---------------------------------------------------------------------- - interface Validator { - (object: T, key: string, componentName: string, ...rest: any[]): Error | null; - } + type Validator = (object: T, key: string, componentName: string, ...rest: any[]) => Error | null; interface Requireable extends Validator { isRequired: Validator; } - type ValidationMap = { [K in keyof T]?: Validator }; + type ValidationMap = {[K in keyof T]?: Validator }; interface ReactPropTypes { any: Requireable; @@ -2702,7 +3307,7 @@ declare namespace React { element: Requireable; instanceOf(expectedClass: {}): Requireable; oneOf(types: any[]): Requireable; - oneOfType(types: Validator[]): Requireable; + oneOfType(types: Array>): Requireable; arrayOf(type: Validator): Requireable; objectOf(type: Validator): Requireable; shape(type: ValidationMap): Requireable; @@ -2751,6 +3356,7 @@ declare namespace React { declare global { namespace JSX { + // tslint:disable:no-empty-interface interface Element extends React.ReactElement { } interface ElementClass extends React.Component { render(): JSX.Element | null | false; @@ -2760,123 +3366,124 @@ declare global { interface IntrinsicAttributes extends React.Attributes { } interface IntrinsicClassAttributes extends React.ClassAttributes { } + // tslint:enable:no-empty-interface interface IntrinsicElements { // HTML - a: React.HTMLProps; - abbr: React.HTMLProps; - address: React.HTMLProps; - area: React.HTMLProps; - article: React.HTMLProps; - aside: React.HTMLProps; - audio: React.HTMLProps; - b: React.HTMLProps; - base: React.HTMLProps; - bdi: React.HTMLProps; - bdo: React.HTMLProps; - big: React.HTMLProps; - blockquote: React.HTMLProps; - body: React.HTMLProps; - br: React.HTMLProps; - button: React.HTMLProps; - canvas: React.HTMLProps; - caption: React.HTMLProps; - cite: React.HTMLProps; - code: React.HTMLProps; - col: React.HTMLProps; - colgroup: React.HTMLProps; - data: React.HTMLProps; - datalist: React.HTMLProps; - dd: React.HTMLProps; - del: React.HTMLProps; - details: React.HTMLProps; - dfn: React.HTMLProps; - dialog: React.HTMLProps; - div: React.HTMLProps; - dl: React.HTMLProps; - dt: React.HTMLProps; - em: React.HTMLProps; - embed: React.HTMLProps; - fieldset: React.HTMLProps; - figcaption: React.HTMLProps; - figure: React.HTMLProps; - footer: React.HTMLProps; - form: React.HTMLProps; - h1: React.HTMLProps; - h2: React.HTMLProps; - h3: React.HTMLProps; - h4: React.HTMLProps; - h5: React.HTMLProps; - h6: React.HTMLProps; - head: React.HTMLProps; - header: React.HTMLProps; - hgroup: React.HTMLProps; - hr: React.HTMLProps; - html: React.HTMLProps; - i: React.HTMLProps; - iframe: React.HTMLProps; - img: React.HTMLProps; - input: React.ChangeTargetHTMLProps; - ins: React.HTMLProps; - kbd: React.HTMLProps; - keygen: React.HTMLProps; - label: React.HTMLProps; - legend: React.HTMLProps; - li: React.HTMLProps; - link: React.HTMLProps; - main: React.HTMLProps; - map: React.HTMLProps; - mark: React.HTMLProps; - menu: React.HTMLProps; - menuitem: React.HTMLProps; - meta: React.HTMLProps; - meter: React.HTMLProps; - nav: React.HTMLProps; - noindex: React.HTMLProps; - noscript: React.HTMLProps; - object: React.HTMLProps; - ol: React.HTMLProps; - optgroup: React.HTMLProps; - option: React.HTMLProps; - output: React.HTMLProps; - p: React.HTMLProps; - param: React.HTMLProps; - picture: React.HTMLProps; - pre: React.HTMLProps; - progress: React.HTMLProps; - q: React.HTMLProps; - rp: React.HTMLProps; - rt: React.HTMLProps; - ruby: React.HTMLProps; - s: React.HTMLProps; - samp: React.HTMLProps; - script: React.HTMLProps; - section: React.HTMLProps; - select: React.ChangeTargetHTMLProps; - small: React.HTMLProps; - source: React.HTMLProps; - span: React.HTMLProps; - strong: React.HTMLProps; - style: React.HTMLProps; - sub: React.HTMLProps; - summary: React.HTMLProps; - sup: React.HTMLProps; - table: React.HTMLProps; - tbody: React.HTMLProps; - td: React.HTMLProps; - textarea: React.ChangeTargetHTMLProps; - tfoot: React.HTMLProps; - th: React.HTMLProps; - thead: React.HTMLProps; - time: React.HTMLProps; - title: React.HTMLProps; - tr: React.HTMLProps; - track: React.HTMLProps; - u: React.HTMLProps; - ul: React.HTMLProps; - "var": React.HTMLProps; - video: React.HTMLProps; - wbr: React.HTMLProps; + a: React.DetailedHTMLProps, HTMLAnchorElement>; + abbr: React.DetailedHTMLProps, HTMLElement>; + address: React.DetailedHTMLProps, HTMLElement>; + area: React.DetailedHTMLProps, HTMLAreaElement>; + article: React.DetailedHTMLProps, HTMLElement>; + aside: React.DetailedHTMLProps, HTMLElement>; + audio: React.DetailedHTMLProps, HTMLAudioElement>; + b: React.DetailedHTMLProps, HTMLElement>; + base: React.DetailedHTMLProps, HTMLBaseElement>; + bdi: React.DetailedHTMLProps, HTMLElement>; + bdo: React.DetailedHTMLProps, HTMLElement>; + big: React.DetailedHTMLProps, HTMLElement>; + blockquote: React.DetailedHTMLProps, HTMLElement>; + body: React.DetailedHTMLProps, HTMLBodyElement>; + br: React.DetailedHTMLProps, HTMLBRElement>; + button: React.DetailedHTMLProps, HTMLButtonElement>; + canvas: React.DetailedHTMLProps, HTMLCanvasElement>; + caption: React.DetailedHTMLProps, HTMLElement>; + cite: React.DetailedHTMLProps, HTMLElement>; + code: React.DetailedHTMLProps, HTMLElement>; + col: React.DetailedHTMLProps, HTMLTableColElement>; + colgroup: React.DetailedHTMLProps, HTMLTableColElement>; + data: React.DetailedHTMLProps, HTMLElement>; + datalist: React.DetailedHTMLProps, HTMLDataListElement>; + dd: React.DetailedHTMLProps, HTMLElement>; + del: React.DetailedHTMLProps, HTMLElement>; + details: React.DetailedHTMLProps, HTMLElement>; + dfn: React.DetailedHTMLProps, HTMLElement>; + dialog: React.DetailedHTMLProps, HTMLElement>; + div: React.DetailedHTMLProps, HTMLDivElement>; + dl: React.DetailedHTMLProps, HTMLDListElement>; + dt: React.DetailedHTMLProps, HTMLElement>; + em: React.DetailedHTMLProps, HTMLElement>; + embed: React.DetailedHTMLProps, HTMLEmbedElement>; + fieldset: React.DetailedHTMLProps, HTMLFieldSetElement>; + figcaption: React.DetailedHTMLProps, HTMLElement>; + figure: React.DetailedHTMLProps, HTMLElement>; + footer: React.DetailedHTMLProps, HTMLElement>; + form: React.DetailedHTMLProps, HTMLFormElement>; + h1: React.DetailedHTMLProps, HTMLHeadingElement>; + h2: React.DetailedHTMLProps, HTMLHeadingElement>; + h3: React.DetailedHTMLProps, HTMLHeadingElement>; + h4: React.DetailedHTMLProps, HTMLHeadingElement>; + h5: React.DetailedHTMLProps, HTMLHeadingElement>; + h6: React.DetailedHTMLProps, HTMLHeadingElement>; + head: React.DetailedHTMLProps, HTMLHeadElement>; + header: React.DetailedHTMLProps, HTMLElement>; + hgroup: React.DetailedHTMLProps, HTMLElement>; + hr: React.DetailedHTMLProps, HTMLHRElement>; + html: React.DetailedHTMLProps, HTMLHtmlElement>; + i: React.DetailedHTMLProps, HTMLElement>; + iframe: React.DetailedHTMLProps, HTMLIFrameElement>; + img: React.DetailedHTMLProps, HTMLImageElement>; + input: React.DetailedHTMLProps, HTMLInputElement>; + ins: React.DetailedHTMLProps, HTMLModElement>; + kbd: React.DetailedHTMLProps, HTMLElement>; + keygen: React.DetailedHTMLProps, HTMLElement>; + label: React.DetailedHTMLProps, HTMLLabelElement>; + legend: React.DetailedHTMLProps, HTMLLegendElement>; + li: React.DetailedHTMLProps, HTMLLIElement>; + link: React.DetailedHTMLProps, HTMLLinkElement>; + main: React.DetailedHTMLProps, HTMLElement>; + map: React.DetailedHTMLProps, HTMLMapElement>; + mark: React.DetailedHTMLProps, HTMLElement>; + menu: React.DetailedHTMLProps, HTMLElement>; + menuitem: React.DetailedHTMLProps, HTMLElement>; + meta: React.DetailedHTMLProps, HTMLMetaElement>; + meter: React.DetailedHTMLProps, HTMLElement>; + nav: React.DetailedHTMLProps, HTMLElement>; + noindex: React.DetailedHTMLProps, HTMLElement>; + noscript: React.DetailedHTMLProps, HTMLElement>; + object: React.DetailedHTMLProps, HTMLObjectElement>; + ol: React.DetailedHTMLProps, HTMLOListElement>; + optgroup: React.DetailedHTMLProps, HTMLOptGroupElement>; + option: React.DetailedHTMLProps, HTMLOptionElement>; + output: React.DetailedHTMLProps, HTMLElement>; + p: React.DetailedHTMLProps, HTMLParagraphElement>; + param: React.DetailedHTMLProps, HTMLParamElement>; + picture: React.DetailedHTMLProps, HTMLElement>; + pre: React.DetailedHTMLProps, HTMLPreElement>; + progress: React.DetailedHTMLProps, HTMLProgressElement>; + q: React.DetailedHTMLProps, HTMLQuoteElement>; + rp: React.DetailedHTMLProps, HTMLElement>; + rt: React.DetailedHTMLProps, HTMLElement>; + ruby: React.DetailedHTMLProps, HTMLElement>; + s: React.DetailedHTMLProps, HTMLElement>; + samp: React.DetailedHTMLProps, HTMLElement>; + script: React.DetailedHTMLProps, HTMLScriptElement>; + section: React.DetailedHTMLProps, HTMLElement>; + select: React.DetailedHTMLProps, HTMLSelectElement>; + small: React.DetailedHTMLProps, HTMLElement>; + source: React.DetailedHTMLProps, HTMLSourceElement>; + span: React.DetailedHTMLProps, HTMLSpanElement>; + strong: React.DetailedHTMLProps, HTMLElement>; + style: React.DetailedHTMLProps, HTMLStyleElement>; + sub: React.DetailedHTMLProps, HTMLElement>; + summary: React.DetailedHTMLProps, HTMLElement>; + sup: React.DetailedHTMLProps, HTMLElement>; + table: React.DetailedHTMLProps, HTMLTableElement>; + tbody: React.DetailedHTMLProps, HTMLTableSectionElement>; + td: React.DetailedHTMLProps, HTMLTableDataCellElement>; + textarea: React.DetailedHTMLProps, HTMLTextAreaElement>; + tfoot: React.DetailedHTMLProps, HTMLTableSectionElement>; + th: React.DetailedHTMLProps, HTMLTableHeaderCellElement>; + thead: React.DetailedHTMLProps, HTMLTableSectionElement>; + time: React.DetailedHTMLProps, HTMLElement>; + title: React.DetailedHTMLProps, HTMLTitleElement>; + tr: React.DetailedHTMLProps, HTMLTableRowElement>; + track: React.DetailedHTMLProps, HTMLTrackElement>; + u: React.DetailedHTMLProps, HTMLElement>; + ul: React.DetailedHTMLProps, HTMLUListElement>; + "var": React.DetailedHTMLProps, HTMLElement>; + video: React.DetailedHTMLProps, HTMLVideoElement>; + wbr: React.DetailedHTMLProps, HTMLElement>; // SVG svg: React.SVGProps; diff --git a/types/react/test/index.ts b/types/react/test/index.ts index 66b8c24bac..28db79f238 100644 --- a/types/react/test/index.ts +++ b/types/react/test/index.ts @@ -34,20 +34,20 @@ interface MyComponent extends React.Component { reset(): void; } -var props: Props & React.ClassAttributes<{}> = { +const props: Props & React.ClassAttributes<{}> = { key: 42, ref: "myComponent42", hello: "world", foo: 42 }; -var container: Element = document.createElement("div"); +const container: Element = document.createElement("div"); // // Top-Level API // -------------------------------------------------------------------------- -var ClassicComponent: React.ClassicComponentClass = +const ClassicComponent: React.ClassicComponentClass = React.createClass({ displayName: "ClassicComponent", getDefaultProps() { @@ -77,7 +77,6 @@ var ClassicComponent: React.ClassicComponentClass = class ModernComponent extends React.Component implements MyComponent, React.ChildContextProvider { - static propTypes: React.ValidationMap = { foo: React.PropTypes.number }; @@ -139,13 +138,15 @@ interface SCProps { function StatelessComponent(props: SCProps) { return props.foo ? React.DOM.div(null, props.foo) : null; -}; -namespace StatelessComponent { - export var displayName = "StatelessComponent"; - export var defaultProps = { foo: 42 }; } -var StatelessComponent2: React.SFC = +// tslint:disable-next-line:no-namespace +namespace StatelessComponent { + export const displayName = "StatelessComponent"; + export const defaultProps = { foo: 42 }; +} + +const StatelessComponent2: React.SFC = // props is contextually typed props => React.DOM.div(null, props.foo); StatelessComponent2.displayName = "StatelessComponent2"; @@ -153,142 +154,140 @@ StatelessComponent2.defaultProps = { foo: 42 }; -var StatelessComponent3: React.SFC = +const StatelessComponent3: React.SFC = // allows usage of props.children // allows null return props => props.foo ? React.DOM.div(null, props.foo, props.children) : null; // React.createFactory -var factory: React.CFactory = +const factory: React.CFactory = React.createFactory(ModernComponent); -var factoryElement: React.CElement = +const factoryElement: React.CElement = factory(props); -var statelessFactory: React.SFCFactory = +const statelessFactory: React.SFCFactory = React.createFactory(StatelessComponent); -var statelessFactoryElement: React.SFCElement = +const statelessFactoryElement: React.SFCElement = statelessFactory(props); -var classicFactory: React.ClassicFactory = +const classicFactory: React.ClassicFactory = React.createFactory(ClassicComponent); -var classicFactoryElement: React.ClassicElement = +const classicFactoryElement: React.ClassicElement = classicFactory(props); -var domFactory: React.DOMFactory, Element> = - React.createFactory("foo"); -var domFactoryElement: React.DOMElement, Element> = +const domFactory: React.DOMFactory, Element> = + React.createFactory("div"); +const domFactoryElement: React.DOMElement, Element> = domFactory(); // React.createElement -var element: React.CElement = - React.createElement(ModernComponent, props); -var elementNoState: React.CElement = - React.createElement(ModernComponentNoState, props); -var statelessElement: React.SFCElement = - React.createElement(StatelessComponent, props); -var classicElement: React.ClassicElement = - React.createElement(ClassicComponent, props); -var domElement: React.ReactHTMLElement = - React.createElement("div"); -var literalHtmlElement = React.createElement("input", { type: "text" }); -var literalSvgElement = React.createElement("svg", { accentHeight: 12 }); +const element: React.CElement = React.createElement(ModernComponent, props); +const elementNoState: React.CElement = React.createElement(ModernComponentNoState, props); +const statelessElement: React.SFCElement = React.createElement(StatelessComponent, props); +const classicElement: React.ClassicElement = React.createElement(ClassicComponent, props); +const domElement: React.DOMElement, HTMLDivElement> = React.createElement("div"); +const htmlElement = React.createElement("input", { type: "text" }); +const svgElement = React.createElement("svg", { accentHeight: 12 }); -declare let cardhtml: React.HTMLProps; -declare let accessKey: string; -var nonLiteralElement = React.createElement(accessKey, cardhtml); +let customProps: React.HTMLProps = props; +let customDomElement: string = "my-element"; +const nonLiteralElement = React.createElement(customDomElement, customProps); // React.cloneElement -var clonedElement: React.CElement = - React.cloneElement(element, { foo: 43 }); +const clonedElement: React.CElement = React.cloneElement(element, { foo: 43 }); React.cloneElement(element, {}); React.cloneElement(element, {}, null); -var clonedElement2: React.CElement = +const clonedElement2: React.CElement = // known problem: cloning with key or ref requires cast - React.cloneElement(element, >{ + React.cloneElement(element, { ref: c => c && c.reset() - }); -var clonedElement3: React.CElement = - React.cloneElement(element, <{ foo: number } & React.Attributes>{ + } as React.ClassAttributes); +const clonedElement3: React.CElement = + React.cloneElement(element, { key: "8eac7", foo: 55 - }); -var clonedStatelessElement: React.SFCElement = + } as { foo: number } & React.Attributes); +const clonedStatelessElement: React.SFCElement = // known problem: cloning with optional props don't work properly // workaround: cast to actual props type - React.cloneElement(statelessElement, { foo: 44 }); -var clonedClassicElement: React.ClassicElement = + React.cloneElement(statelessElement, { foo: 44 } as SCProps); +const clonedClassicElement: React.ClassicElement = React.cloneElement(classicElement, props); -var clonedDOMElement: React.ReactHTMLElement = +// Clone base DOMElement +const clonedDOMElement: React.DOMElement, HTMLDivElement> = React.cloneElement(domElement, { - className: "clonedElement" + className: "clonedDOMElement" + }); +// Clone ReactHTMLElement +const clonedHtmlElement: React.ReactHTMLElement = + React.cloneElement(htmlElement, { + className: "clonedHTMLElement" + }); +// Clone ReactSVGElement +const clonedSvgElement: React.ReactSVGElement = + React.cloneElement(svgElement, { + className: "clonedVGElement" }); // React.render -var component: ModernComponent = - ReactDOM.render(element, container); -var componentNullContainer: ModernComponent = - ReactDOM.render(element, null); +const component: ModernComponent = ReactDOM.render(element, container); +const componentNullContainer: ModernComponent = ReactDOM.render(element, null); -var componentElementOrNull: ModernComponent = - ReactDOM.render(element, document.getElementById("anelement")); -var componentNoState: ModernComponentNoState = - ReactDOM.render(elementNoState, container); -var componentNoStateElementOrNull: ModernComponentNoState = - ReactDOM.render(elementNoState, document.getElementById("anelement")); -var classicComponent: React.ClassicComponent = - ReactDOM.render(classicElement, container); -var domComponent: Element = - ReactDOM.render(domElement, container); +const componentElementOrNull: ModernComponent = ReactDOM.render(element, document.getElementById("anelement")); +const componentNoState: ModernComponentNoState = ReactDOM.render(elementNoState, container); +const componentNoStateElementOrNull: ModernComponentNoState = ReactDOM.render(elementNoState, document.getElementById("anelement")); +const classicComponent: React.ClassicComponent = ReactDOM.render(classicElement, container); +const domComponent: Element = ReactDOM.render(domElement, container); // Other Top-Level API -var unmounted: boolean = ReactDOM.unmountComponentAtNode(container); -var str: string = ReactDOMServer.renderToString(element); -var markup: string = ReactDOMServer.renderToStaticMarkup(element); -var notValid: boolean = React.isValidElement(props); // false -var isValid = React.isValidElement(element); // true -var domNode: Element = ReactDOM.findDOMNode(component); +const unmounted: boolean = ReactDOM.unmountComponentAtNode(container); +const str: string = ReactDOMServer.renderToString(element); +const markup: string = ReactDOMServer.renderToStaticMarkup(element); +const notValid: boolean = React.isValidElement(props); // false +const isValid = React.isValidElement(element); // true +let domNode: Element = ReactDOM.findDOMNode(component); domNode = ReactDOM.findDOMNode(domNode); // // React Elements // -------------------------------------------------------------------------- -var type: React.ComponentClass = element.type; -var elementProps: Props = element.props; -var key = element.key; +const type: React.ComponentClass = element.type; +const elementProps: Props = element.props; +const key = element.key; // // React Components // -------------------------------------------------------------------------- -var displayName: string | undefined = ClassicComponent.displayName; -var defaultProps: Props = ClassicComponent.getDefaultProps ? ClassicComponent.getDefaultProps() : {}; -var propTypes: React.ValidationMap | undefined = ClassicComponent.propTypes; +const displayName: string | undefined = ClassicComponent.displayName; +const defaultProps: Props = ClassicComponent.getDefaultProps ? ClassicComponent.getDefaultProps() : {} as Props; +const propTypes: React.ValidationMap | undefined = ClassicComponent.propTypes; // // Component API // -------------------------------------------------------------------------- // modern -var componentState: State = component.state; +const componentState: State = component.state; component.setState({ inputValue: "!!!" }); component.forceUpdate(); // classic -var isMounted: boolean = classicComponent.isMounted(); +const isMounted: boolean = classicComponent.isMounted(); classicComponent.replaceState({ inputValue: "???", seconds: 60 }); -var myComponent = component; +const myComponent = component as MyComponent; myComponent.reset(); // // Refs // -------------------------------------------------------------------------- -interface RCProps { -} +// tslint:disable:no-empty-interface +interface RCProps { } class RefComponent extends React.Component { static create = React.createFactory(RefComponent); @@ -296,33 +295,33 @@ class RefComponent extends React.Component { } } -var componentRef: RefComponent | null = new RefComponent(); +let componentRef: RefComponent | null = new RefComponent(); RefComponent.create({ ref: "componentRef" }); // type of c should be inferred RefComponent.create({ ref: c => componentRef = c }); componentRef.refMethod(); -var domNodeRef: Element | null; +let domNodeRef: Element | null; React.DOM.div({ ref: "domRef" }); // type of node should be inferred React.DOM.div({ ref: node => domNodeRef = node }); -var inputNodeRef: HTMLInputElement | null; -React.DOM.input({ ref: node => inputNodeRef = node }); +let inputNodeRef: HTMLInputElement | null; +React.DOM.input({ ref: node => inputNodeRef = node as HTMLInputElement }); // // Attributes // -------------------------------------------------------------------------- -var children: any[] = ["Hello world", [null], React.DOM.span(null)]; -var divStyle: React.CSSProperties = { // CSSProperties +const children: any[] = ["Hello world", [null], React.DOM.span(null)]; +const divStyle: React.CSSProperties = { // CSSProperties flex: "1 1 main-size", backgroundImage: "url('hello.png')" }; -var htmlAttr: React.HTMLProps = { +const htmlAttr: React.HTMLProps = { key: 36, ref: "htmlComponent", - children: children, + children, className: "test-attr", style: divStyle, slot: "HTMLComponent", @@ -375,12 +374,11 @@ React.DOM.svg({ }) ); - // // React.PropTypes // -------------------------------------------------------------------------- -var PropTypesSpecification: React.ComponentSpec = { +const PropTypesSpecification: React.ComponentSpec = { propTypes: { optionalArray: React.PropTypes.array, optionalBool: React.PropTypes.bool, @@ -405,7 +403,7 @@ var PropTypesSpecification: React.ComponentSpec = { }), requiredFunc: React.PropTypes.func.isRequired, requiredAny: React.PropTypes.any.isRequired, - customProp: function (props: any, propName: string, componentName: string): Error | null { + customProp(props: any, propName: string, componentName: string): Error | null { if (!/matchme/.test(props[propName])) { return new Error("Validation failed!"); } @@ -432,7 +430,7 @@ var PropTypesSpecification: React.ComponentSpec = { // ContextTypes // -------------------------------------------------------------------------- -var ContextTypesSpecification: React.ComponentSpec = { +const ContextTypesSpecification: React.ComponentSpec = { contextTypes: { optionalArray: React.PropTypes.array, optionalBool: React.PropTypes.bool, @@ -457,7 +455,7 @@ var ContextTypesSpecification: React.ComponentSpec = { }), requiredFunc: React.PropTypes.func.isRequired, requiredAny: React.PropTypes.any.isRequired, - customProp: function (props: any, propName: string, componentName: string): Error | null { + customProp(props: any, propName: string, componentName: string): Error | null { if (!/matchme/.test(props[propName])) { return new Error("Validation failed!"); } @@ -473,13 +471,13 @@ var ContextTypesSpecification: React.ComponentSpec = { // React.Children // -------------------------------------------------------------------------- -var mappedChildrenArray: number[] = - React.Children.map(children, (child) => { return 42; }); +const mappedChildrenArray: number[] = + React.Children.map(children, (child) => 42); React.Children.forEach(children, (child) => { }); -var nChildren: number = React.Children.count(children); -var onlyChild: React.ReactElement = React.Children.only(React.DOM.div()); // ok +const nChildren: number = React.Children.count(children); +let onlyChild: React.ReactElement = React.Children.only(React.DOM.div()); // ok onlyChild = React.Children.only([null, [[["Hallo"], true]], false]); // error -var childrenToArray: React.ReactChild[] = React.Children.toArray(children); +const childrenToArray: React.ReactChild[] = React.Children.toArray(children); // // Example from http://facebook.github.io/react/ @@ -554,13 +552,13 @@ React.createFactory(CSSTransitionGroup)({ // -------------------------------------------------------------------------- React.createClass({ mixins: [LinkedStateMixin], - getInitialState: function () { + getInitialState() { return { isChecked: false, message: "hello!" }; }, - render: function () { + render() { return React.DOM.div(null, React.DOM.input({ type: "checkbox", @@ -579,7 +577,7 @@ React.createClass({ // -------------------------------------------------------------------------- Perf.start(); Perf.stop(); -var measurements = Perf.getLastMeasurements(); +const measurements = Perf.getLastMeasurements(); Perf.printInclusive(measurements); Perf.printExclusive(measurements); Perf.printWasted(measurements); @@ -607,37 +605,37 @@ Perf.printDOM(); // -------------------------------------------------------------------------- React.createClass({ mixins: [PureRenderMixin], - render: function () { return React.DOM.div(null); } + render() { return React.DOM.div(null); } }); // // TestUtils addon // -------------------------------------------------------------------------- -var inst: ModernComponent = TestUtils.renderIntoDocument(element); -var node: Element = TestUtils.renderIntoDocument(React.DOM.div()); +const inst: ModernComponent = TestUtils.renderIntoDocument(element); +const node: Element = TestUtils.renderIntoDocument(React.DOM.div()); TestUtils.Simulate.click(node); TestUtils.Simulate.change(node); TestUtils.Simulate.keyDown(node, { key: "Enter", cancelable: false }); -var renderer: TestUtils.ShallowRenderer = TestUtils.createRenderer(); +const renderer: TestUtils.ShallowRenderer = TestUtils.createRenderer(); renderer.render(React.createElement(Timer)); -var output: React.ReactElement> = +const output: React.ReactElement> = renderer.getRenderOutput(); -var foundComponent: ModernComponent = TestUtils.findRenderedComponentWithType( +const foundComponent: ModernComponent = TestUtils.findRenderedComponentWithType( inst, ModernComponent); -var foundComponents: ModernComponent[] = TestUtils.scryRenderedComponentsWithType( +const foundComponents: ModernComponent[] = TestUtils.scryRenderedComponentsWithType( inst, ModernComponent); // ReactTestUtils custom type guards -var emptyElement1: React.ReactElement<{}> = React.createElement(ModernComponent); +const emptyElement1: React.ReactElement<{}> = React.createElement(ModernComponent); if (TestUtils.isElementOfType(emptyElement1, StatelessComponent)) { emptyElement1.props.foo; } -var emptyElement2: React.ReactElement<{}> = React.createElement(StatelessComponent); +const emptyElement2: React.ReactElement<{}> = React.createElement(StatelessComponent); if (TestUtils.isElementOfType(emptyElement2, StatelessComponent)) { emptyElement2.props.foo; } @@ -666,7 +664,11 @@ React.createFactory(TransitionGroup)({ component: "div" }); // => [1, 2, {a: [12, 13, 14, 15]}] let obj = { a: 5, b: 3 }; - let newObj = update(obj, { b: { $apply: function (x) { return x * 2; } } }); + let newObj = update(obj, { + b: { + $apply: (x) => x * 2 + } + }); // => {a: 5, b: 6} let newObj2 = update(obj, { b: { $set: obj.b * 2 } }); @@ -678,16 +680,16 @@ React.createFactory(TransitionGroup)({ component: "div" }); // The SyntheticEvent.target.value should be accessible for onChange // -------------------------------------------------------------------------- class SyntheticEventTargetValue extends React.Component<{}, { value: string }> { - constructor(props:{}) { - super(props); - this.state = { value: 'a' }; - } - render() { - return React.DOM.textarea({ - value: this.state.value, - onChange: e => this.setState({value: e.target.value}) - }); - } + constructor(props: {}) { + super(props); + this.state = { value: 'a' }; + } + render() { + return React.DOM.textarea({ + value: this.state.value, + onChange: e => this.setState({ value: e.target.value }) + }); + } } React.DOM.input({ @@ -702,8 +704,8 @@ React.DOM.input({ type InputChangeEvent = React.ChangeEvent; type InputFormEvent = React.FormEvent; -const changeEvent:InputChangeEvent = undefined as any; -const formEvent:InputFormEvent = changeEvent; +const changeEvent: InputChangeEvent = undefined as any; +const formEvent: InputFormEvent = changeEvent; // defaultProps should be optional of props { @@ -719,3 +721,13 @@ const formEvent:InputFormEvent = changeEvent; } const VariableWithAClass: React.ComponentClass = ComponentWithDefaultProps; } + +// complex React.DOMElement type +declare var x: React.DOMElement<{ + className: string; + style: { + height: string; + overflowY: "auto"; + transition: string; + }; +}, Element>; diff --git a/types/react/test/tsx.tsx b/types/react/test/tsx.tsx index 487700495e..dd91b5a0bd 100644 --- a/types/react/test/tsx.tsx +++ b/types/react/test/tsx.tsx @@ -3,8 +3,8 @@ import * as React from "react"; interface SCProps { foo?: number; } -var StatelessComponent: React.SFC = ({ foo }: SCProps) => { - return

{ foo }
; +const StatelessComponent: React.SFC = ({ foo }: SCProps) => { + return
{foo}
; }; StatelessComponent.displayName = "StatelessComponent3"; StatelessComponent.defaultProps = { @@ -12,8 +12,8 @@ StatelessComponent.defaultProps = { }; ; -var StatelessComponent2: React.SFC = ({ foo, children }) => { - return
{ foo }{ children }
; +const StatelessComponent2: React.SFC = ({ foo, children }) => { + return
{foo}{children}
; }; StatelessComponent2.displayName = "StatelessComponent4"; StatelessComponent2.defaultProps = { @@ -37,10 +37,9 @@ StatelessComponent2.defaultProps = { defaultValue="some value" contentEditable suppressContentEditableWarning - > +> foo -
- +; interface Props { hello: string; @@ -50,15 +49,15 @@ interface State { } class ComponentWithPropsAndState extends React.Component { } - +; class ComponentWithoutState extends React.Component { } - +; class ComponentWithoutPropsAndState extends React.Component { } - +; const StatelessComponentWithoutProps: React.SFC = (props) => { return
; diff --git a/types/react/tslint.json b/types/react/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/react/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/reactstrap/lib/Input.d.ts b/types/reactstrap/lib/Input.d.ts index 816add1137..c9d7a1329d 100644 --- a/types/reactstrap/lib/Input.d.ts +++ b/types/reactstrap/lib/Input.d.ts @@ -27,7 +27,7 @@ type InputType = // Intermediate interface to "redefine" the type of size to string // size:number => size:any => size:string -interface Intermediate extends React.ChangeTargetHTMLProps { +interface Intermediate extends React.InputHTMLAttributes { size?: any; } diff --git a/types/reactstrap/lib/Label.d.ts b/types/reactstrap/lib/Label.d.ts index 04cf76e3a0..383378dc4e 100644 --- a/types/reactstrap/lib/Label.d.ts +++ b/types/reactstrap/lib/Label.d.ts @@ -1,6 +1,6 @@ import { ColumnProps } from './Col'; -interface Intermediate extends React.ChangeTargetHTMLProps { +interface Intermediate extends React.LabelHTMLAttributes { size?: any; } diff --git a/types/redux-form/index.d.ts b/types/redux-form/index.d.ts index acf1dcc857..8a51117530 100644 --- a/types/redux-form/index.d.ts +++ b/types/redux-form/index.d.ts @@ -19,12 +19,12 @@ export interface DataShape { } export type FormErrors = { - [P in keyof FormData]?: ReactElement | string; -} & { _error?: string }; + [P in keyof FormData]?: ReactElement | string | { _error?: string }; +}; export type FormWarnings = { - [P in keyof FormData]?: ReactElement | string; -} & { _warning?: string }; + [P in keyof FormData]?: ReactElement | string | { _warning?: string }; +}; /** * A component class or stateless function component. diff --git a/types/redux-form/lib/Field.d.ts b/types/redux-form/lib/Field.d.ts index d2439d87a6..ecef15b4c7 100644 --- a/types/redux-form/lib/Field.d.ts +++ b/types/redux-form/lib/Field.d.ts @@ -278,7 +278,7 @@ interface WrappedFieldMetaProps { * The error for this field if its value is not passing validation. Both * synchronous, asynchronous, and submit validation errors will be reported here. */ - error?: string; + error?: any; /** * The name of the form. Could be useful if you want to manually dispatch actions. @@ -329,5 +329,5 @@ interface WrappedFieldMetaProps { /** * The warning for this field if its value is not passing warning validation. */ - warning?: string; + warning?: any; } diff --git a/types/request-promise-native/index.d.ts b/types/request-promise-native/index.d.ts index e7d1e29cc1..151120dcd4 100644 --- a/types/request-promise-native/index.d.ts +++ b/types/request-promise-native/index.d.ts @@ -8,11 +8,8 @@ declare module 'request-promise-native' { import http = require('http'); namespace requestPromise { - interface RequestPromise extends request.Request { - then(onfulfilled?: (value: any) => TResult | PromiseLike, onrejected?: (reason: any) => TResult | PromiseLike | void): Promise; - catch(onrejected?: (reason: any) => any | PromiseLike | void): Promise; + interface RequestPromise extends request.Request, Promise { promise(): Promise; - cancel(): void; } interface RequestPromiseOptions extends request.CoreOptions { diff --git a/types/request-promise/index.d.ts b/types/request-promise/index.d.ts index 393abacbe7..6df644e0bc 100644 --- a/types/request-promise/index.d.ts +++ b/types/request-promise/index.d.ts @@ -10,15 +10,8 @@ import errors = require('request-promise/errors'); import Promise = require('bluebird'); declare namespace requestPromise { - interface RequestPromise extends request.Request { - then(onfulfilled?: (value: any) => TResult | PromiseLike, onrejected?: (reason: any) => void | TResult | PromiseLike): Promise; - catch(onrejected?: (reason: any) => any | PromiseLike): Promise; - catch(type: errors.RequestErrorConstructor, onrejected?: (reason: errors.RequestError) => void): Promise; - catch(type: errors.StatusCodeErrorConstructor, onrejected?: (reason: errors.StatusCodeError) => void): Promise; - catch(type: errors.TransformErrorConstructor, onrejected?: (reason: errors.TransformError) => void): Promise; - finally(handler: () => TResult | PromiseLike): Promise; + interface RequestPromise extends request.Request, Promise { promise(): Promise; - cancel(): void; } interface RequestPromiseOptions extends request.CoreOptions { diff --git a/types/restify-cors-middleware/index.d.ts b/types/restify-cors-middleware/index.d.ts new file mode 100644 index 0000000000..d7b92d25a9 --- /dev/null +++ b/types/restify-cors-middleware/index.d.ts @@ -0,0 +1,42 @@ +// Type definitions for restify-cors-middleware 1.0 +// Project: https://github.com/TabDigital/restify-cors-middleware +// Definitions by: Daniel Thunell +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.3 + +/// + +import { RequestHandler } from 'restify'; + +declare namespace corsMiddleware { + interface Options { + origins: string[]; + allowHeaders: string[]; + exposeHeaders: string[]; + credentials?: boolean; + preflightMaxAge?: number; + preflightStrategy?: any; + } + + interface CorsMiddleware { + actual: RequestHandler; + preflight: RequestHandler; + } +} + +/** + * @public + * @param {Object} options an options object + * @param {Array} [options.origins] an array of whitelisted origins, can be + * both strings and regular expressions + * @param {Boolean} [options.credentials] if true, uses creds + * @param {Array} [options.allowHeaders] user defined headers to allow + * @param {Array} [options.exposeHeaders] user defined headers to expose + * @param {Number} [options.preflightMaxAge] ms to cache preflight requests + * @param {Object | Function} [options.preflightStrategy] + * customize preflight request handling + * @returns {Object} returns an object with actual and preflight handlers + */ +declare function corsMiddleware(options: corsMiddleware.Options): corsMiddleware.CorsMiddleware; + +export = corsMiddleware; diff --git a/types/restify-cors-middleware/restify-cors-middleware-tests.ts b/types/restify-cors-middleware/restify-cors-middleware-tests.ts new file mode 100644 index 0000000000..f18cb39e7a --- /dev/null +++ b/types/restify-cors-middleware/restify-cors-middleware-tests.ts @@ -0,0 +1,10 @@ +import corsMiddleware = require('restify-cors-middleware'); + +const options: corsMiddleware.Options = { + preflightMaxAge: 5, + origins: ['http://api.myapp.com', 'http://web.myapp.com'], + allowHeaders: ['API-Token'], + exposeHeaders: ['API-Token-Expiry'] +}; + +const cors: corsMiddleware.CorsMiddleware = corsMiddleware(options); diff --git a/types/restify-cors-middleware/tsconfig.json b/types/restify-cors-middleware/tsconfig.json new file mode 100644 index 0000000000..ba47700d0a --- /dev/null +++ b/types/restify-cors-middleware/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "restify-cors-middleware-tests.ts" + ] +} \ No newline at end of file diff --git a/types/restify-cors-middleware/tslint.json b/types/restify-cors-middleware/tslint.json new file mode 100644 index 0000000000..30a1bdde2e --- /dev/null +++ b/types/restify-cors-middleware/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} \ No newline at end of file diff --git a/types/restify-plugins/index.d.ts b/types/restify-plugins/index.d.ts index 5f6be60f38..d461358bdc 100644 --- a/types/restify-plugins/index.d.ts +++ b/types/restify-plugins/index.d.ts @@ -79,17 +79,10 @@ export interface AuditLoggerOptions { body?: boolean; } -export interface AuditLoggerReturns { - req: Request; - res: Response; - route: Route; - err: Error; -} - /** * An audit logger for recording all handled requests */ -export function auditLogger(options: AuditLoggerOptions): AuditLoggerReturns; +export function auditLogger(options: AuditLoggerOptions): (...args: any[]) => void; /** * Authorization header @@ -395,13 +388,6 @@ export interface MetricsCallbackOptions { connectionState: TMetricsCallback; } -export interface MetricsReturns { - req: Request; - res: Response; - route: Route; - err: Error; -} - /** * Listens to the server's after event and emits information about that request (5.x compatible only). * @@ -412,7 +398,7 @@ export interface MetricsReturns { * })); * ``` */ -export function metrics(opts: {server: Server}, callback: (options: MetricsCallback) => any ): MetricsReturns; +export function metrics(opts: {server: Server}, callback: (options: MetricsCallback) => any ): (...args: any[]) => void; /** * Parse the client's request for an OAUTH2 access tokensTable diff --git a/types/restify/index.d.ts b/types/restify/index.d.ts index a7781f933c..c4421ca625 100644 --- a/types/restify/index.d.ts +++ b/types/restify/index.d.ts @@ -1,5 +1,5 @@ -// Type definitions for restify 4.3 -// Project: https://github.com/mcavage/node-restify +// Type definitions for restify 5.0 +// Project: https://github.com/restify/node-restify // Definitions by: Bret Little , Steve Hipwell // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.1 @@ -10,21 +10,425 @@ import http = require('http'); import Logger = require('bunyan'); import url = require('url'); -export interface addressInterface { +export interface BunyanOptions { + properties: any; + + serializers: any; + + headers: any; + + log: Logger; +} + +export interface ServerOptions { + ca?: any; + + certificate?: any; + + key?: any; + + passphrase?: string; + + requestCert?: boolean; + + ciphers?: string; + + formatters?: any; + + log?: Logger; + + name?: string; + + spdy?: any; + + version?: string; + + versions?: string[]; + + handleUpgrades?: boolean; + + httpsServerOptions?: any; + + handleUncaughtExceptions?: boolean; + + router?: Router; + + socketio?: boolean; + + noWriteContinue?: boolean; + + rejectUnauthorized?: boolean; +} + +export interface AddressInterface { port: number; + family: string; + address: string; } -export interface requestFileInterface { +export class Server { + /** + * Creates a new Server. + * @public + * @class + * @param {Object} options an options object + */ + constructor(options?: ServerOptions); +} + +export interface Server extends http.Server { + /** + * Returns the server address. Wraps node's address(). + * @public + * @function address + * @returns {String} + */ + address(): AddressInterface; + + /** + * Gets the server up and listening. Wraps node's listen(). + * + * You can call like: + * server.listen(80) + * server.listen(80, '127.0.0.1') + * server.listen('/tmp/server.sock') + * + * @public + * @function listen + * @throws {TypeError} + * @param {Function} callback optionally get notified when listening. + * @returns {undefined} + */ + listen(...args: any[]): any; + + /** + * Shuts down this server, and invokes callback (optionally) when done. + * Wraps node's close(). + * @public + * @function close + * @param {Function} callback optional callback to invoke when done. + * @returns {undefined} + */ + close(...args: any[]): any; + + /** + * Returns the number of currently inflight requests. + * @public + * @function inflightRequests + * @returns {Number} + */ + inflightRequests(): number; + + /** + * Mounts a chain on the given path against this HTTP verb + * + * @public + * @function del + * @param {String | Object} opts if string, the URL to handle. + * if options, the URL to handle, at minimum. + * @returns {Route} the newly created route. + */ + del(opts: string | RegExp | RouteOptions, ...handlers: RequestHandlerType[]): Route | boolean; + + /** + * Mounts a chain on the given path against this HTTP verb + * + * @public + * @function get + * @param {String | Object} opts if string, the URL to handle. + * if options, the URL to handle, at minimum. + * @returns {Route} the newly created route. + */ + get(opts: string | RegExp | RouteOptions, ...handlers: RequestHandlerType[]): Route | boolean; + + /** + * Mounts a chain on the given path against this HTTP verb + * + * @public + * @function head + * @param {String | Object} opts if string, the URL to handle. + * if options, the URL to handle, at minimum. + * @returns {Route} the newly created route. + */ + head(opts: string | RegExp | RouteOptions, ...handlers: RequestHandlerType[]): Route | boolean; + + /** + * Mounts a chain on the given path against this HTTP verb + * + * @public + * @function opts + * @param {String | Object} opts if string, the URL to handle. + * if options, the URL to handle, at minimum. + * @returns {Route} the newly created route. + */ + opts(opts: string | RegExp | RouteOptions, ...handlers: RequestHandlerType[]): Route | boolean; + + /** + * Mounts a chain on the given path against this HTTP verb + * + * @public + * @function post + * @param {String | Object} opts if string, the URL to handle. + * if options, the URL to handle, at minimum. + * @returns {Route} the newly created route. + */ + post(opts: string | RegExp | RouteOptions, ...handlers: RequestHandlerType[]): Route | boolean; + + /** + * Mounts a chain on the given path against this HTTP verb + * + * @public + * @function put + * @param {String | Object} opts if string, the URL to handle. + * if options, the URL to handle, at minimum. + * @returns {Route} the newly created route. + */ + put(opts: string | RegExp | RouteOptions, ...handlers: RequestHandlerType[]): Route | boolean; + + /** + * Mounts a chain on the given path against this HTTP verb + * + * @public + * @function patch + * @param {String | Object} opts if string, the URL to handle. + * if options, the URL to handle, at minimum. + * @returns {Route} the newly created route. + */ + patch(opts: string | RegExp | RouteOptions, ...handlers: RequestHandlerType[]): Route | boolean; + + /** + * Minimal port of the functionality offered by Express.js Route Param + * Pre-conditions + * @link http://expressjs.com/guide.html#route-param%20pre-conditions + * + * This basically piggy-backs on the `server.use` method. It attaches a + * new middleware function that only fires if the specified parameter exists + * in req.params + * + * Exposes an API: + * server.param("user", function (req, res, next) { + * // load the user's information here, always making sure to call next() + * }); + * + * @public + * @function param + * @param {String} name The name of the URL param to respond to + * @param {Function} fn The middleware function to execute + * @returns {Object} returns self + */ + param(name: string, fn: RequestHandler): Server; + + /** + * Piggy-backs on the `server.use` method. It attaches a new middleware + * function that only fires if the specified version matches the request. + * + * Note that if the client does not request a specific version, the middleware + * function always fires. If you don't want this set a default version with a + * pre handler on requests where the client omits one. + * + * Exposes an API: + * server.versionedUse("version", function (req, res, next, ver) { + * // do stuff that only applies to routes of this API version + * }); + * + * @public + * @function versionedUse + * @param {String|Array} versions the version(s) the URL to respond to + * @param {Function} fn the middleware function to execute, the + * fourth parameter will be the selected + * version + * @returns {undefined} + */ + versionedUse(versions: string | string[], fn: RequestHandler): Server; + + /** + * Removes a route from the server. + * You pass in the route 'blob' you got from a mount call. + * @public + * @function rm + * @throws {TypeError} on bad input. + * @param {String} route the route name. + * @returns {Boolean} true if route was removed, false if not. + */ + rm(route: string): boolean; + + /** + * Installs a list of handlers to run _before_ the "normal" handlers of all + * routes. + * + * You can pass in any combination of functions or array of functions. + * @public + * @function use + * @returns {Object} returns self + */ + use(...handlers: RequestHandlerType[]): Server; + + /** + * Gives you hooks to run _before_ any routes are located. This gives you + * a chance to intercept the request and change headers, etc., that routing + * depends on. Note that req.params will _not_ be set yet. + * @public + * @function pre + * @returns {Object} returns self + */ + pre(...pre: RequestHandlerType[]): Server; + + /** + * toString() the server for easy reading/output. + * @public + * @function toString + * @returns {String} + */ + toString(): string; + + /** + * Return debug information about the server. + * @public + * @method getDebugInfo + * @returns {Object} + */ + getDebugInfo(): any; + + /** Name of the server. */ + name: string; + + /** Default version(s) to use in all routes. */ + versions: string[]; + + /** bunyan instance. */ + log: Logger; + + /** List of content-types this server can respond with. */ + acceptable: string[]; + + /** Once listen() is called, this will be filled in with where the server is running. */ + url: string; +} + +export interface RouterOptions { + contentType?: string | string[]; + + strictRouting?: boolean; + + log?: Logger; + + version?: string; + + versions?: string[]; +} + +export class Router { + constructor(options: RouterOptions); +} + +export interface Router { + /** + * takes an object of route params and query params, and 'renders' a URL. + * @public + * @function render + * @param {String} routeName the route name + * @param {Object} params an object of route params + * @param {Object} query an object of query params + * @returns {String} + */ + render(routeName: string, params: any, query?: any): string; + + /** + * adds a route. + * @public + * @function mount + * @param {Object} options an options object + * @returns {String} returns the route name if creation is successful. + */ + mount(options: RouteOptions): string | boolean; + + /** + * unmounts a route. + * @public + * @function unmount + * @param {String} name the route name + * @returns {String} the name of the deleted route. + */ + unmount(name: string): string; + + /** + * get a route from the router. + * @public + * @function get + * @param {String} name the name of the route to retrieve + * @param {Object} req the request object + * @param {Function} cb callback function + * @returns {undefined} + */ + get(name: string, req: Request, cb: FindRouteCallback): void; + + /** + * find a route from inside the router, handles versioned routes. + * @public + * @function find + * @param {Object} req the request object + * @param {Object} res the response object + * @param {Function} callback callback function + * @returns {undefined} + */ + find(req: Request, res: Response, callback: FindRouteCallback): void; + + /** + * Find a route by path. Scans the route list for a route with the same RegEx. + * i.e. /foo/:param1/:param2 would match an existing route with different + * parameter names /foo/:id/:name since the compiled RegExs match. + * @public + * @function findByPath + * @param {String | RegExp} path a path to find a route for. + * @param {Object} options an options object + * @returns {Object} returns the route if a match is found + */ + findByPath(path: string | RegExp): Route; + + /** + * toString() serialization. + * @public + * @function toString + * @returns {String} + */ + toString(): string; + + /** + * Return information about the routes registered in the router. + * @public + * @returns {object} The routes in the router. + */ + getDebugInfo(): any; + + name: string; + + mounts: { [routeName: string]: Route }; + + versions: string[]; + + contentType: string[]; + + routes: { + DELETE: Route[]; + GET: Route[]; + HEAD: Route[]; + OPTIONS: Route[]; + PATCH: Route[]; + POST: Route[]; + PUT: Route[]; + }; + + log?: Logger; +} + +export interface RequestFileInterface { path: string; type: string; } -/** - * Comes from authorizationParser plugin - */ -export interface requestAuthorization { +export interface RequestAuthorization { scheme: string; credentials: string; basic?: { @@ -35,13 +439,160 @@ export interface requestAuthorization { export interface Request extends http.IncomingMessage { /** - * builds an absolute URI for the request. - * @private - * @function absoluteUri - * @param {String} path a url path + * checks if the accept header is present and has the value requested. + * e.g., req.accepts('html'); + * @public + * @function accepts + * @param {String | Array} types an array of accept type headers + * @returns {Boolean} + */ + accepts(types: string | string[]): boolean; + + /** + * checks if the request accepts the encoding types. + * @public + * @function acceptsEncoding + * @param {String | Array} types an array of accept type headers + * @returns {Boolean} + */ + acceptsEncoding(types: string | string[]): boolean; + + /** + * gets the content-length header off the request. + * @public + * @function getContentLength + * @returns {Number} + */ + getContentLength(): number; + + /** + * pass through to getContentLength. + * @public + * @function contentLength + * @returns {Number} + */ + contentLength(): number; + + /** + * gets the content-type header. + * @public + * @function getContentType + * @returns {String} + */ + getContentType(): string; + + /** + * pass through to getContentType. + * @public + * @function contentType + * @returns {Number} + */ + contentType(): string; + + /** + * retrieves the complete URI requested by the client. + * @public + * @function getHref + * @returns {String} + */ + getHref(): string; + + /** + * pass through to getHref. + * @public + * @function href + * @returns {String} + */ + href(): string; + + /** + * retrieves the request uuid. was created when the request was setup. + * @public + * @function getId * @returns {String} */ - absoluteUri(path: string): string; + getId(): string; + + /** + * pass through to getId. + * @public + * @function id + * @returns {String} + */ + id(): string; + + /** + * retrieves the cleaned up url path. + * e.g., /foo?a=1 => /foo + * @public + * @function getPath + * @returns {String} + */ + getPath(): string; + + /** + * pass through to getPath. + * @public + * @function path + * @returns {String} + */ + path(): string; + + /** + * returns the raw query string + * @public + * @function getQuery + * @returns {String} + */ + getQuery(): string; + + // /** + // * pass through to getQuery. + // * @public + // * @function query + // * @returns {String} + // */ + // query(): string; + + /** + * returns ms since epoch when request was setup. + * @public + * @function time + * @returns {Number} + */ + time(): number; + + /** + * returns a parsed URL object. + * @public + * @function getUrl + * @returns {Object} + */ + getUrl(): url.Url; + + /** + * returns the accept-version header. + * @public + * @function getVersion + * @returns {String} + */ + getVersion(): string; + + /** + * pass through to getVersion. + * @public + * @function version + * @returns {String} + */ + version(): string; + + /** + * returns the version of the route that matched. + * @public + * @function matchedVersion + * @returns {String} + */ + matchedVersion(): string; /** * returns any header off the request. also, 'correct' any @@ -65,25 +616,6 @@ export interface Request extends http.IncomingMessage { */ trailer(name: string, value?: string): string; - /** - * checks if the accept header is present and has the value requested. - * e.g., req.accepts('html'); - * @public - * @function accepts - * @param {String | Array} types an array of accept type headers - * @returns {Boolean} - */ - accepts(types: string | string[]): boolean; - - /** - * checks if the request accepts the encoding types. - * @public - * @function acceptsEncoding - * @param {String | Array} types an array of accept type headers - * @returns {Boolean} - */ - acceptsEncoding(types: string | string[]): boolean; - /** * Check if the incoming request contains the Content-Type header field, and * if it contains the given mime type. @@ -110,6 +642,14 @@ export interface Request extends http.IncomingMessage { */ isKeepAlive(): boolean; + /** + * Check if the incoming request is encrypted. + * @public + * @function isSecure + * @returns {Boolean} + */ + isSecure(): boolean; + /** * Check if the incoming request has been upgraded. * @public @@ -126,6 +666,14 @@ export interface Request extends http.IncomingMessage { */ isUpload(): boolean; + /** + * toString serialization + * @public + * @function toString + * @returns {String} + */ + toString(): string; + /** * retrieves the user-agent header. * @public @@ -154,165 +702,277 @@ export interface Request extends http.IncomingMessage { */ endHandlerTimer(handlerName: string): void; - getLogger(component: string): any; - /** - * gets the content-length header off the request. + * returns the connection state of the request. current valid values are + * 'close' and 'aborted'. * @public - * @function getContentLength - * @returns {Number} - */ - getContentLength(): number; - - /** - * @see getContentLength - * @function contentLength - */ - contentLength(): number; - - /** - * gets the content-type header. - * @public - * @function getContentType + * @function connectionState * @returns {String} */ - getContentType(): string; + connectionState(): string; /** - * @see getContentType - */ - contentType(): string; - - /** - * retrieves the complete URI requested by the client. + * returns the route object to which the current request was matched to. + * Route info object structure: + * { + * path: '/ping/:name', + * method: 'GET', + * versions: [], + * name: 'getpingname' + * } * @public - * @function getHref - * @returns {String} + * @function getRoute + * @returns {Object} */ - getHref(): string; - - /** - * @see getHref - */ - href(): string; + getRoute(): RouteSpec; + /** bunyan logger you can piggyback on. */ log: Logger; - /** - * retrieves the request uuid. was created when the request was setup. - * @public - * @function getId - * @returns {String} - */ - getId(): string; - /** - * @see getId - */ - id(): string; + /** available when queryParser plugin is used. */ + query?: any; - /** - * retrieves the cleaned up url path. - * e.g., /foo?a=1 => /foo - * @public - * @function getPath - * @returns {String} - */ - getPath(): string; - - /** - * @see getPath - */ - path(): string; - - /** - * returns the raw query string - * @public - * @function getQuery - * @returns {String} - */ - getQuery(): string; - - /** - * @see getQuery - */ - query: any; - - secure: boolean; - - /** - * returns ms since epoch when request was setup. - * @public - * @function time - * @returns {Number} - */ - time(): number; - - /** - * returns a parsed URL object. - * @public - * @function getUrl - * @returns {Object} - */ - getUrl(): url.Url; - - /** - * returns the accept-version header. - * @public - * @function getVersion - * @returns {String} - */ - getVersion(): string; - - /** - * @see getVersion - */ - version(): string; - params: any; - files?: { [name: string]: requestFileInterface }; - - /** - * Check if the incoming request is encrypted. - * @public - * @function isSecure - * @returns {Boolean} - */ - isSecure(): boolean; - /** available when bodyParser plugin is used */ + /** available when bodyParser plugin is used. */ body?: any; + + /** available when queryParser or bodyParser plugin is used with mapParams enabled. */ + params?: any; + + /** available when serveStatic plugin is used. */ + files?: { [name: string]: RequestFileInterface }; + /** available when authorizationParser plugin is used */ username?: string; - /** available when authorizationParser plugin is used */ - authorization?: requestAuthorization; - timers: HandlerTiming[]; + /** available when authorizationParser plugin is used */ + authorization?: RequestAuthorization; } -/** - * Timer object used to identify how long a specific handler took to run - * - * @property {String} name The name of the handler. - * @property {Array} time A tuple of [seconds, nanoseconds], how long the handler took. - */ -export interface HandlerTiming { - name: string; - time: [number, number]; +export interface CacheOptions { + maxAge: number; } export interface Response extends http.ServerResponse { - header(key: string, value?: any): any; - cache(type?: any, options?: any): any; - noCache(): any; - status(code: number): any; - send(status?: any, body?: any, headers?: { [header: string]: string }): any; - json(status?: any, body?: any, headers?: { [header: string]: string }): any; + /** + * sets the cache-control header. `type` defaults to _public_, + * and options currently only takes maxAge. + * @public + * @function cache + * @param {String} type value of the header + * @param {Object} [options] an options object + * @returns {String} the value set to the header + */ + cache(type: string, options?: CacheOptions): string; + + /** + * sets the cache-control header. `type` defaults to _public_, + * and options currently only takes maxAge. + * @public + * @function cache + * @param {Object} [options] an options object + * @returns {String} the value set to the header + */ + cache(options?: CacheOptions): string; + + /** + * turns off all cache related headers. + * @public + * @function noCache + * @returns {Object} self, the response object + */ + noCache(): Response; + + /** + * Appends the provided character set to the response's Content-Type. + * e.g., res.charSet('utf-8'); + * @public + * @function charSet + * @param {String} type char-set value + * @returns {Object} self, the response object + */ + charSet(type: string): Response; + + /** + * retrieves a header off the response. + * @public + * @function get + * @param {Object} name the header name + * @returns {String} + */ + get(name: string): string; + + /** + * retrieves all headers off the response. + * @public + * @function getHeaders + * @returns {Object} + */ + getHeaders(): any; + + /** + * pass through to getHeaders. + * @public + * @function headers + * @returns {Object} + */ + headers(): any; + + /** + * sets headers on the response. + * @public + * @function header + * @param {String} name the name of the header + * @param {String} value the value of the header + * @returns {Object} + */ + header(name: string, value?: any): any; + + /** + * short hand method for: + * res.contentType = 'json'; + * res.send({hello: 'world'}); + * @public + * @function json + * @param {Number} code http status code + * @param {Object} object value to json.stringify + * @param {Object} [headers] headers to set on the response + * @returns {Object} + */ + json(code: number, object: any, headers?: { [header: string]: string }): any; + + /** + * short hand method for: + * res.contentType = 'json'; + * res.send({hello: 'world'}); + * @public + * @function json + * @param {Object} object value to json.stringify + * @param {Object} [headers] headers to set on the response + * @returns {Object} + */ + json(object: any, headers?: { [header: string]: string }): any; + + /** + * sets the link heaader. + * @public + * @function link + * @param {String} l the link key + * @param {String} rel the link value + * @returns {String} the header value set to res + */ + link(l: string, rel: string): string; + + /** + * sends the response object. pass through to internal __send that uses a + * formatter based on the content-type header. + * @public + * @function send + * @param {Number} [code] http status code + * @param {Object | Buffer | Error} [body] the content to send + * @param {Object} [headers] any add'l headers to set + * @returns {Object} the response object + */ + send(code?: any, body?: any, headers?: { [header: string]: string }): any; + + /** + * sends the response object. pass through to internal __send that skips + * formatters entirely and sends the content as is. + * @public + * @function sendRaw + * @param {Number} [code] http status code + * @param {Object | Buffer | Error} [body] the content to send + * @param {Object} [headers] any add'l headers to set + * @returns {Object} the response object + */ + sendRaw(code?: any, body?: any, headers?: { [header: string]: string }): any; + + /** + * sets a header on the response. + * @public + * @function set + * @param {String} name name of the header + * @param {String} val value of the header + * @returns {Object} self, the response object + */ + set(name: string, val: string): Response; + + /** + * sets the http status code on the response. + * @public + * @function status + * @param {Number} code http status code + * @returns {Number} the status code passed in + */ + status(code: number): number; + + /** + * toString() serialization. + * @public + * @function toString + * @returns {String} + */ + toString(): string; + + /** + * pass through to native response.writeHead(). + * @public + * @function writeHead + * @emits header + * @returns {undefined} + */ + writeHead(): void; + + /** redirect is sugar method for redirecting. + * res.redirect(301, 'www.foo.com', next); + * `next` is mandatory, to complete the response and trigger audit logger. + * @public + * @param {Number} code the status code + * @param {String} url to redirect to + * @param {Function} next fn + * @emits redirect + * @function redirect + * @return {undefined} + */ + redirect(code: number, url: string, next: Next): void; + + /** redirect is sugar method for redirecting. + * res.redirect({...}, next); + * `next` is mandatory, to complete the response and trigger audit logger. + * @public + * @param {Object | String} options the options or url to redirect to + * @param {Function} next fn + * @emits redirect + * @function redirect + * @return {undefined} + */ + redirect(options: string | any, next: Next): void; + + /** HTTP status code. */ code: number; + + /** short hand for the header content-length. */ contentLength: number; - charSet(value: string): void; + + /** short hand for the header content-type. */ contentType: string; + + /** response headers. */ headers: any; + + /** A unique request id (x-request-id). */ id: string; } +export interface Next { + (err?: any): void; + + ifError(err?: any): void; +} + +export interface RoutePathRegex extends RegExp { + restifyParams: string[]; +} + export interface RouteSpec { method: string; name: string; @@ -331,282 +991,510 @@ export interface Route { export interface RouteOptions { name: string; + method: string; + path?: string | RegExp; + url?: string | RegExp; + urlParamPattern?: RegExp; + contentType?: string | string[]; - versions?: string | string[]; -} -export interface RoutePathRegex extends RegExp { - restifyParams: string[]; -} - -export interface Router { - name: string; - mounts: { [routeName: string]: Route }; - versions: string[]; - contentType: string[]; - routes: { - DELETE: Route[]; - GET: Route[]; - HEAD: Route[]; - OPTIONS: Route[]; - PATCH: Route[]; - POST: Route[]; - PUT: Route[]; - }; - log?: any; - toString(): string; - - /** - * Takes an object of route params and query params, and 'renders' a URL - * @param {String} routeName the route name - * @param {Object} params an object of route params - * @param {Object} query an object of query params - * @returns {String} - */ - render(routeName: string, params: any, query?: any): string; - - /** - * adds a route. - * @param {Object} options an options object - * @returns {String} returns the route name if creation is successful. - */ - mount(options: any): string | boolean; - - /** - * unmounts a route. - * @param {String} name the route name - * @returns {String} the name of the deleted route (or false if it was not matched) - */ - unmount(name: string): string | boolean; - - /** - * finds the route for a given request and response. - * @param {Request} req the request object - * @param {Response} res the response object - * @param {Function} callback operation callback - * @returns {undefined} - */ - find(req: Request, res: Response, callback: (err: Error, route: Route) => void): void; -} - -export interface Server extends http.Server { - use(handler: RequestHandler | RequestHandler[], ...handlers: RequestHandler[]): Server; - // tslint:disable-next-line unified-signatures - use(handler: RequestHandler | RequestHandler[], ...handlers: RequestHandler[][]): Server; - - post(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; - // tslint:disable-next-line unified-signatures - post(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; - - patch(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; - // tslint:disable-next-line unified-signatures - patch(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; - - put(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; - // tslint:disable-next-line unified-signatures - put(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; - - del(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; - // tslint:disable-next-line unified-signatures - del(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; - - get(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; - // tslint:disable-next-line unified-signatures - get(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; - - head(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; - // tslint:disable-next-line unified-signatures - head(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; - - opts(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; - // tslint:disable-next-line unified-signatures - opts(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; - - name: string; - version: string; - log: any; - acceptable: string[]; - url: string; - address(): addressInterface; - listen(...args: any[]): any; - close(...args: any[]): any; - pre(routeCallBack: RequestHandler): Server; - server: http.Server; - router: Router; - routes: Route[]; - toString(): string; -} - -export interface ServerOptions { - ca?: string; - certificate?: string | string[] | Buffer | Buffer[]; - key?: string | string[] | Buffer | Buffer[]; - formatters?: any; - log?: any; - name?: string; - spdy?: any; version?: string; - responseTimeHeader?: string; - responseTimeFormatter?(durationInMilliseconds: number): any; - handleUpgrades?: boolean; - router?: Router; - httpsServerOptions?: any; - socketio?: boolean; + + versions?: string[]; } -export interface ClientOptions { - accept?: string; - connectTimeout?: number; - requestTimeout?: number; - dtrace?: any; - gzip?: any; - headers?: any; - log?: any; - retry?: any; - signRequest?(): void; - url?: string; - userAgent?: string; - version?: string; -} - -export interface Client { - get(opts: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request, res: Response, obj: any) => any): any; - head(opts: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request, res: Response) => any): any; - post(opts: string | { path?: string; [name: string]: any }, object: any, callback?: (err: any, req: Request, res: Response, obj: any) => any): any; - put(opts: string | { path?: string; [name: string]: any }, object: any, callback?: (err: any, req: Request, res: Response, obj: any) => any): any; - patch(opts: string | { path?: string; [name: string]: any }, object: any, callback?: (err: any, req: Request, res: Response, obj: any) => any): any; - del(opts: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request, res: Response) => any): any; - basicAuth(username: string, password: string): any; -} - -export interface HttpClient { - get(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; - head(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; - post(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; - put(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; - patch(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; - del(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; - basicAuth(username: string, password: string): any; -} - -export interface ThrottleOptions { - burst?: number; - rate?: number; - ip?: boolean; - xff?: boolean; - username?: boolean; - tokensTable?: any; - maxKeys?: number; - overrides?: any; -} - -export interface Next { - (err?: any): any; - ifError(err?: any): any; -} +export type FindRouteCallback = (err: Error, route?: Route, params?: any) => void; export type RequestHandler = (req: Request, res: Response, next: Next) => any; +export type RequestHandlerType = RequestHandler | RequestHandler[]; + +export function bunyan(options?: BunyanOptions): RequestHandler; export function createServer(options?: ServerOptions): Server; -export function createJsonClient(options?: ClientOptions): Client; -export function createStringClient(options?: ClientOptions): Client; -export function createClient(options?: ClientOptions): HttpClient; - -export class HttpError { constructor(cause: any, message?: any); } - -export class DefiniteHttpError { - constructor(message?: any); - - // tslint:disable-next-line unified-signatures - constructor(cause: any, message?: any); -} - -export class BadRequestError extends DefiniteHttpError { } -export class UnauthorizedError extends DefiniteHttpError { } -export class PaymentRequiredError extends DefiniteHttpError { } -export class ForbiddenError extends DefiniteHttpError { } -export class NotFoundError extends DefiniteHttpError { } -export class MethodNotAllowedError extends DefiniteHttpError { } -export class NotAcceptableError extends DefiniteHttpError { } -export class ProxyAuthenticationRequiredError extends DefiniteHttpError { } -export class RequestTimeoutError extends DefiniteHttpError { } -export class ConflictError extends DefiniteHttpError { } -export class GoneError extends DefiniteHttpError { } -export class LengthRequiredError extends DefiniteHttpError { } -export class RequestEntityTooLargeError extends DefiniteHttpError { } -export class RequesturiTooLargeError extends DefiniteHttpError { } -export class UnsupportedMediaTypeError extends DefiniteHttpError { } -export class RequestedRangeNotSatisfiableError extends DefiniteHttpError { } -export class ExpectationFailedError extends DefiniteHttpError { } -export class ImATeapotError extends DefiniteHttpError { } -export class UnprocessableEntityError extends DefiniteHttpError { } -export class LockedError extends DefiniteHttpError { } -export class FailedDependencyError extends DefiniteHttpError { } -export class UnorderedCollectionError extends DefiniteHttpError { } -export class UpgradeRequiredError extends DefiniteHttpError { } -export class PreconditionRequiredError extends DefiniteHttpError { } -export class TooManyRequestsError extends DefiniteHttpError { } -export class RequestHeaderFieldsTooLargeError extends DefiniteHttpError { } -export class InternalServerError extends DefiniteHttpError { } -export class NotImplementedError extends DefiniteHttpError { } -export class BadGatewayError extends DefiniteHttpError { } -export class ServiceUnavailableError extends DefiniteHttpError { } -export class GatewayTimeoutError extends DefiniteHttpError { } -export class HttpVersionNotSupportedError extends DefiniteHttpError { } -export class VariantAlsoNegotiatesError extends DefiniteHttpError { } -export class InsufficientStorageError extends DefiniteHttpError { } -export class BandwidthLimitExceededError extends DefiniteHttpError { } -export class NotExtendedError extends DefiniteHttpError { } -export class NetworkAuthenticationRequiredError extends DefiniteHttpError { } -export class RestError extends DefiniteHttpError { } - -export class PreconditionFailedError extends RestError { } -export class BadDigestError extends RestError { } -export class BadMethodError extends RestError { } -export class InternalError extends RestError { } -export class InvalidArgumentError extends RestError { } -export class InvalidContentError extends RestError { } -export class InvalidCredentialsError extends RestError { } -export class InvalidHeaderError extends RestError { } -export class InvalidVersionError extends RestError { } -export class MissingParameterError extends RestError { } -export class NotAuthorizedError extends RestError { } -export class RequestExpiredError extends RestError { } -export class RequestThrottledError extends RestError { } -export class ResourceNotFoundError extends RestError { } -export class WrongAcceptError extends RestError { } - -export function acceptParser(parser: any): RequestHandler; -export function authorizationParser(): RequestHandler; -export function dateParser(skew?: number): RequestHandler; -export function queryParser(options?: any): RequestHandler; -export function urlEncodedBodyParser(options?: any): RequestHandler[]; -export function jsonp(): RequestHandler; -export function gzipResponse(options?: any): RequestHandler; -export function bodyParser(options?: any): RequestHandler[]; -export function requestLogger(options?: any): RequestHandler; -export function serveStatic(options?: any): RequestHandler; -export function throttle(options?: ThrottleOptions): RequestHandler; -export function conditionalRequest(): RequestHandler[]; -export function auditLogger(options: { log: any }): (req: Request, res: Response, route: Route, err: any) => void; -export function fullResponse(): RequestHandler; -// tslint:disable-next-line no-var -export var defaultResponseHeaders: any; - -export function CORS(options?: CORSOptions): RequestHandler; -export interface CORSOptions { - origins?: string[]; - credentials?: boolean; - headers?: string[]; -} - -export const pre: { - pause(): RequestHandler; - sanitizePath(options?: any): RequestHandler; - userAgentConnection(options?: any): RequestHandler; +export const formatters: { + [name: string]: RequestHandler }; + +export namespace plugins { + namespace pre { + /** + * Provide req.set(key, val) and req.get(key) methods for setting and retrieving context to a specific request. + */ + function context(): RequestHandler; + + /** + * + */ + function dedupeSlashes(): RequestHandler; + + /** + * This pre handler fixes issues with node hanging when an asyncHandler is used prior to bodyParser. + */ + function pause(): RequestHandler; + + /** + * Cleans up duplicate or trailing / on the URL + */ + function sanitizePath(): RequestHandler; + + /** + * Automatically reuse incoming request header as the request id. + */ + function reqIdHeaders(options: { headers: string[] }): RequestHandler; + + /** + * Checks req.urls query params with strict key/val format and rejects non-strict requests with status code 400. + */ + function strictQueryParams(options?: { message: string }): RequestHandler; + + /** + * Regexp to capture curl user-agents + */ + function userAgentConnection(options?: { userAgentRegExp: any }): RequestHandler; + } + + // *************** This module includes the following header parser plugins: + + /** + * Check the client's Accept header can be handled by this server. + */ + function acceptParser(accepts: string[]): RequestHandler; + + interface AuditLoggerOptions { + /** + * Bunyan logger + */ + log: Logger; + + /** + * Restify server. If passed in, causes server to emit 'auditlog' event after audit logs are flushed + */ + server?: Server; + + /** + * Ringbuffer which is written to if passed in + */ + logBuffer?: any; + + /** + * When true, prints audit logs. default true. + */ + printLog?: boolean; + + /** + * + */ + body?: boolean; + } + + /** + * An audit logger for recording all handled requests + */ + function auditLogger(options: AuditLoggerOptions): (...args: any[]) => void; + + /** + * Authorization header + */ + function authorizationParser(options?: any): RequestHandler; + + /** + * Conditional headers (If-*) + */ + function conditionalRequest(): RequestHandler[]; + + /** + * Handles disappeared CORS headers + */ + function fullResponse(): RequestHandler; + + // ************ This module includes the following data parsing plugins: + + interface BodyParserOptions { + /** + * The maximum size in bytes allowed in the HTTP body. Useful for limiting clients from hogging server memory. + */ + maxBodySize?: number; + + /** + * If req.params should be filled with parsed parameters from HTTP body. + */ + mapParams?: boolean; + + /** + * If req.params should be filled with the contents of files sent through a multipart request. + * Formidable is used internally for parsing, and a file is denoted as a multipart part with the filename option set in its Content-Disposition. + * This will only be performed if mapParams is true. + */ + mapFiles?: boolean; + + /** + * If an entry in req.params should be overwritten by the value in the body if the names are the same. + * For instance, if you have the route /:someval, and someone posts an x-www-form-urlencoded Content-Type with the body someval=happy to /sad, + * the value will be happy if overrideParams is true, sad otherwise. + */ + overrideParams?: boolean; + + /** + * A callback to handle any multipart part which is not a file. + * If this is omitted, the default handler is invoked which may or may not map the parts into req.params, depending on the mapParams-option. + */ + multipartHandler?(): void; + + /** + * A callback to handle any multipart file. + * It will be a file if the part have a Content-Disposition with the filename parameter set. + * This typically happens when a browser sends a form and there is a parameter similar to . + * If this is not provided, the default behaviour is to map the contents into req.params. + */ + multipartFileHandler?(): void; + + /** + * If you want the uploaded files to include the extensions of the original files (multipart uploads only). Does nothing if multipartFileHandler is defined. + */ + keepExtensions?: boolean; + + /** + * Where uploaded files are intermediately stored during transfer before the contents is mapped into req.params. Does nothing if multipartFileHandler is defined. + */ + uploadDir?: string; + + /** + * If you want to support html5 multiple attribute in upload fields. + */ + multiples?: boolean; + + /** + * If you want checksums calculated for incoming files, set this to either sha1 or md5. + */ + hash?: string; + + /** + * Set to true if you want to end the request with a UnsupportedMediaTypeError when none of the supported content types was given. + */ + rejectUnknown?: boolean; + + /** + * + */ + reviver?: any; + + /** + * + */ + maxFieldsSize?: number; + } + + /** + * Parses POST bodies to req.body. automatically uses one of the following parsers based on content type. + */ + function bodyParser(options?: BodyParserOptions): RequestHandler[]; + + /** + * Reads the body of the request. + */ + function bodyReader(options?: { maxBodySize?: number }): RequestHandler; + + interface UrlEncodedBodyParser { + mapParams?: boolean; + overrideParams?: boolean; + } + + /** + * Parse the HTTP request body IFF the contentType is application/x-www-form-urlencoded. + * + * If req.params already contains a given key, that key is skipped and an + * error is logged. + */ + function urlEncodedBodyParser(options?: UrlEncodedBodyParser): RequestHandler[]; + + /** + * Parses JSON POST bodies + */ + function jsonBodyParser(options?: { mapParams?: boolean, reviver?: any, overrideParams?: boolean }): RequestHandler[]; + + /** + * Parses JSONP callback + */ + function jsonp(): RequestHandler; + + interface MultipartBodyParser { + overrideParams?: boolean; + multiples?: boolean; + keepExtensions?: boolean; + uploadDir?: string; + maxFieldsSize?: number; + hash?: string; + multipartFileHandler?: any; + multipartHandler?: any; + mapParams?: boolean; + mapFiles?: boolean; + } + + /** + * Parses JSONP callback + */ + function multipartBodyParser(options?: MultipartBodyParser): RequestHandler; + + interface QueryParserOptions { + /** + * Default `false`. Copies parsed query parameters into `req.params`. + */ + mapParams?: boolean; + + /** + * Default `false`. Only applies when if mapParams true. When true, will stomp on req.params field when existing value is found. + */ + overrideParams?: boolean; + + /** + * Default false. Transform `?foo.bar=baz` to a nested object: `{foo: {bar: 'baz'}}`. + */ + allowDots?: boolean; + + /** + * Default 20. Only transform `?a[$index]=b` to an array if `$index` is less than `arrayLimit`. + */ + arrayLimit?: number; + + /** + * Default 5. The depth limit for parsing nested objects, e.g. `?a[b][c][d][e][f][g][h][i]=j`. + */ + depth?: number; + + /** + * Default 1000. Maximum number of query params parsed. Additional params are silently dropped. + */ + parameterLimit?: number; + + /** + * Default true. Whether to parse `?a[]=b&a[1]=c` to an array, e.g. `{a: ['b', 'c']}`. + */ + parseArrays?: boolean; + + /** + * Default false. Whether `req.query` is a "plain" object -- does not inherit from `Object`. + * This can be used to allow query params whose names collide with Object methods, e.g. `?hasOwnProperty=blah`. + */ + plainObjects?: boolean; + + /** + * Default false. If true, `?a&b=` results in `{a: null, b: ''}`. Otherwise, `{a: '', b: ''}`. + */ + strictNullHandling?: boolean; + } + + /** + * Parses URL query paramters into `req.query`. Many options correspond directly to option defined for the underlying [qs.parse](https://github.com/ljharb/qs) + */ + function queryParser(options?: QueryParserOptions): RequestHandler; + + interface RequestLogger { + properties?: any; + serializers?: any; + headers?: any; + log?: any; + } + + /** + * Adds timers for each handler in your request chain + * + * `options.properties` properties to pass to bunyan's `log.child()` method + */ + function requestLogger(options?: RequestLogger): RequestHandler; + + // ******************** The module includes the following response plugins: + + /** + * expires requests based on current time + delta + * @param delta - age in seconds + */ + function dateParser(delta?: number): RequestHandler; + + /** + * gzips the response if client send `accept-encoding: gzip` + * @param options options to pass to gzlib + */ + function gzipResponse(options?: any): RequestHandler; + + interface ServeStatic { + appendRequestPath?: boolean | undefined; + directory?: string; + maxAge?: number; + match?: any; + charSet?: string; + file?: string; + etag?: string; + default?: any; + gzip?: boolean; + } + + /** + * Used to serve static files + */ + function serveStatic(options?: ServeStatic): RequestHandler; + + interface ThrottleOptions { + burst?: number; + rate?: number; + ip?: boolean; + username?: boolean; + xff?: boolean; + tokensTable?: any; + maxKeys?: number; + overrides?: any; // any + } + + interface MetricsCallback { + /** + * An error if the request had an error + */ + err: Error; + + /** + * + */ + metrics: MetricsCallbackOptions; + + req: Request; + res: Response; + + /** + * The route obj that serviced the request + */ + route: Route; + } + + type TMetricsCallback = 'close' | 'aborted' | undefined; + + interface MetricsCallbackOptions { + /** + * Status code of the response. Can be undefined in the case of an `uncaughtException`. + * Otherwise, in most normal scenarios, even calling `res.send()` or `res.end()` should result in a 200 by default. + */ + statusCode: number; + + /** + * HTTP request verb + */ + method: string; + + /** + * Request latency + */ + latency: number; + + /** + * req.path() value + */ + path: string; + + /** + * If this value is set, err will be a corresponding `RequestCloseError` or `RequestAbortedError`. + * + * If connectionState is either 'close' or 'aborted', then the statusCode is not applicable since the connection was severed before a response was written. + */ + connectionState: TMetricsCallback; + } + + /** + * Listens to the server's after event and emits information about that request (5.x compatible only). + * + * ``` + * server.on('after', plugins.metrics( (err, metrics) => + * { + * // metrics is an object containing information about the request + * })); + * ``` + */ + function metrics(opts: { server: Server }, callback: (options: MetricsCallback) => any): (...args: any[]) => void; + + /** + * Parse the client's request for an OAUTH2 access tokensTable + * + * Subsequent handlers will see `req.oauth2`, which looks like: + * ``` + * { + * oauth2: {accessToken: 'mF_9.B5f-4.1JqM&p=q'} + * } + * ``` + */ + function oauth2TokenParser(): RequestHandler; + + /** + * throttles responses + */ + function throttle(options?: ThrottleOptions): RequestHandler; + + interface RequestExpiryOptions { + /** + * Header name of the absolute time for request expiration + */ + absoluteHeader?: string; + + /** + * Header name for the start time of the request + */ + startHeader?: string; + + /** + * The header name for the time in milliseconds that should ellapse before the request is considered expired. + */ + timeoutHeader?: string; + } + + /** + * A request expiry will use headers to tell if the incoming request has expired or not. + * + * There are two options for this plugin: + * 1. Absolute Time + * * Time in Milliseconds since the Epoch when this request should be considered expired + * 2. Timeout + * * The request start time is supplied + * * A timeout, in milliseconds, is given + * * The timeout is added to the request start time to arrive at the absolute time + * in which the request is considered expires + */ + function requestExpiry(options?: RequestExpiryOptions): RequestHandler; +} + +export namespace pre { + /** + * Provide req.set(key, val) and req.get(key) methods for setting and retrieving context to a specific request. + */ + function context(): RequestHandler; + + /** + * + */ + function dedupeSlashes(): RequestHandler; + + /** + * This pre handler fixes issues with node hanging when an asyncHandler is used prior to bodyParser. + */ + function pause(): RequestHandler; + + /** + * Cleans up duplicate or trailing / on the URL + */ + function sanitizePath(): RequestHandler; + + /** + * Automatically reuse incoming request header as the request id. + */ + function reqIdHeaders(options: { headers: string[] }): RequestHandler; + + /** + * Checks req.urls query params with strict key/val format and rejects non-strict requests with status code 400. + */ + function strictQueryParams(options?: { message: string }): RequestHandler; + + /** + * Regexp to capture curl user-agents + */ + function userAgentConnection(options?: { userAgentRegExp: any }): RequestHandler; +} diff --git a/types/restify/restify-tests.ts b/types/restify/restify-tests.ts index 15eb8eb868..7e80e5290f 100644 --- a/types/restify/restify-tests.ts +++ b/types/restify/restify-tests.ts @@ -1,7 +1,10 @@ import * as restify from "restify"; import * as url from "url"; +import * as Logger from "bunyan"; -let server = restify.createServer({ +let server = new restify.Server(); + +server = restify.createServer({ formatters: { 'application/foo': function formatFoo(req: restify.Request, res: restify.Response, body: any) { if (body instanceof Error) @@ -15,26 +18,14 @@ let server = restify.createServer({ } }); -server = restify.createServer({ - ca: "test", - certificate: "test", - key: "test", - formatters: {}, - log: {}, - name: "test", - spdy: {}, - version: "", - responseTimeHeader: "", - responseTimeFormatter: (durationInMilliseconds: number) => { }, - socketio: false -}); +server = restify.createServer({}); server.pre(restify.pre.sanitizePath()); server.on('someEvent', () => { }); server.use((req: restify.Request, res: restify.Response, next: restify.Next) => { }); -server.use([(req: restify.Request, res: restify.Response, next: restify.Next) => { }]); +server.use([(req: restify.Request, res: restify.Response, next: restify.Next) => { }, (req: restify.Request, res: restify.Response, next: restify.Next) => { }]); server.use((req: restify.Request, res: restify.Response, next: restify.Next) => { }, (req: restify.Request, res: restify.Response, next: restify.Next) => { }); function send(req: restify.Request, res: restify.Response, next: restify.Next) { @@ -56,10 +47,6 @@ function send(req: restify.Request, res: restify.Response, next: restify.Next) { req.userAgent() === 'test'; req.startHandlerTimer('test'); req.endHandlerTimer('test'); - req.absoluteUri('test') === 'test'; - - req.timers.pop() === { name: 'test', time: [0, 1234] }; - req.getLogger('test'); const log = req.log; log.debug({ params: req.params }, 'Hello there %s', 'foo'); @@ -76,25 +63,24 @@ function send(req: restify.Request, res: restify.Response, next: restify.Next) { req.path() === 'test'; req.getQuery() === 'test'; req.query === 'test'; - req.secure === true; req.time() === 1463518410080; - req.getUrl() === url.parse('http://test.test.test/test'); + req.getUrl() === url.parse('https://test.test.test/test'); req.getVersion() === 'test'; req.version() === 'test'; req.params; - res.header('test'); res.header('test', {}); res.header('test', new Date()); res.cache(); - res.cache('testst', {}); + res.cache('testst', { maxAge: 60 }); + res.cache({ maxAge: 60 }); res.status(344); res.send({ hello: 'world' }); res.send(201, { hello: 'world' }); - res.send(new restify.BadRequestError('meh')); + res.send(new Error('meh')); res.json(201, { hello: 'world' }); res.json({ hello: 'world' }); @@ -107,6 +93,7 @@ function send(req: restify.Request, res: restify.Response, next: restify.Next) { res.id === 'test'; res.send('hello ' + req.params.name); + res.writeHead(); return next(); } @@ -124,119 +111,8 @@ server.get(/(.*)/, send); server.head(/(.*)/, send); server.opts(/(.*)/, send); -new restify.BadRequestError(); -new restify.UnauthorizedError(); -new restify.PaymentRequiredError(); -new restify.ForbiddenError(); -new restify.NotFoundError(); -new restify.MethodNotAllowedError(); -new restify.NotAcceptableError(); -new restify.ProxyAuthenticationRequiredError(); -new restify.RequestTimeoutError(); -new restify.ConflictError(); -new restify.GoneError(); -new restify.LengthRequiredError(); -new restify.RequestEntityTooLargeError(); -new restify.RequesturiTooLargeError(); -new restify.UnsupportedMediaTypeError(); -new restify.RequestedRangeNotSatisfiableError(); -new restify.ExpectationFailedError(); -new restify.ImATeapotError(); -new restify.UnprocessableEntityError(); -new restify.LockedError(); -new restify.FailedDependencyError(); -new restify.UnorderedCollectionError(); -new restify.UpgradeRequiredError(); -new restify.PreconditionRequiredError(); -new restify.TooManyRequestsError(); -new restify.RequestHeaderFieldsTooLargeError(); -new restify.InternalServerError(); -new restify.NotImplementedError(); -new restify.BadGatewayError(); -new restify.ServiceUnavailableError(); -new restify.GatewayTimeoutError(); -new restify.HttpVersionNotSupportedError(); -new restify.VariantAlsoNegotiatesError(); -new restify.InsufficientStorageError(); -new restify.BandwidthLimitExceededError(); -new restify.NotExtendedError(); -new restify.NetworkAuthenticationRequiredError(); -new restify.RestError(); - -new restify.BadRequestError(new Error(), 'foo'); -new restify.UnauthorizedError(new Error(), 'foo'); -new restify.PaymentRequiredError(new Error(), 'foo'); -new restify.ForbiddenError(new Error(), 'foo'); -new restify.NotFoundError(new Error(), 'foo'); -new restify.MethodNotAllowedError(new Error(), 'foo'); -new restify.NotAcceptableError(new Error(), 'foo'); -new restify.ProxyAuthenticationRequiredError(new Error(), 'foo'); -new restify.RequestTimeoutError(new Error(), 'foo'); -new restify.ConflictError(new Error(), 'foo'); -new restify.GoneError(new Error(), 'foo'); -new restify.LengthRequiredError(new Error(), 'foo'); -new restify.RequestEntityTooLargeError(new Error(), 'foo'); -new restify.RequesturiTooLargeError(new Error(), 'foo'); -new restify.UnsupportedMediaTypeError(new Error(), 'foo'); -new restify.RequestedRangeNotSatisfiableError(new Error(), 'foo'); -new restify.ExpectationFailedError(new Error(), 'foo'); -new restify.ImATeapotError(new Error(), 'foo'); -new restify.UnprocessableEntityError(new Error(), 'foo'); -new restify.LockedError(new Error(), 'foo'); -new restify.FailedDependencyError(new Error(), 'foo'); -new restify.UnorderedCollectionError(new Error(), 'foo'); -new restify.UpgradeRequiredError(new Error(), 'foo'); -new restify.PreconditionRequiredError(new Error(), 'foo'); -new restify.TooManyRequestsError(new Error(), 'foo'); -new restify.RequestHeaderFieldsTooLargeError(new Error(), 'foo'); -new restify.InternalServerError(new Error(), 'foo'); -new restify.NotImplementedError(new Error(), 'foo'); -new restify.BadGatewayError(new Error(), 'foo'); -new restify.ServiceUnavailableError(new Error(), 'foo'); -new restify.GatewayTimeoutError(new Error(), 'foo'); -new restify.HttpVersionNotSupportedError(new Error(), 'foo'); -new restify.VariantAlsoNegotiatesError(new Error(), 'foo'); -new restify.InsufficientStorageError(new Error(), 'foo'); -new restify.BandwidthLimitExceededError(new Error(), 'foo'); -new restify.NotExtendedError(new Error(), 'foo'); -new restify.NetworkAuthenticationRequiredError(new Error(), 'foo'); -new restify.RestError(new Error(), 'foo'); - -new restify.PreconditionFailedError(new Error(), 'foo'); -new restify.BadDigestError(new Error(), 'foo'); -new restify.BadMethodError(new Error(), 'foo'); -new restify.InternalError(new Error(), 'foo'); -new restify.InvalidArgumentError(new Error(), 'foo'); -new restify.InvalidContentError(new Error(), 'foo'); -new restify.InvalidCredentialsError(new Error(), 'foo'); -new restify.InvalidHeaderError(new Error(), 'foo'); -new restify.InvalidVersionError(new Error(), 'foo'); -new restify.MissingParameterError(new Error(), 'foo'); -new restify.NotAuthorizedError(new Error(), 'foo'); -new restify.RequestExpiredError(new Error(), 'foo'); -new restify.RequestThrottledError(new Error(), 'foo'); -new restify.ResourceNotFoundError(new Error(), 'foo'); -new restify.WrongAcceptError(new Error(), 'foo'); - -new restify.PreconditionFailedError(); -new restify.BadDigestError(); -new restify.BadMethodError(); -new restify.InternalError(); -new restify.InvalidArgumentError(); -new restify.InvalidContentError(); -new restify.InvalidCredentialsError(); -new restify.InvalidHeaderError(); -new restify.InvalidVersionError(); -new restify.MissingParameterError(); -new restify.NotAuthorizedError(); -new restify.RequestExpiredError(); -new restify.RequestThrottledError(); -new restify.ResourceNotFoundError(); -new restify.WrongAcceptError(); - server.name = ""; -server.version = ""; -server.log = {}; +server.versions = [""]; server.acceptable = ["test"]; server.url = ""; @@ -247,19 +123,14 @@ server.address().address; server.listen("somePath", send); server.close(); -server.use(restify.acceptParser(server.acceptable)); -server.use(restify.authorizationParser()); -server.use(restify.dateParser()); -server.use(restify.queryParser()); -server.use(restify.jsonp()); -server.use(restify.gzipResponse()); -server.use(restify.bodyParser()); -server.use(restify.CORS({ - origins: ['https://foo.com', 'http://bar.com', 'http://baz.com:8081'], - credentials: true, - headers: ['x-foo'] -})); -server.use(restify.throttle({ +server.use(restify.plugins.acceptParser(server.acceptable)); +server.use(restify.plugins.authorizationParser()); +server.use(restify.plugins.dateParser()); +server.use(restify.plugins.queryParser()); +server.use(restify.plugins.jsonp()); +server.use(restify.plugins.gzipResponse()); +server.use(restify.plugins.bodyParser()); +server.use(restify.plugins.throttle({ burst: 100, rate: 50, ip: true, @@ -271,9 +142,7 @@ server.use(restify.throttle({ } })); -server.on('after', restify.auditLogger({ - log: () => { } -})); +server.on('after', restify.plugins.auditLogger({ log: {} as Logger })); server.on('after', (req: restify.Request, res: restify.Response, route: restify.Route, err: any) => { route.spec.method === 'GET'; @@ -281,67 +150,9 @@ server.on('after', (req: restify.Request, res: restify.Response, route: restify. route.spec.path === '/some/path'; route.spec.path === /\/some\/path\/.*/; route.spec.versions === ['v1']; - restify.auditLogger({ log: () => { } })(req, res, route, err); + restify.plugins.auditLogger({ log: {} as Logger })(req, res, route, err); }); ( restify).defaultResponseHeaders = function(this: restify.Request, data: any) { this.header('Server', 'helloworld'); }; - -( restify).defaultResponseHeaders = false; - -// RESTIFY Client Tests - -let client = restify.createJsonClient({ - url: 'https://api.us-west-1.joyentcloud.com', - version: '*' -}); - -client = restify.createStringClient({ - accept: "test", - connectTimeout: 30, - dtrace: {}, - gzip: {}, - headers: {}, - log: {}, - retry: {}, - signRequest: () => { }, - url: "", - userAgent: "", - version: "" -}); - -client.head('test', (err: any, req: restify.Request, res: restify.Response) => { }); -client.put('path', {}, (err: any, req: restify.Request, res: restify.Response, obj: any) => { }); -client.patch('path', {}, (err: any, req: restify.Request, res: restify.Response, obj: any) => { }); -client.del('path', (err: any, req: restify.Request, res: restify.Response) => { }); - -client.post('/foo', { hello: 'world' }, (err: any, req: restify.Request, res: restify.Response, obj: any) => { - console.log('%d -> %j', res.statusCode, res.headers); - console.log('%j', obj); -}); - -client.get('/foo/bar', (err: any, req: restify.Request, res: restify.Response, data: string) => { - console.log('%s', data); -}); - -let client2 = restify.createClient({ - url: 'http://127.0.0.1' -}); - -client2.get('/str/mcavage', (err: any, req: any) => { - req.on('result', (err: any, res: any) => { - res.body = ''; - res.setEncoding('utf8'); - res.on('data', (chunk: string) => { - res.body += chunk; - }); - - res.on('end', () => { - console.log(res.body); - }); - }); -}); - -client.basicAuth('test', 'password'); -client2.basicAuth('test', 'password'); diff --git a/types/restify/v4/index.d.ts b/types/restify/v4/index.d.ts new file mode 100644 index 0000000000..37c2b11487 --- /dev/null +++ b/types/restify/v4/index.d.ts @@ -0,0 +1,612 @@ +// Type definitions for restify 4.3 +// Project: https://github.com/restify/node-restify +// Definitions by: Bret Little , Steve Hipwell +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.1 + +/// + +import http = require('http'); +import Logger = require('bunyan'); +import url = require('url'); + +export interface addressInterface { + port: number; + family: string; + address: string; +} + +export interface requestFileInterface { + path: string; + type: string; +} + +/** + * Comes from authorizationParser plugin + */ +export interface requestAuthorization { + scheme: string; + credentials: string; + basic?: { + username: string; + password: string; + }; +} + +export interface Request extends http.IncomingMessage { + /** + * builds an absolute URI for the request. + * @private + * @function absoluteUri + * @param {String} path a url path + * @returns {String} + */ + absoluteUri(path: string): string; + + /** + * returns any header off the request. also, 'correct' any + * correctly spelled 'referrer' header to the actual spelling used. + * @public + * @function header + * @param {String} name the name of the header + * @param {String} value default value if header isn't found on the req + * @returns {String} + */ + header(name: string, value?: string): string; + + /** + * returns any trailer header off the request. also, 'correct' any + * correctly spelled 'referrer' header to the actual spelling used. + * @public + * @function trailer + * @param {String} name the name of the header + * @param {String} value default value if header isn't found on the req + * @returns {String} + */ + trailer(name: string, value?: string): string; + + /** + * checks if the accept header is present and has the value requested. + * e.g., req.accepts('html'); + * @public + * @function accepts + * @param {String | Array} types an array of accept type headers + * @returns {Boolean} + */ + accepts(types: string | string[]): boolean; + + /** + * checks if the request accepts the encoding types. + * @public + * @function acceptsEncoding + * @param {String | Array} types an array of accept type headers + * @returns {Boolean} + */ + acceptsEncoding(types: string | string[]): boolean; + + /** + * Check if the incoming request contains the Content-Type header field, and + * if it contains the given mime type. + * @public + * @function is + * @param {String} type a content-type header value + * @returns {Boolean} + */ + is(type: string): boolean; + + /** + * Check if the incoming request is chunked. + * @public + * @function isChunked + * @returns {Boolean} + */ + isChunked(): boolean; + + /** + * Check if the incoming request is kept alive. + * @public + * @function isKeepAlive + * @returns {Boolean} + */ + isKeepAlive(): boolean; + + /** + * Check if the incoming request has been upgraded. + * @public + * @function isUpgradeRequest + * @returns {Boolean} + */ + isUpgradeRequest(): boolean; + + /** + * Check if the incoming request is an upload verb. + * @public + * @function isUpload + * @returns {Boolean} + */ + isUpload(): boolean; + + /** + * retrieves the user-agent header. + * @public + * @function userAgent + * @returns {String} + */ + userAgent(): string; + + /** + * Start the timer for a request handler function. You must explicitly invoke + * endHandlerTimer() after invoking this function. Otherwise timing information + * will be inaccurate. + * @public + * @function startHandlerTimer + * @param {String} handlerName The name of the handler. + * @returns {undefined} + */ + startHandlerTimer(handlerName: string): void; + + /** + * Stop the timer for a request handler function. + * @public + * @function endHandlerTimer + * @param {String} handlerName The name of the handler. + * @returns {undefined} + */ + endHandlerTimer(handlerName: string): void; + + getLogger(component: string): any; + + /** + * gets the content-length header off the request. + * @public + * @function getContentLength + * @returns {Number} + */ + getContentLength(): number; + + /** + * @see getContentLength + * @function contentLength + */ + contentLength(): number; + + /** + * gets the content-type header. + * @public + * @function getContentType + * @returns {String} + */ + getContentType(): string; + + /** + * @see getContentType + */ + contentType(): string; + + /** + * retrieves the complete URI requested by the client. + * @public + * @function getHref + * @returns {String} + */ + getHref(): string; + + /** + * @see getHref + */ + href(): string; + + log: Logger; + /** + * retrieves the request uuid. was created when the request was setup. + * @public + * @function getId + * @returns {String} + */ + getId(): string; + + /** + * @see getId + */ + id(): string; + + /** + * retrieves the cleaned up url path. + * e.g., /foo?a=1 => /foo + * @public + * @function getPath + * @returns {String} + */ + getPath(): string; + + /** + * @see getPath + */ + path(): string; + + /** + * returns the raw query string + * @public + * @function getQuery + * @returns {String} + */ + getQuery(): string; + + /** + * @see getQuery + */ + query: any; + + secure: boolean; + + /** + * returns ms since epoch when request was setup. + * @public + * @function time + * @returns {Number} + */ + time(): number; + + /** + * returns a parsed URL object. + * @public + * @function getUrl + * @returns {Object} + */ + getUrl(): url.Url; + + /** + * returns the accept-version header. + * @public + * @function getVersion + * @returns {String} + */ + getVersion(): string; + + /** + * @see getVersion + */ + version(): string; + params: any; + files?: { [name: string]: requestFileInterface }; + + /** + * Check if the incoming request is encrypted. + * @public + * @function isSecure + * @returns {Boolean} + */ + isSecure(): boolean; + /** available when bodyParser plugin is used */ + body?: any; + /** available when authorizationParser plugin is used */ + username?: string; + /** available when authorizationParser plugin is used */ + authorization?: requestAuthorization; + + timers: HandlerTiming[]; +} + +/** + * Timer object used to identify how long a specific handler took to run + * + * @property {String} name The name of the handler. + * @property {Array} time A tuple of [seconds, nanoseconds], how long the handler took. + */ +export interface HandlerTiming { + name: string; + time: [number, number]; +} + +export interface Response extends http.ServerResponse { + header(key: string, value?: any): any; + cache(type?: any, options?: any): any; + noCache(): any; + status(code: number): any; + send(status?: any, body?: any, headers?: { [header: string]: string }): any; + json(status?: any, body?: any, headers?: { [header: string]: string }): any; + code: number; + contentLength: number; + charSet(value: string): void; + contentType: string; + headers: any; + id: string; +} + +export interface RouteSpec { + method: string; + name: string; + path: string | RegExp; + versions: string[]; +} + +export interface Route { + name: string; + method: string; + path: RoutePathRegex; + spec: RouteSpec; + types: string[]; + versions: string[]; +} + +export interface RouteOptions { + name: string; + method: string; + path?: string | RegExp; + url?: string | RegExp; + urlParamPattern?: RegExp; + contentType?: string | string[]; + versions?: string | string[]; +} + +export interface RoutePathRegex extends RegExp { + restifyParams: string[]; +} + +export interface Router { + name: string; + mounts: { [routeName: string]: Route }; + versions: string[]; + contentType: string[]; + routes: { + DELETE: Route[]; + GET: Route[]; + HEAD: Route[]; + OPTIONS: Route[]; + PATCH: Route[]; + POST: Route[]; + PUT: Route[]; + }; + log?: any; + toString(): string; + + /** + * Takes an object of route params and query params, and 'renders' a URL + * @param {String} routeName the route name + * @param {Object} params an object of route params + * @param {Object} query an object of query params + * @returns {String} + */ + render(routeName: string, params: any, query?: any): string; + + /** + * adds a route. + * @param {Object} options an options object + * @returns {String} returns the route name if creation is successful. + */ + mount(options: any): string | boolean; + + /** + * unmounts a route. + * @param {String} name the route name + * @returns {String} the name of the deleted route (or false if it was not matched) + */ + unmount(name: string): string | boolean; + + /** + * finds the route for a given request and response. + * @param {Request} req the request object + * @param {Response} res the response object + * @param {Function} callback operation callback + * @returns {undefined} + */ + find(req: Request, res: Response, callback: (err: Error, route: Route) => void): void; +} + +export interface Server extends http.Server { + use(handler: RequestHandler | RequestHandler[], ...handlers: RequestHandler[]): Server; + // tslint:disable-next-line unified-signatures + use(handler: RequestHandler | RequestHandler[], ...handlers: RequestHandler[][]): Server; + + post(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; + // tslint:disable-next-line unified-signatures + post(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; + + patch(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; + // tslint:disable-next-line unified-signatures + patch(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; + + put(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; + // tslint:disable-next-line unified-signatures + put(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; + + del(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; + // tslint:disable-next-line unified-signatures + del(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; + + get(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; + // tslint:disable-next-line unified-signatures + get(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; + + head(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; + // tslint:disable-next-line unified-signatures + head(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; + + opts(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[]): string; + // tslint:disable-next-line unified-signatures + opts(route: any, routeCallBack: RequestHandler | RequestHandler[], ...routeCallBacks: RequestHandler[][]): string; + + name: string; + version: string; + log: any; + acceptable: string[]; + url: string; + address(): addressInterface; + listen(...args: any[]): any; + close(...args: any[]): any; + pre(routeCallBack: RequestHandler): Server; + server: http.Server; + router: Router; + routes: Route[]; + toString(): string; +} + +export interface ServerOptions { + ca?: string; + certificate?: string | string[] | Buffer | Buffer[]; + key?: string | string[] | Buffer | Buffer[]; + formatters?: any; + log?: any; + name?: string; + spdy?: any; + version?: string; + responseTimeHeader?: string; + responseTimeFormatter?(durationInMilliseconds: number): any; + handleUpgrades?: boolean; + router?: Router; + httpsServerOptions?: any; + socketio?: boolean; +} + +export interface ClientOptions { + accept?: string; + connectTimeout?: number; + requestTimeout?: number; + dtrace?: any; + gzip?: any; + headers?: any; + log?: any; + retry?: any; + signRequest?(): void; + url?: string; + userAgent?: string; + version?: string; +} + +export interface Client { + get(opts: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request, res: Response, obj: any) => any): any; + head(opts: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request, res: Response) => any): any; + post(opts: string | { path?: string; [name: string]: any }, object: any, callback?: (err: any, req: Request, res: Response, obj: any) => any): any; + put(opts: string | { path?: string; [name: string]: any }, object: any, callback?: (err: any, req: Request, res: Response, obj: any) => any): any; + patch(opts: string | { path?: string; [name: string]: any }, object: any, callback?: (err: any, req: Request, res: Response, obj: any) => any): any; + del(opts: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request, res: Response) => any): any; + basicAuth(username: string, password: string): any; +} + +export interface HttpClient { + get(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; + head(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; + post(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; + put(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; + patch(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; + del(opts?: string | { path?: string; [name: string]: any }, callback?: (err: any, req: Request) => void): any; + basicAuth(username: string, password: string): any; +} + +export interface ThrottleOptions { + burst?: number; + rate?: number; + ip?: boolean; + xff?: boolean; + username?: boolean; + tokensTable?: any; + maxKeys?: number; + overrides?: any; +} + +export interface Next { + (err?: any): any; + ifError(err?: any): any; +} + +export type RequestHandler = (req: Request, res: Response, next: Next) => any; + +export function createServer(options?: ServerOptions): Server; + +export function createJsonClient(options?: ClientOptions): Client; +export function createStringClient(options?: ClientOptions): Client; +export function createClient(options?: ClientOptions): HttpClient; + +export class HttpError { constructor(cause: any, message?: any); } + +export class DefiniteHttpError { + constructor(message?: any); + + // tslint:disable-next-line unified-signatures + constructor(cause: any, message?: any); +} + +export class BadRequestError extends DefiniteHttpError { } +export class UnauthorizedError extends DefiniteHttpError { } +export class PaymentRequiredError extends DefiniteHttpError { } +export class ForbiddenError extends DefiniteHttpError { } +export class NotFoundError extends DefiniteHttpError { } +export class MethodNotAllowedError extends DefiniteHttpError { } +export class NotAcceptableError extends DefiniteHttpError { } +export class ProxyAuthenticationRequiredError extends DefiniteHttpError { } +export class RequestTimeoutError extends DefiniteHttpError { } +export class ConflictError extends DefiniteHttpError { } +export class GoneError extends DefiniteHttpError { } +export class LengthRequiredError extends DefiniteHttpError { } +export class RequestEntityTooLargeError extends DefiniteHttpError { } +export class RequesturiTooLargeError extends DefiniteHttpError { } +export class UnsupportedMediaTypeError extends DefiniteHttpError { } +export class RequestedRangeNotSatisfiableError extends DefiniteHttpError { } +export class ExpectationFailedError extends DefiniteHttpError { } +export class ImATeapotError extends DefiniteHttpError { } +export class UnprocessableEntityError extends DefiniteHttpError { } +export class LockedError extends DefiniteHttpError { } +export class FailedDependencyError extends DefiniteHttpError { } +export class UnorderedCollectionError extends DefiniteHttpError { } +export class UpgradeRequiredError extends DefiniteHttpError { } +export class PreconditionRequiredError extends DefiniteHttpError { } +export class TooManyRequestsError extends DefiniteHttpError { } +export class RequestHeaderFieldsTooLargeError extends DefiniteHttpError { } +export class InternalServerError extends DefiniteHttpError { } +export class NotImplementedError extends DefiniteHttpError { } +export class BadGatewayError extends DefiniteHttpError { } +export class ServiceUnavailableError extends DefiniteHttpError { } +export class GatewayTimeoutError extends DefiniteHttpError { } +export class HttpVersionNotSupportedError extends DefiniteHttpError { } +export class VariantAlsoNegotiatesError extends DefiniteHttpError { } +export class InsufficientStorageError extends DefiniteHttpError { } +export class BandwidthLimitExceededError extends DefiniteHttpError { } +export class NotExtendedError extends DefiniteHttpError { } +export class NetworkAuthenticationRequiredError extends DefiniteHttpError { } +export class RestError extends DefiniteHttpError { } + +export class PreconditionFailedError extends RestError { } +export class BadDigestError extends RestError { } +export class BadMethodError extends RestError { } +export class InternalError extends RestError { } +export class InvalidArgumentError extends RestError { } +export class InvalidContentError extends RestError { } +export class InvalidCredentialsError extends RestError { } +export class InvalidHeaderError extends RestError { } +export class InvalidVersionError extends RestError { } +export class MissingParameterError extends RestError { } +export class NotAuthorizedError extends RestError { } +export class RequestExpiredError extends RestError { } +export class RequestThrottledError extends RestError { } +export class ResourceNotFoundError extends RestError { } +export class WrongAcceptError extends RestError { } + +export function acceptParser(parser: any): RequestHandler; +export function authorizationParser(): RequestHandler; +export function dateParser(skew?: number): RequestHandler; +export function queryParser(options?: any): RequestHandler; +export function urlEncodedBodyParser(options?: any): RequestHandler[]; +export function jsonp(): RequestHandler; +export function gzipResponse(options?: any): RequestHandler; +export function bodyParser(options?: any): RequestHandler[]; +export function requestLogger(options?: any): RequestHandler; +export function serveStatic(options?: any): RequestHandler; +export function throttle(options?: ThrottleOptions): RequestHandler; +export function conditionalRequest(): RequestHandler[]; +export function auditLogger(options: { log: any }): (req: Request, res: Response, route: Route, err: any) => void; +export function fullResponse(): RequestHandler; +// tslint:disable-next-line no-var +export var defaultResponseHeaders: any; + +export function CORS(options?: CORSOptions): RequestHandler; +export interface CORSOptions { + origins?: string[]; + credentials?: boolean; + headers?: string[]; +} + +export const pre: { + pause(): RequestHandler; + sanitizePath(options?: any): RequestHandler; + userAgentConnection(options?: any): RequestHandler; +}; diff --git a/types/restify/v4/restify-tests.ts b/types/restify/v4/restify-tests.ts new file mode 100644 index 0000000000..15eb8eb868 --- /dev/null +++ b/types/restify/v4/restify-tests.ts @@ -0,0 +1,347 @@ +import * as restify from "restify"; +import * as url from "url"; + +let server = restify.createServer({ + formatters: { + 'application/foo': function formatFoo(req: restify.Request, res: restify.Response, body: any) { + if (body instanceof Error) + return body.stack; + + if (body) + return body.toString('base64'); + + return body; + } + } +}); + +server = restify.createServer({ + ca: "test", + certificate: "test", + key: "test", + formatters: {}, + log: {}, + name: "test", + spdy: {}, + version: "", + responseTimeHeader: "", + responseTimeFormatter: (durationInMilliseconds: number) => { }, + socketio: false +}); + +server.pre(restify.pre.sanitizePath()); + +server.on('someEvent', () => { }); + +server.use((req: restify.Request, res: restify.Response, next: restify.Next) => { }); +server.use([(req: restify.Request, res: restify.Response, next: restify.Next) => { }]); +server.use((req: restify.Request, res: restify.Response, next: restify.Next) => { }, (req: restify.Request, res: restify.Response, next: restify.Next) => { }); + +function send(req: restify.Request, res: restify.Response, next: restify.Next) { + req.header('key', 'val'); + req.header('key') === 'val'; + req.trailer('key', 'val'); + req.trailer('key') === 'val'; + + req.accepts('test') === true; + req.accepts(['test']) === true; + req.acceptsEncoding('test') === true; + req.acceptsEncoding(['test']) === true; + req.is('test') === true; + req.isChunked() === true; + req.isKeepAlive() === true; + req.isSecure() === true; + req.isUpgradeRequest() === true; + req.isUpload() === true; + req.userAgent() === 'test'; + req.startHandlerTimer('test'); + req.endHandlerTimer('test'); + req.absoluteUri('test') === 'test'; + + req.timers.pop() === { name: 'test', time: [0, 1234] }; + req.getLogger('test'); + + const log = req.log; + log.debug({ params: req.params }, 'Hello there %s', 'foo'); + + req.getContentLength() === 50; + req.contentLength() === 50; + req.getContentType() === 'test'; + req.contentType() === 'test'; + req.getHref() === 'test'; + req.href() === 'test'; + req.getId() === 'test'; + req.id() === 'test'; + req.getPath() === 'test'; + req.path() === 'test'; + req.getQuery() === 'test'; + req.query === 'test'; + req.secure === true; + req.time() === 1463518410080; + req.getUrl() === url.parse('http://test.test.test/test'); + req.getVersion() === 'test'; + req.version() === 'test'; + req.params; + + res.header('test'); + res.header('test', {}); + res.header('test', new Date()); + + res.cache(); + res.cache('testst', {}); + + res.status(344); + + res.send({ hello: 'world' }); + res.send(201, { hello: 'world' }); + res.send(new restify.BadRequestError('meh')); + + res.json(201, { hello: 'world' }); + res.json({ hello: 'world' }); + + res.code === 50; + res.contentLength === 50; + res.charSet('test'); + res.contentType === 'test'; + res.headers; + res.id === 'test'; + + res.send('hello ' + req.params.name); + return next(); +} + +server.post('/hello', send); +server.put('/hello', send); +server.del('/hello', send); +server.get('/hello', send); +server.head('/hello', send); +server.opts('/hello', send); + +server.post(/(.*)/, send); +server.put(/(.*)/, send); +server.del(/(.*)/, send); +server.get(/(.*)/, send); +server.head(/(.*)/, send); +server.opts(/(.*)/, send); + +new restify.BadRequestError(); +new restify.UnauthorizedError(); +new restify.PaymentRequiredError(); +new restify.ForbiddenError(); +new restify.NotFoundError(); +new restify.MethodNotAllowedError(); +new restify.NotAcceptableError(); +new restify.ProxyAuthenticationRequiredError(); +new restify.RequestTimeoutError(); +new restify.ConflictError(); +new restify.GoneError(); +new restify.LengthRequiredError(); +new restify.RequestEntityTooLargeError(); +new restify.RequesturiTooLargeError(); +new restify.UnsupportedMediaTypeError(); +new restify.RequestedRangeNotSatisfiableError(); +new restify.ExpectationFailedError(); +new restify.ImATeapotError(); +new restify.UnprocessableEntityError(); +new restify.LockedError(); +new restify.FailedDependencyError(); +new restify.UnorderedCollectionError(); +new restify.UpgradeRequiredError(); +new restify.PreconditionRequiredError(); +new restify.TooManyRequestsError(); +new restify.RequestHeaderFieldsTooLargeError(); +new restify.InternalServerError(); +new restify.NotImplementedError(); +new restify.BadGatewayError(); +new restify.ServiceUnavailableError(); +new restify.GatewayTimeoutError(); +new restify.HttpVersionNotSupportedError(); +new restify.VariantAlsoNegotiatesError(); +new restify.InsufficientStorageError(); +new restify.BandwidthLimitExceededError(); +new restify.NotExtendedError(); +new restify.NetworkAuthenticationRequiredError(); +new restify.RestError(); + +new restify.BadRequestError(new Error(), 'foo'); +new restify.UnauthorizedError(new Error(), 'foo'); +new restify.PaymentRequiredError(new Error(), 'foo'); +new restify.ForbiddenError(new Error(), 'foo'); +new restify.NotFoundError(new Error(), 'foo'); +new restify.MethodNotAllowedError(new Error(), 'foo'); +new restify.NotAcceptableError(new Error(), 'foo'); +new restify.ProxyAuthenticationRequiredError(new Error(), 'foo'); +new restify.RequestTimeoutError(new Error(), 'foo'); +new restify.ConflictError(new Error(), 'foo'); +new restify.GoneError(new Error(), 'foo'); +new restify.LengthRequiredError(new Error(), 'foo'); +new restify.RequestEntityTooLargeError(new Error(), 'foo'); +new restify.RequesturiTooLargeError(new Error(), 'foo'); +new restify.UnsupportedMediaTypeError(new Error(), 'foo'); +new restify.RequestedRangeNotSatisfiableError(new Error(), 'foo'); +new restify.ExpectationFailedError(new Error(), 'foo'); +new restify.ImATeapotError(new Error(), 'foo'); +new restify.UnprocessableEntityError(new Error(), 'foo'); +new restify.LockedError(new Error(), 'foo'); +new restify.FailedDependencyError(new Error(), 'foo'); +new restify.UnorderedCollectionError(new Error(), 'foo'); +new restify.UpgradeRequiredError(new Error(), 'foo'); +new restify.PreconditionRequiredError(new Error(), 'foo'); +new restify.TooManyRequestsError(new Error(), 'foo'); +new restify.RequestHeaderFieldsTooLargeError(new Error(), 'foo'); +new restify.InternalServerError(new Error(), 'foo'); +new restify.NotImplementedError(new Error(), 'foo'); +new restify.BadGatewayError(new Error(), 'foo'); +new restify.ServiceUnavailableError(new Error(), 'foo'); +new restify.GatewayTimeoutError(new Error(), 'foo'); +new restify.HttpVersionNotSupportedError(new Error(), 'foo'); +new restify.VariantAlsoNegotiatesError(new Error(), 'foo'); +new restify.InsufficientStorageError(new Error(), 'foo'); +new restify.BandwidthLimitExceededError(new Error(), 'foo'); +new restify.NotExtendedError(new Error(), 'foo'); +new restify.NetworkAuthenticationRequiredError(new Error(), 'foo'); +new restify.RestError(new Error(), 'foo'); + +new restify.PreconditionFailedError(new Error(), 'foo'); +new restify.BadDigestError(new Error(), 'foo'); +new restify.BadMethodError(new Error(), 'foo'); +new restify.InternalError(new Error(), 'foo'); +new restify.InvalidArgumentError(new Error(), 'foo'); +new restify.InvalidContentError(new Error(), 'foo'); +new restify.InvalidCredentialsError(new Error(), 'foo'); +new restify.InvalidHeaderError(new Error(), 'foo'); +new restify.InvalidVersionError(new Error(), 'foo'); +new restify.MissingParameterError(new Error(), 'foo'); +new restify.NotAuthorizedError(new Error(), 'foo'); +new restify.RequestExpiredError(new Error(), 'foo'); +new restify.RequestThrottledError(new Error(), 'foo'); +new restify.ResourceNotFoundError(new Error(), 'foo'); +new restify.WrongAcceptError(new Error(), 'foo'); + +new restify.PreconditionFailedError(); +new restify.BadDigestError(); +new restify.BadMethodError(); +new restify.InternalError(); +new restify.InvalidArgumentError(); +new restify.InvalidContentError(); +new restify.InvalidCredentialsError(); +new restify.InvalidHeaderError(); +new restify.InvalidVersionError(); +new restify.MissingParameterError(); +new restify.NotAuthorizedError(); +new restify.RequestExpiredError(); +new restify.RequestThrottledError(); +new restify.ResourceNotFoundError(); +new restify.WrongAcceptError(); + +server.name = ""; +server.version = ""; +server.log = {}; +server.acceptable = ["test"]; +server.url = ""; + +server.address().port; +server.address().family; +server.address().address; + +server.listen("somePath", send); +server.close(); + +server.use(restify.acceptParser(server.acceptable)); +server.use(restify.authorizationParser()); +server.use(restify.dateParser()); +server.use(restify.queryParser()); +server.use(restify.jsonp()); +server.use(restify.gzipResponse()); +server.use(restify.bodyParser()); +server.use(restify.CORS({ + origins: ['https://foo.com', 'http://bar.com', 'http://baz.com:8081'], + credentials: true, + headers: ['x-foo'] +})); +server.use(restify.throttle({ + burst: 100, + rate: 50, + ip: true, + overrides: { + '192.168.1.1': { + rate: 0, + burst: 0 + } + } +})); + +server.on('after', restify.auditLogger({ + log: () => { } +})); + +server.on('after', (req: restify.Request, res: restify.Response, route: restify.Route, err: any) => { + route.spec.method === 'GET'; + route.spec.name === 'routeName'; + route.spec.path === '/some/path'; + route.spec.path === /\/some\/path\/.*/; + route.spec.versions === ['v1']; + restify.auditLogger({ log: () => { } })(req, res, route, err); +}); + +( restify).defaultResponseHeaders = function(this: restify.Request, data: any) { + this.header('Server', 'helloworld'); +}; + +( restify).defaultResponseHeaders = false; + +// RESTIFY Client Tests + +let client = restify.createJsonClient({ + url: 'https://api.us-west-1.joyentcloud.com', + version: '*' +}); + +client = restify.createStringClient({ + accept: "test", + connectTimeout: 30, + dtrace: {}, + gzip: {}, + headers: {}, + log: {}, + retry: {}, + signRequest: () => { }, + url: "", + userAgent: "", + version: "" +}); + +client.head('test', (err: any, req: restify.Request, res: restify.Response) => { }); +client.put('path', {}, (err: any, req: restify.Request, res: restify.Response, obj: any) => { }); +client.patch('path', {}, (err: any, req: restify.Request, res: restify.Response, obj: any) => { }); +client.del('path', (err: any, req: restify.Request, res: restify.Response) => { }); + +client.post('/foo', { hello: 'world' }, (err: any, req: restify.Request, res: restify.Response, obj: any) => { + console.log('%d -> %j', res.statusCode, res.headers); + console.log('%j', obj); +}); + +client.get('/foo/bar', (err: any, req: restify.Request, res: restify.Response, data: string) => { + console.log('%s', data); +}); + +let client2 = restify.createClient({ + url: 'http://127.0.0.1' +}); + +client2.get('/str/mcavage', (err: any, req: any) => { + req.on('result', (err: any, res: any) => { + res.body = ''; + res.setEncoding('utf8'); + res.on('data', (chunk: string) => { + res.body += chunk; + }); + + res.on('end', () => { + console.log(res.body); + }); + }); +}); + +client.basicAuth('test', 'password'); +client2.basicAuth('test', 'password'); diff --git a/types/restify/v4/tsconfig.json b/types/restify/v4/tsconfig.json new file mode 100644 index 0000000000..dae2203c7e --- /dev/null +++ b/types/restify/v4/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../../", + "typeRoots": [ + "../../" + ], + "paths": { + "restify": [ "restify/v4" ] + }, + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "restify-tests.ts" + ] +} diff --git a/types/restify/v4/tslint.json b/types/restify/v4/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/restify/v4/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/rrc/index.d.ts b/types/rrc/index.d.ts index 6a56baf3fc..f4ef84e568 100644 --- a/types/rrc/index.d.ts +++ b/types/rrc/index.d.ts @@ -22,10 +22,10 @@ export interface WithScrollOptions { alignToTop?: boolean; } -export type ComponentConstructor = React.ComponentClass | React.SFC; +export type ComponentConstructor = React.ComponentType; -export function withScroll(component: ComponentConstructor | undefined>, options?: WithScrollOptions) - : ComponentConstructor | undefined>; +export function withScroll(component: ComponentConstructor | {}>, options?: WithScrollOptions) + : ComponentConstructor | {}>; export type RouteConfiguration = RouteProps & { inject?: { [key: string]: any } }; diff --git a/types/seamless-immutable/index.d.ts b/types/seamless-immutable/index.d.ts index ceeccd7b3f..16256d8e83 100644 --- a/types/seamless-immutable/index.d.ts +++ b/types/seamless-immutable/index.d.ts @@ -1,63 +1,83 @@ -// Type definitions for Seamless-immutable 6.1.3 +// Type definitions for Seamless-immutable 7.1 // Project: https://github.com/rtfeldman/seamless-immutable // Definitions by: alex3165 +// Stepan Burguchev // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped - -// This project is licensed under the MIT license. -// Copyrights are respective of each contributor listed at the beginning of each definition file. - -// Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: - -// The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. - -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +// TypeScript Version: 2.3 export = SeamlessImmutable; declare namespace SeamlessImmutable { - interface MergeConfig { - deep?: boolean; - merger?: Function; - } + type DeepPartial = { + [P in keyof T]?: DeepPartial; + }; - interface Options { - prototype?: any; - } + interface MergeConfig { + deep?: boolean; + merger?(a: any, b: any, config: any): any; + } - interface AsMutableOptions { - deep: boolean; - } + interface Options { + prototype?: any; + } - export interface ImmutableObject { - set(property: string, value: any): ImmutableObject; - setIn(propertyPath: Array, value: any): ImmutableObject; + interface AsMutableOptions { + deep: boolean; + } - asMutable(): T; - asMutable(opts: AsMutableOptions): T; + interface ImmutableObjectMixin { + set(property: K, value: T[K]): ImmutableObject; + set(property: string, value: TValue): ImmutableObject; - merge(part: any, config?: MergeConfig): ImmutableObject; + setIn(propertyPath: [ K ], value: T[K]): ImmutableObject; + setIn(propertyPath: [ K, L ], value: T[K][L]): ImmutableObject; + setIn(propertyPath: [ K, L, M ], value: T[K][L][M]): ImmutableObject; + setIn( + propertyPath: [ K, L, M, N ], value: T[K][L][M][N]): ImmutableObject; + setIn( + propertyPath: [ K, L, M, N, O ], value: T[K][L][M][N][O]): ImmutableObject; + setIn(propertyPath: string[], value: TValue): ImmutableObject; - update(property: string, updaterFunction: (value: any, ...additionalParamters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; - updateIn(propertyPath: Array, updaterFunction: (value: any, ...additionalParamters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; + asMutable(opts?: AsMutableOptions): T; - without(property: string): ImmutableObject; - without(...properties: string[]): ImmutableObject; - without(filter: (value: any, key: string) => boolean): ImmutableObject; - } + merge(part: DeepPartial, config?: MergeConfig): ImmutableObject; - export interface ImmutableArray { - asMutable(): Array; - asMutable(opts: AsMutableOptions): Array; - asObject(toKeyValue: (item: T) => Array): ImmutableObject; - flatMap(mapFunction: (item: T) => Array): ImmutableArray; - } + update(property: K, updaterFunction: (value: T[K], ...additionalParameters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; + update(property: string, updaterFunction: (value: TValue, ...additionalParameters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; - // an immutable object is both of Type T (i.e., looks like a normal T) and of type Immutable - export type Immutable = T & (ImmutableObject | ImmutableArray); + updateIn( + propertyPath: [ K ], updaterFunction: (value: T[K], ...additionalParameters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; + updateIn( + propertyPath: [ K, L ], updaterFunction: (value: T[K][L], ...additionalParameters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; + updateIn( + propertyPath: [ K, L, M ], updaterFunction: (value: T[K][L][M], ...additionalParameters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; + updateIn( + propertyPath: [ K, L, M, N ], updaterFunction: (value: T[K][L][M][N], ...additionalParameters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; + updateIn( + propertyPath: [ K, L, M, N, O ], updaterFunction: (value: T[K][L][M][N][O], ...additionalParameters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; + updateIn(propertyPath: string[], updaterFunction: (value: TValue, ...additionalParameters: any[]) => any, ...additionalArguments: any[]): ImmutableObject; - export function from(obj: Array, options?: Options): Array & ImmutableArray; - export function from(obj: T, options?: Options): T & ImmutableObject; + without(property: K): ImmutableObject; + without(...properties: K[]): ImmutableObject; + without(filter: (value: T[K], key: K) => boolean): ImmutableObject; + } - export function isImmutable(target: any): boolean; - export function ImmutableError(message: string): Error; -} \ No newline at end of file + interface ImmutableArrayMixin { + asMutable(opts?: AsMutableOptions): T[]; + asObject(toKeyValue: (item: T) => [string, any]): ImmutableObject; + flatMap(mapFunction: (item: T) => TTarget[]): ImmutableArray; + } + + type ImmutableObject = T & ImmutableObjectMixin; + type ImmutableArray = T[] & ImmutableArrayMixin; + type Immutable = ImmutableObject | ImmutableArray; + + function from(obj: T[], options?: Options): ImmutableArray; + function from(obj: T, options?: Options): ImmutableObject; + + function isImmutable(target: any): boolean; + function ImmutableError(message: string): Error; +} + +declare function SeamlessImmutable(obj: T[], options?: SeamlessImmutable.Options): SeamlessImmutable.ImmutableArray; +declare function SeamlessImmutable(obj: T, options?: SeamlessImmutable.Options): SeamlessImmutable.ImmutableObject; diff --git a/types/seamless-immutable/seamless-immutable-tests.ts b/types/seamless-immutable/seamless-immutable-tests.ts index 745135b6a9..606d991aea 100644 --- a/types/seamless-immutable/seamless-immutable-tests.ts +++ b/types/seamless-immutable/seamless-immutable-tests.ts @@ -1,51 +1,119 @@ -import SI = require("seamless-immutable"); +import * as Immutable from 'seamless-immutable'; -// Immutable instance method test -const isImmutable: boolean = SI.isImmutable(SI.from([0, 2])); -const error: Error = SI.ImmutableError("error"); +// Test types -// Immutable Array tests -const siArray: SI.ImmutableArray = SI.from([0, 1, 2]); - -const mutableArray: Array = siArray.asMutable(); -const mutableArray2: Array = siArray.asMutable({ deep: true }); -const arrayToObject: SI.ImmutableObject = siArray.asObject((value: number) => - [value.toString(), value] -); -const flatMappedArray: SI.ImmutableArray = siArray.flatMap((value: number) => - [value, value] -); - -// Immutable Object tests interface User { - firstName: string; - lastName: string; -}; + firstName: string; + lastName: string; +} interface Address { - line1: string; + line1: string; } interface ExtendedUser extends User { - address: Address; + address: Address; } -const siObject: SI.ImmutableObject = SI.from({ - firstName: "Mike", - lastName: "test" -}); -const extUser: SI.ImmutableObject = siObject.set("address", { - line1: "test" -}); +// +// Constructors +// --------------------------------------------------------------- -const updatedAddress: SI.ImmutableObject = extUser.setIn(["address", "line1"], "test2"); -const mutableUser: ExtendedUser = updatedAddress.asMutable(); -const mutableUser2: ExtendedUser = updatedAddress.asMutable({ deep: true }); -const mergedUser: SI.ImmutableObject = siObject.merge({ lastName: "hello" }); -const updatedUser: SI.ImmutableObject = extUser.update("firstName", (firstName): string => - firstName + "hehe" -); -const updatedInUser: SI.ImmutableObject = extUser.updateIn(["address", "line1"], (line): string => - line + "new address" -); -const userWithoutAddress: SI.ImmutableObject = extUser.without("address"); +{ + interface User { + firstName: string; + lastName: string; + } + + const arrayOfNumbers1: Immutable.ImmutableArray = Immutable.from([0, 2]); + const arrayOfNumbers2: Immutable.ImmutableArray = Immutable([0, 2]); + const user1: Immutable.ImmutableObject = Immutable.from({ + firstName: 'Angry', + lastName: 'Monkey' + }); + const user2: Immutable.ImmutableObject = Immutable({ + firstName: 'Angry', + lastName: 'Monkey' + }); + const error: Error = Immutable.ImmutableError('error'); +} + +// +// Static utilities +// --------------------------------------------------------------- + +{ + const isImmutable: boolean = Immutable.isImmutable(Immutable.from([0, 2])); +} + +// +// Instance syntax: immutable array +// --------------------------------------------------------------- +{ + const array: Immutable.ImmutableArray = Immutable.from([ { firstName: 'Angry', lastName: 'Monkey' } ]); + + // asMutable + const mutableArray1: User[] = array.asMutable(); + const mutableArray2: User[] = array.asMutable({ deep: true }); + + // flatMap + const flatMappedArray: Immutable.ImmutableArray = array.flatMap((value: User) => + [value, value] + ); + + // asObject + const arrayToObject1: Immutable.ImmutableObject = array.asObject((value) => [value.toString(), value]); +} + +// +// Instance syntax: immutable object +// --------------------------------------------------------------- + +{ + const immutableUser: Immutable.ImmutableObject = Immutable.from({ + firstName: 'Pure', + lastName: 'Gold' + }); + const immutableUserEx: Immutable.ImmutableObject = Immutable.from({ + firstName: 'Hairy', + lastName: 'Dog', + address: { + line1: 'Big house' + } + }); + const data: { + propertyId: string + } = { + propertyId: 'user.1' + }; + + // set: property name is strongly checked + const updatedUser01: Immutable.ImmutableObject = immutableUser.set('firstName', 'Whirlwind'); + const updatedUser02: Immutable.ImmutableObject = immutableUser.set(data.propertyId, 'Whirlwind'); + + // setIn: property path is strongly checked for up to 5 arguments (helps with refactoring and intellisense) + // but will fall back to any[] if there are dynamic arguments on the way + const updatedUser11: Immutable.ImmutableObject = immutableUserEx.setIn(['address', 'line1'], 'Small house'); + const updatedUser12: Immutable.ImmutableObject = immutableUserEx.setIn([ data.propertyId, 'line1' ], 'Small house'); + + // asMutable + const mutableUser21: User = immutableUser.asMutable(); + const mutableUser22: User = immutableUser.asMutable({ deep: true }); + + // merge: merged part is strongly checked as a deeply partial object + const mergedUser: Immutable.ImmutableObject = immutableUserEx.merge({ address: { line1: 'Small house' }, firstName: 'Jack' }); + + // update: property name is strongly checked + const updatedUser41: Immutable.ImmutableObject = immutableUser.update('firstName', x => x.toLowerCase() + ' Whirlwind'); + // the type of the updated value must be explicity specified in case of fallback + const updatedUser42: Immutable.ImmutableObject = immutableUser.update(data.propertyId, x => x.toLowerCase() + ' Whirlwind'); + + // updateIn: property path is strongly checked for up to 5 arguments (helps with refactoring and intellisense) + // but will fall back to any[] if there are dynamic arguments on the way + const updatedUser51: Immutable.ImmutableObject = immutableUserEx.updateIn([ 'address', 'line1' ], x => x.toLowerCase() + ' 43'); + // the type of the updated value must be explicity specified in case of fallback + const updatedUser52: Immutable.ImmutableObject = immutableUserEx.updateIn([ data.propertyId, 'line1' ], x => x.toLowerCase() + ' 43'); + + // without + const simpleUser1: Immutable.ImmutableObject = immutableUserEx.without('address'); +} diff --git a/types/seamless-immutable/tsconfig.json b/types/seamless-immutable/tsconfig.json index 6ca679e6d8..8e2483cd41 100644 --- a/types/seamless-immutable/tsconfig.json +++ b/types/seamless-immutable/tsconfig.json @@ -19,4 +19,4 @@ "index.d.ts", "seamless-immutable-tests.ts" ] -} \ No newline at end of file +} diff --git a/types/seamless-immutable/tslint.json b/types/seamless-immutable/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/seamless-immutable/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/select2/index.d.ts b/types/select2/index.d.ts index 8830f270dc..740f329742 100644 --- a/types/select2/index.d.ts +++ b/types/select2/index.d.ts @@ -114,7 +114,74 @@ interface Select2SelectionObject { title: string; } +interface Select2Plugin { + amd: any; + + (): JQuery; + (it: IdTextPair): JQuery; + + /** + * Get the id value of the current selection + */ + (method: 'val'): any; + /** + * Set the id value of the current selection + * @params value Value to set the id to + * @params triggerChange Should a change event be triggered + */ + (method: 'val', value: any, triggerChange?: boolean): any; + /** + * Get the data object of the current selection + */ + (method: 'data'): any; + /** + * Set the data of the current selection + * @params value Object to set the data to + * @params triggerChange Should a change event be triggered + */ + (method: 'data', value: any, triggerChange?: boolean): any; + /** + * Reverts changes to DOM done by Select2. Any selection done via Select2 will be preserved. + */ + (method: 'destroy'): JQuery; + /** + * Opens the dropdown + */ + (method: 'open'): JQuery; + /** + * Closes the dropdown + */ + (method: 'close'): JQuery; + /** + * Enables or disables Select2 and its underlying form component + * @param value True if it should be enabled false if it should be disabled + */ + (method: 'enable', value: boolean): JQuery; + /** + * Toggles readonly mode on Select2 and its underlying form component + * @param value True if it should be readonly false if it should be read write + */ + (method: 'readonly', value: boolean): JQuery; + /** + * Retrieves the main container element that wraps all of DOM added by Select2 + */ + (method: 'container'): JQuery; + /** + * Notifies Select2 that a drag and drop sorting operation has started + */ + (method: 'onSortStart'): JQuery; + /** + * Notifies Select2 that a drag and drop sorting operation has finished + */ + (method: 'onSortEnd'): JQuery; + + (method: string): any; + (method: string, value: any, trigger?: boolean): any; + (options: Select2Options): JQuery; +} + interface JQuery { + select2: Select2Plugin; off(events?: "change", selector?: any, handler?: (eventObject: Select2JQueryEventObject) => any): JQuery; on(events: "change", selector?: string, data?: any, handler?: (eventObject: Select2JQueryEventObject) => any): JQuery; @@ -140,68 +207,6 @@ interface JQuery { on(events: "select2-loaded", handler?: (eventObject: Select2JQueryEventObject) => any): JQuery; on(events: "select2-focus", handler?: (eventObject: Select2JQueryEventObject) => any): JQuery; on(events: "select2-blur", handler?: (eventObject: Select2JQueryEventObject) => any): JQuery; - - select2(): JQuery; - select2(it: IdTextPair): JQuery; - - /** - * Get the id value of the current selection - */ - select2(method: 'val'): any; - /** - * Set the id value of the current selection - * @params value Value to set the id to - * @params triggerChange Should a change event be triggered - */ - select2(method: 'val', value: any, triggerChange?: boolean): any; - /** - * Get the data object of the current selection - */ - select2(method: 'data'): any; - /** - * Set the data of the current selection - * @params value Object to set the data to - * @params triggerChange Should a change event be triggered - */ - select2(method: 'data', value: any, triggerChange?: boolean): any; - /** - * Reverts changes to DOM done by Select2. Any selection done via Select2 will be preserved. - */ - select2(method: 'destroy'): JQuery; - /** - * Opens the dropdown - */ - select2(method: 'open'): JQuery; - /** - * Closes the dropdown - */ - select2(method: 'close'): JQuery; - /** - * Enables or disables Select2 and its underlying form component - * @param value True if it should be enabled false if it should be disabled - */ - select2(method: 'enable', value: boolean): JQuery; - /** - * Toggles readonly mode on Select2 and its underlying form component - * @param value True if it should be readonly false if it should be read write - */ - select2(method: 'readonly', value: boolean): JQuery; - /** - * Retrieves the main container element that wraps all of DOM added by Select2 - */ - select2(method: 'container'): JQuery; - /** - * Notifies Select2 that a drag and drop sorting operation has started - */ - select2(method: 'onSortStart'): JQuery; - /** - * Notifies Select2 that a drag and drop sorting operation has finished - */ - select2(method: 'onSortEnd'): JQuery; - - select2(method: string): any; - select2(method: string, value: any, trigger?: boolean): any; - select2(options: Select2Options): JQuery; } declare class Select2 { diff --git a/types/send/index.d.ts b/types/send/index.d.ts index 4b738fa011..6c38861c4f 100644 --- a/types/send/index.d.ts +++ b/types/send/index.d.ts @@ -197,7 +197,7 @@ declare namespace send { /** * Pipe to `res`. */ - pipe(res: stream.Writable): stream.Writable; + pipe(res: T): T; /** * Transfer `path`. diff --git a/types/sequelize/index.d.ts b/types/sequelize/index.d.ts index 86ecb00809..9ffda92873 100644 --- a/types/sequelize/index.d.ts +++ b/types/sequelize/index.d.ts @@ -259,7 +259,7 @@ declare namespace sequelize { /** * An optional where clause to limit the associated models. */ - where?: WhereOptions; + where?: AnyWhereOptions; /** * Apply a scope on the related model, or remove its default scope by passing false. @@ -346,7 +346,7 @@ declare namespace sequelize { */ ( newAssociations?: Array, - options?: HasManySetAssociationsMixinOptions | FindOptions | InstanceUpdateOptions + options?: HasManySetAssociationsMixinOptions | AnyFindOptions | InstanceUpdateOptions ): Promise; } @@ -672,7 +672,7 @@ declare namespace sequelize { /** * An optional where clause to limit the associated models. */ - where?: WhereOptions; + where?: AnyWhereOptions; /** * Apply a scope on the related model, or remove its default scope by passing false. @@ -722,7 +722,7 @@ declare namespace sequelize { /** * An optional where clause to limit the associated models. */ - where?: WhereOptions; + where?: AnyWhereOptions; /** * Apply a scope on the related model, or remove its default scope by passing false. @@ -809,7 +809,7 @@ declare namespace sequelize { */ ( newAssociations?: Array, - options?: BelongsToManySetAssociationsMixinOptions | FindOptions | BulkCreateOptions | InstanceUpdateOptions | InstanceDestroyOptions | { through: TJoinTableAttributes } + options?: BelongsToManySetAssociationsMixinOptions | AnyFindOptions | BulkCreateOptions | InstanceUpdateOptions | InstanceDestroyOptions | { through: TJoinTableAttributes } ): Promise; } @@ -858,7 +858,7 @@ declare namespace sequelize { */ ( newAssociations?: Array, - options?: BelongsToManyAddAssociationsMixinOptions | FindOptions | BulkCreateOptions | InstanceUpdateOptions | InstanceDestroyOptions | { through: TJoinTableAttributes } + options?: BelongsToManyAddAssociationsMixinOptions | AnyFindOptions | BulkCreateOptions | InstanceUpdateOptions | InstanceDestroyOptions | { through: TJoinTableAttributes } ): Promise; } @@ -907,7 +907,7 @@ declare namespace sequelize { */ ( newAssociation?: TInstance | TInstancePrimaryKey, - options?: BelongsToManyAddAssociationMixinOptions | FindOptions | BulkCreateOptions | InstanceUpdateOptions | InstanceDestroyOptions | { through: TJoinTableAttributes } + options?: BelongsToManyAddAssociationMixinOptions | AnyFindOptions | BulkCreateOptions | InstanceUpdateOptions | InstanceDestroyOptions | { through: TJoinTableAttributes } ): Promise; } @@ -1135,7 +1135,7 @@ declare namespace sequelize { /** * An optional where clause to limit the associated models. */ - where?: WhereOptions; + where?: AnyWhereOptions; /** * Apply a scope on the related model, or remove its default scope by passing false. @@ -1353,6 +1353,11 @@ declare namespace sequelize { */ otherKey?: string | AssociationForeignKeyOptions; + /** + * Should the join model have timestamps + */ + timestamps?: boolean; + } /** @@ -2185,6 +2190,15 @@ declare namespace sequelize { } + interface EmptyResultError extends BaseError { + + /** + * Thrown when a record was not found, Usually used with rejectOnEmpty mode (see message for details) + */ + new (parent: Error): EmptyResultError; + + } + /** * Sequelize provides a host of custom error classes, to allow you to do easier debugging. All of these errors * are exposed on the sequelize object and the sequelize constructor. All sequelize errors inherit from the @@ -2206,6 +2220,7 @@ declare namespace sequelize { HostNotReachableError: HostNotReachableError; InvalidConnectionError: InvalidConnectionError; ConnectionTimedOutError: ConnectionTimedOutError; + EmptyResultError: EmptyResultError; } // @@ -2613,7 +2628,7 @@ declare namespace sequelize { /** * A hash of attributes to describe your search. See above for examples. */ - where?: WhereOptions | Array; + where?: AnyWhereOptions | Array; } @@ -2663,7 +2678,7 @@ declare namespace sequelize { /** * A hash of attributes to describe your search. See above for examples. */ - where?: WhereOptions | Array; + where?: AnyWhereOptions | Array; } @@ -2824,7 +2839,7 @@ declare namespace sequelize { * return a new instance. With this method, all references to the Instance are updated with the new data * and no new objects are created. */ - reload(options?: FindOptions): Promise; + reload(options?: AnyFindOptions): Promise; /** * Validate the attribute of this instance according to validation rules set in the model definition. @@ -3031,8 +3046,8 @@ declare namespace sequelize { * Where Complex nested query */ interface WhereNested { - $and: Array; - $or: Array; + $and: Array; + $or: Array; } /** @@ -3054,10 +3069,10 @@ declare namespace sequelize { /** * Logic of where statement */ - interface WhereLogic { + type WhereLogic = Partial<{ $ne: string | number | WhereLogic; $in: Array | literal; - $not: boolean | string | number | WhereOptions; + $not: boolean | string | number | AnyWhereOptions; $notIn: Array | literal; $gte: number | string | Date; $gt: number | string | Date; @@ -3078,7 +3093,7 @@ declare namespace sequelize { "@>": any; $contained: any; "<@": any; - } + }>; /** * A hash of attributes to describe your search. See above for examples. @@ -3086,8 +3101,15 @@ declare namespace sequelize { * We did put Object in the end, because there where query might be a JSON Blob. It cripples a bit the * typesafety, but there is no way to pass the tests if we just remove it. */ - interface WhereOptions { - [field: string]: string | number | WhereLogic | WhereOptions | col | and | or | WhereGeometryOptions | Array | Object | null; + type WhereOptions = { + [P in keyof T]?: string | number | WhereLogic | WhereOptions | col | and | or | WhereGeometryOptions | Array | null; + }; + + /** + * A hash of attributes to describe your search, accepting any field names. See `WhereOptions` for details. + */ + interface AnyWhereOptions { + [field: string]: WhereOptions[] | Object; } /** @@ -3098,7 +3120,7 @@ declare namespace sequelize { /** * Filter on the join model for belongsToMany relations */ - where?: WhereOptions; + where?: AnyWhereOptions; /** * A list of attributes to select from the join model for belongsToMany relations @@ -3141,7 +3163,7 @@ declare namespace sequelize { * Where clauses to apply to the child models. Note that this converts the eager load to an inner join, * unless you explicitly set `required: false` */ - where?: WhereOptions; + where?: AnyWhereOptions; /** * A list of attributes to select from the child model @@ -3183,12 +3205,12 @@ declare namespace sequelize { * * A hash of options to describe the scope of the search */ - interface FindOptions extends LoggingOptions, SearchPathOptions { + interface FindOptions extends LoggingOptions, SearchPathOptions { /** * A hash of attributes to describe your search. See above for examples. */ - where?: WhereOptions | fn | Array; + where?: WhereOptions | fn | Array; /** * A list of the attributes that you want to select. To rename an attribute, you can pass an array, with @@ -3245,7 +3267,7 @@ declare namespace sequelize { /** * having ?!? */ - having?: WhereOptions; + having?: AnyWhereOptions; /** * Group by. It is not mentioned in sequelize's JSDoc, but mentioned in docs. @@ -3263,8 +3285,15 @@ declare namespace sequelize { * Prevents a subquery on the main table when using include */ subQuery?: boolean; + + /** + * Throw EmptyResultError if a record is not found + */ + rejectOnEmpty?: boolean; } + type AnyFindOptions = FindOptions; + /** * Options for Model.count method */ @@ -3273,7 +3302,7 @@ declare namespace sequelize { /** * A hash of search attributes. */ - where?: WhereOptions | string[]; + where?: AnyWhereOptions | string[]; /** * Include options. See `find` for details @@ -3335,7 +3364,7 @@ declare namespace sequelize { /** * Options for Model.findOrInitialize method */ - interface FindOrInitializeOptions extends FindOptions { + interface FindOrInitializeOptions extends AnyFindOptions { /** * Default values to use if building a new instance @@ -3347,7 +3376,7 @@ declare namespace sequelize { /** * Options for Model.findOrInitialize method */ - interface FindCreateFindOptions extends FindOptions { + interface FindCreateFindOptions extends FindOptions { /** * Default values to use if building a new instance @@ -3423,7 +3452,7 @@ declare namespace sequelize { /** * Filter the destroy */ - where?: WhereOptions; + where?: AnyWhereOptions; /** * Run before / after bulk destroy hooks? @@ -3462,7 +3491,7 @@ declare namespace sequelize { /** * Filter the restore */ - where?: WhereOptions; + where?: AnyWhereOptions; /** * Run before / after bulk restore hooks? @@ -3495,7 +3524,7 @@ declare namespace sequelize { /** * Options to describe the scope of the search. */ - where: WhereOptions; + where: AnyWhereOptions; /** * Run before / after bulk update hooks? @@ -3543,7 +3572,7 @@ declare namespace sequelize { /** * A hash of search attributes. */ - where?: WhereOptions; + where?: AnyWhereOptions; /** * The type of the result. If `field` is a field in this Model, the default will be the type of that field, @@ -3634,7 +3663,7 @@ declare namespace sequelize { * @param {Object} [options] * @param {Boolean} [options.override=false] */ - addScope(name: string, scope: FindOptions | Function, options?: AddScopeOptions): void; + addScope(name: string, scope: AnyFindOptions | Function, options?: AddScopeOptions): void; /** * Add a new scope to the model. This is especially useful for adding scopes with includes, when the model you want to include is not available at the time this model is defined. @@ -3646,7 +3675,7 @@ declare namespace sequelize { * @param {Object} [options] * @param {Boolean} [options.override=false] */ - addScope(name: string, scope: FindOptions | Function, options?: AddScopeOptions): void; + addScope(name: string, scope: AnyFindOptions | Function, options?: AddScopeOptions): void; /** * Apply a scope created in `define` to the model. First let's look at how to create scopes: @@ -3695,7 +3724,7 @@ declare namespace sequelize { * @return Model A reference to the model, with the scope(s) applied. Calling scope again on the returned * model will clear the previous scope. */ - scope(options?: string | ScopeOptions | WhereOptions | Array): this; + scope(options?: string | ScopeOptions | AnyWhereOptions | Array): this; /** * Search for multiple instances. @@ -3759,22 +3788,22 @@ declare namespace sequelize { * * @see {Sequelize#query} */ - findAll(options?: FindOptions): Promise; - all(optionz?: FindOptions): Promise; + findAll(options?: FindOptions): Promise; + all(optionz?: FindOptions): Promise; /** * Search for a single instance by its primary key. This applies LIMIT 1, so the listener will * always be called with a single instance. */ - findById(identifier?: number | string, options?: FindOptions): Promise; - findByPrimary(identifier?: number | string, options?: FindOptions): Promise; + findById(identifier?: number | string, options?: FindOptions): Promise; + findByPrimary(identifier?: number | string, options?: FindOptions): Promise; /** * Search for a single instance. This applies LIMIT 1, so the listener will always be called with a single * instance. */ - findOne(options?: FindOptions): Promise; - find(options?: FindOptions): Promise; + findOne(options?: FindOptions): Promise; + find(options?: FindOptions): Promise; /** * Run an aggregation method on the specified field @@ -3829,8 +3858,8 @@ declare namespace sequelize { * without * profiles will be counted */ - findAndCount(options?: FindOptions): Promise<{ rows: TInstance[], count: number }>; - findAndCountAll(options?: FindOptions): Promise<{ rows: TInstance[], count: number }>; + findAndCount(options?: FindOptions): Promise<{ rows: TInstance[], count: number }>; + findAndCountAll(options?: FindOptions): Promise<{ rows: TInstance[], count: number }>; /** * Find the maximum value of field @@ -3886,7 +3915,7 @@ declare namespace sequelize { * A more performant findOrCreate that will not work under a transaction (at least not in postgres) * Will execute a find call, if empty then attempt to create, if unique constraint then attempt to find again */ - findCreateFind(options: FindCreateFindOptions): Promise; + findCreateFind(options: FindCreateFindOptions): Promise; /** * Insert or update a single row. An update will be executed if a row which matches the supplied values on @@ -3994,7 +4023,7 @@ declare namespace sequelize { interface AddCheckConstraintOptions { type: 'check'; name?: string; - where?: WhereOptions; + where?: AnyWhereOptions; } interface AddPrimaryKeyConstraintOptions { @@ -4850,7 +4879,7 @@ declare namespace sequelize { /** * Condition for partioal index */ - where?: WhereOptions; + where?: AnyWhereOptions; } @@ -4901,7 +4930,7 @@ declare namespace sequelize { /** * Name of the scope and it's query */ - [scopeName: string]: FindOptions | Function; + [scopeName: string]: AnyFindOptions | Function; } @@ -4916,7 +4945,7 @@ declare namespace sequelize { * Define the default search scope to use for this model. Scopes have the same form as the options passed to * find / findAll. */ - defaultScope?: FindOptions; + defaultScope?: AnyFindOptions; /** * More scopes, defined in the same way as defaultScope above. See `Model.scope` for more information about diff --git a/types/sequelize/sequelize-tests.ts b/types/sequelize/sequelize-tests.ts index d786dfc4a2..9000dd92b0 100644 --- a/types/sequelize/sequelize-tests.ts +++ b/types/sequelize/sequelize-tests.ts @@ -629,6 +629,7 @@ new s.HostNotFoundError( new Error( 'original connection error message' ) ); new s.HostNotReachableError( new Error( 'original connection error message' ) ); new s.InvalidConnectionError( new Error( 'original connection error message' ) ); new s.ConnectionTimedOutError( new Error( 'original connection error message' ) ); +new s.EmptyResultError(); const uniqueConstraintError: Sequelize.ValidationError = new s.UniqueConstraintError({}); @@ -914,6 +915,7 @@ User.findAll( { attributes: [s.cast(s.fn('count', Sequelize.col('*')), 'INTEGER' User.findAll( { attributes: [[s.cast(s.fn('count', Sequelize.col('*')), 'INTEGER'), 'count']] }); User.findAll( { where : s.fn('count', [0, 10]) } ); User.findAll( { subQuery: false, include : [User], order : [[User, User, 'numYears', 'c']] } ); +User.findAll( { rejectOnEmpty: true }); User.findById( 'a string' ); @@ -1318,7 +1320,7 @@ s.define( 'ProductWithSettersAndGetters1', { get : function() { return 'answer = ' + this.getDataValue( 'price' ); }, - set : function( v ) { + set : function( v: number ) { return this.setDataValue( 'price', v + 42 ); } } @@ -1437,6 +1439,37 @@ s.define( 'ScopeMe', { } } ); +// Generic find options +interface ChairAttributes { + id: number; + color: string; + legs: number; +} +interface ChairInstance extends Sequelize.Instance {} + +const Chair = s.define('chair', {}); + +Chair.findAll({ + where: { + color: 'blue', + legs: { $in: [3, 4] }, + }, +}); + +// If you want to use a property that isn't explicitly on the model's Attributes +// use the find-function's generic type parameter. +Chair.findAll<{ customProperty: number }>({ + where: { + customProperty: 123, + } +}); +Chair.findAll({ + where: { + customProperty1: 123, + customProperty2: 456, + } +}); + s.define( 'ScopeMe', { username : Sequelize.STRING, email : Sequelize.STRING, diff --git a/types/sinon-stub-promise/index.d.ts b/types/sinon-stub-promise/index.d.ts index 10fc8adf4c..2141009456 100644 --- a/types/sinon-stub-promise/index.d.ts +++ b/types/sinon-stub-promise/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for sinon-stub-promise v1.0.1 +// Type definitions for sinon-stub-promise v1.1.0 // Project: https://github.com/substantial/sinon-stub-promise // Definitions by: Thiago Temple // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped @@ -7,7 +7,7 @@ /// declare module 'sinon' { - interface SinonPromise { + interface SinonPromise extends Function { resolves(value?: any): void; rejects(value?: any): void; } diff --git a/types/swiper/index.d.ts b/types/swiper/index.d.ts index e16c7d5cc5..57edc39a61 100644 --- a/types/swiper/index.d.ts +++ b/types/swiper/index.d.ts @@ -193,6 +193,10 @@ interface SwiperOptions { onLazyImageLoad?(swiper: Swiper, slide: any, image: any): void; onLazyImageReady?(swiper: Swiper, slide: any, image: any): void; onPaginationRendered?(swiper: Swiper, paginationContainer: any): void; + onScroll?(swiper: Swiper, event: Event): void; + onBeforeResize?(swiper: Swiper): void; + onAfterResize?(swiper: Swiper): void; + onKeyPress?(swiper: Swiper, kc: any): void; // Namespace slideClass?: string; @@ -237,6 +241,8 @@ declare class Swiper { height: number; params: any; positions: any; + wrapper: any; + virtualSize: number; // Feature detection support: { diff --git a/types/three/index.d.ts b/types/three/index.d.ts index b8c5b5669f..afe64c399e 100644 --- a/types/three/index.d.ts +++ b/types/three/index.d.ts @@ -10,11 +10,14 @@ export * from "./three-colladaLoader"; export * from "./three-copyshader"; export * from "./three-css3drenderer"; export * from "./three-ctmloader"; +export * from "./three-ddsloader"; export * from "./three-editorcontrols"; export * from "./three-effectcomposer"; export * from "./three-examples"; export * from "./three-FirstPersonControls"; export * from "./three-maskpass"; +export * from "./three-mtlloader"; +export * from "./three-objloader"; export * from "./three-octree"; export * from "./three-orbitcontrols"; export * from "./three-orthographictrackballcontrols"; @@ -26,4 +29,4 @@ export * from "./three-transformcontrols"; export * from "./three-vrcontrols"; export * from "./three-vreffect"; -export as namespace THREE; \ No newline at end of file +export as namespace THREE; diff --git a/types/three/test/examples/loaders/webgl_loader_obj_mtl.ts b/types/three/test/examples/loaders/webgl_loader_obj_mtl.ts new file mode 100644 index 0000000000..3f11216c5a --- /dev/null +++ b/types/three/test/examples/loaders/webgl_loader_obj_mtl.ts @@ -0,0 +1,83 @@ +// https://github.com/mrdoob/three.js/blob/master/examples/webgl_loader_obj_mtl.html + +() => { + + var container: HTMLElement; + var camera: THREE.PerspectiveCamera, scene: THREE.Scene, renderer: THREE.WebGLRenderer; + var mouseX = 0, mouseY = 0; + var windowHalfX = window.innerWidth / 2; + var windowHalfY = window.innerHeight / 2; + + init(); + animate(); + + function init() { + container = document.createElement( 'div' ); + document.body.appendChild( container ); + camera = new THREE.PerspectiveCamera( 45, window.innerWidth / window.innerHeight, 1, 2000 ); + camera.position.z = 250; + // scene + scene = new THREE.Scene(); + var ambient = new THREE.AmbientLight( 0x444444 ); + scene.add( ambient ); + var directionalLight = new THREE.DirectionalLight( 0xffeedd ); + directionalLight.position.set( 0, 0, 1 ).normalize(); + scene.add( directionalLight ); + // model + var onProgress = function ( xhr: ProgressEvent ) { + if ( xhr.lengthComputable ) { + var percentComplete = xhr.loaded / xhr.total * 100; + console.log( Math.round(percentComplete) + '% downloaded' ); + } + }; + var onError = function ( xhr: ErrorEvent ) { }; + THREE.Loader.Handlers.add( /\.dds$/i, new THREE.DDSLoader() ); + var mtlLoader: THREE.MTLLoader = new THREE.MTLLoader(); + mtlLoader.setPath( 'obj/male02/' ); + mtlLoader.load( 'male02_dds.mtl', function( materials: THREE.MaterialCreator ) { + materials.preload(); + var objLoader: THREE.OBJLoader = new THREE.OBJLoader(); + objLoader.setMaterials( materials ); + objLoader.setPath( 'obj/male02/' ); + objLoader.load( 'male02.obj', function ( object: THREE.Object3D ) { + object.position.y = - 95; + scene.add( object ); + }, onProgress, onError ); + }); + + renderer = new THREE.WebGLRenderer(); + renderer.setPixelRatio( window.devicePixelRatio ); + renderer.setSize( window.innerWidth, window.innerHeight ); + container.appendChild( renderer.domElement ); + document.addEventListener( 'mousemove', onDocumentMouseMove, false ); + // + window.addEventListener( 'resize', onWindowResize, false ); + } + + function onWindowResize() { + windowHalfX = window.innerWidth / 2; + windowHalfY = window.innerHeight / 2; + camera.aspect = window.innerWidth / window.innerHeight; + camera.updateProjectionMatrix(); + renderer.setSize( window.innerWidth, window.innerHeight ); + } + + function onDocumentMouseMove( event: MouseEvent ) { + mouseX = ( event.clientX - windowHalfX ) / 2; + mouseY = ( event.clientY - windowHalfY ) / 2; + } + + // + function animate() { + requestAnimationFrame( animate ); + render(); + } + + function render() { + camera.position.x += ( mouseX - camera.position.x ) * .05; + camera.position.y += ( - mouseY - camera.position.y ) * .05; + camera.lookAt( scene.position ); + renderer.render( scene, camera ); + } + +} diff --git a/types/three/three-core.d.ts b/types/three/three-core.d.ts index 7a6a6ec9ac..dc9b26a335 100644 --- a/types/three/three-core.d.ts +++ b/types/three/three-core.d.ts @@ -1355,7 +1355,7 @@ export class Geometry extends EventDispatcher { */ computeBoundingSphere(): void; - merge(geometry: Geometry, matrix: Matrix, materialIndexOffset?: number): void; + merge(geometry: Geometry, matrix?: Matrix, materialIndexOffset?: number): void; mergeMesh(mesh: Mesh): void; @@ -1605,6 +1605,18 @@ export class Object3D extends EventDispatcher { */ userData: any; + /** + * Calls before rendering object + */ + onBeforeRender: (renderer: THREE.WebGLRenderer, scene: THREE.Scene, camera: THREE.Camera, geometry: THREE.Geometry | THREE.BufferGeometry, + material: THREE.Material, group: THREE.Group) => void; + + /** + * Calls after rendering object + */ + onAfterRender: (renderer: THREE.WebGLRenderer, scene: THREE.Scene, camera: THREE.Camera, geometry: THREE.Geometry | THREE.BufferGeometry, + material: THREE.Material, group: THREE.Group) => void; + /** * */ @@ -1706,7 +1718,7 @@ export class Object3D extends EventDispatcher { /** * Adds object as child of this object. */ - add(object: Object3D): void; + add(...object: Object3D[]): void; /** * Removes object as child of this object. @@ -2072,11 +2084,19 @@ export class Loader { static Handlers: LoaderHandler; } -export interface LoaderHandler { - handlers: (RegExp | Loader)[]; +/** +* Interface for all loaders +* CompressedTextureLoader don't extends Loader class, but have load method +*/ +export interface AnyLoader { + load(url: string, onLoad?: (result: any) => void, onProgress?: (event: ProgressEvent) => void, onError?: (event: ErrorEvent) => void): any; +} - add(regex: RegExp, loader: Loader): void; - get(file: string): Loader; +export interface LoaderHandler { + handlers: (RegExp | AnyLoader)[]; + + add(regex: RegExp, loader: AnyLoader): void; + get(file: string): AnyLoader | null; } export class FileLoader { @@ -2799,9 +2819,12 @@ export class MeshPhysicalMaterial extends MeshStandardMaterial { export class MultiMaterial extends Material { constructor(materials?: Material[]); + isMultiMaterial: true; + materials: Material[]; toJSON(meta: any): any; + } /** diff --git a/types/three/three-ddsloader.d.ts b/types/three/three-ddsloader.d.ts new file mode 100644 index 0000000000..8d8f85bd0e --- /dev/null +++ b/types/three/three-ddsloader.d.ts @@ -0,0 +1,19 @@ +// https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/DDSLoader.js + +import {CompressedPixelFormat, CompressedTextureLoader} from "./three-core"; + +export interface Dds { + mipmaps: ImageData[], + width: number, + height: number, + format: CompressedPixelFormat, + mipmapCount: number +} + +export class DDSLoader extends CompressedTextureLoader { + + constructor(); + + parse(buffer: string, loadMipmaps: boolean) : Dds; + +} diff --git a/types/three/three-examples.d.ts b/types/three/three-examples.d.ts index d416757b00..67efcc566a 100644 --- a/types/three/three-examples.d.ts +++ b/types/three/three-examples.d.ts @@ -3,7 +3,6 @@ import {EventDispatcher, Shader} from "./three-core"; export var AWDLoader: any; -export var OBJLoader: any; export var OBJLoader2: any; export var STLLoader: any; export var FlyControls: any; diff --git a/types/three/three-mtlloader.d.ts b/types/three/three-mtlloader.d.ts new file mode 100644 index 0000000000..dce5b12a17 --- /dev/null +++ b/types/three/three-mtlloader.d.ts @@ -0,0 +1,54 @@ +// https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/MTLLoader.js + + +import {Material} from "./three-core"; +import {LoadingManager} from "./three-core"; +import {EventDispatcher} from "./three-core"; +import {BufferGeometry} from "./three-core"; +import {Texture} from "./three-core"; + +export class MTLLoader extends EventDispatcher { + + constructor(manager?: LoadingManager); + manager: LoadingManager; + materialOptions: {}; + materials: Material[]; + path: string; + texturePath: string; + crossOrigin: boolean; + + load(url: string, onLoad: (materialCreator: MaterialCreator) => void, onProgress?: (event: ProgressEvent) => void, onError?: (event: ErrorEvent) => void): void; + parse(text: string) : MaterialCreator; + setPath(path: string) : void; + setTexturePath(path: string) : void; + setBaseUrl(path: string) : void; + setCrossOrigin(value: boolean) : void; + setMaterialOptions(value: any) : void; +} + +export class MaterialCreator { + + constructor(baseUrl?: string, options?: any); + + baseUrl : string; + options : any; + materialsInfo : any; + materials : any; + materialsArray : Material[]; + nameLookup : any; + side : number; + wrap : number; + + setCrossOrigin( value: boolean ) : void; + setManager( value: any ) : void; + setMaterials( materialsInfo: any ) : void; + convert( materialsInfo: any ) : any; + preload() : void; + getIndex( materialName: string ) : Material; + getAsArray() : Material[]; + create( materialName: string ) : Material; + createMaterial_( materialName: string ) : Material; + getTextureParams( value: string, matParams: any ) : any; + loadTexture(url: string, mapping: any, onLoad: (bufferGeometry: BufferGeometry) => void, onProgress?: (event: ProgressEvent) => void, onError?: (event: ErrorEvent) => void): Texture; + +} diff --git a/types/three/three-objloader.d.ts b/types/three/three-objloader.d.ts new file mode 100644 index 0000000000..62403eeebb --- /dev/null +++ b/types/three/three-objloader.d.ts @@ -0,0 +1,22 @@ +// https://github.com/mrdoob/three.js/blob/master/examples/js/loaders/OBJLoader.js + +import {Material} from "./three-core"; +import {LoadingManager} from "./three-core"; +import {Group} from "./three-core"; +import {MaterialCreator} from "./three-mtlloader"; + +export class OBJLoader { + + constructor(manager?: LoadingManager); + manager: LoadingManager; + regexp: any; + materials: Material[]; + path: string; + + load(url: string, onLoad: (group: Group) => void, onProgress?: (event: ProgressEvent) => void, onError?: (event: ErrorEvent) => void): void; + parse(data: string) : Group; + setPath(value: string) : void; + setMaterials(materials: MaterialCreator) : void; + _createParserState() : any; + +} diff --git a/types/three/tsconfig.json b/types/three/tsconfig.json index b2038f113c..b3bb3fc8f7 100644 --- a/types/three/tsconfig.json +++ b/types/three/tsconfig.json @@ -52,6 +52,7 @@ "test/examples/effects/vreffect.ts", "test/examples/controls/vrcontrols.ts", "test/examples/ctm/ctmloader.ts", - "test/examples/octree.ts" + "test/examples/octree.ts", + "test/examples/loaders/webgl_loader_obj_mtl.ts" ] } diff --git a/types/tinymce/index.d.ts b/types/tinymce/index.d.ts index 11196fd6e4..af74adf671 100644 --- a/types/tinymce/index.d.ts +++ b/types/tinymce/index.d.ts @@ -669,6 +669,8 @@ export interface UndoManager { hasUndo(): boolean; + ignore(callback: () => void): void; + redo(): {}; transact(callback: () => void): {}; diff --git a/types/ua-parser-js/index.d.ts b/types/ua-parser-js/index.d.ts index 9926e4f961..f11eac1ba8 100644 --- a/types/ua-parser-js/index.d.ts +++ b/types/ua-parser-js/index.d.ts @@ -139,7 +139,7 @@ declare namespace IUAParser { } declare module "ua-parser-js" { - export class UAParser { + class UAParser { static VERSION: string; static BROWSER: IUAParser.BROWSER; static CPU: IUAParser.CPU; @@ -192,5 +192,6 @@ declare module "ua-parser-js" { */ getResult(): IUAParser.IResult; } + const exported: typeof UAParser & { UAParser: typeof UAParser }; + export = exported } - diff --git a/types/ua-parser-js/ua-parser-js-tests.ts b/types/ua-parser-js/ua-parser-js-tests.ts index 709ee380ff..e5f5cca4c3 100644 --- a/types/ua-parser-js/ua-parser-js-tests.ts +++ b/types/ua-parser-js/ua-parser-js-tests.ts @@ -1,4 +1,4 @@ -import {UAParser} from 'ua-parser-js'; +import UAParser = require('ua-parser-js'); function test_parser() { var ua = 'Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.6 (KHTML, like Gecko) Chrome/20.0.1090.0 Safari/536.6'; diff --git a/types/validator/index.d.ts b/types/validator/index.d.ts index 74bf331ed6..7c7283ebee 100644 --- a/types/validator/index.d.ts +++ b/types/validator/index.d.ts @@ -6,7 +6,7 @@ declare namespace ValidatorJS { type AlphaLocale = "ar" | "ar-AE" | "ar-BH" | "ar-DZ" | "ar-EG" | "ar-IQ" | "ar-JO" | "ar-KW" | "ar-LB" | "ar-LY" | "ar-MA" | "ar-QA" | "ar-QM" | "ar-SA" | "ar-SD" | "ar-SY" | "ar-TN" | "ar-YE" | "cs-CZ" | "de-DE" | "en-AU" | "en-GB" | "en-HK" | "en-IN" | "en-NZ" | "en-US" | "en-ZA" | "en-ZM" | "es-ES" | "fr-FR" | "hu-HU" | "nl-NL" | "pl-PL" | "pt-BR" | "pt-PT" | "ru-RU" | "sr-RS" | "sr-RS@latin" | "tr-TR"; type AlphanumericLocale = "ar" | "ar-AE" | "ar-BH" | "ar-DZ" | "ar-EG" | "ar-IQ" | "ar-JO" | "ar-KW" | "ar-LB" | "ar-LY" | "ar-MA" | "ar-QA" | "ar-QM" | "ar-SA" | "ar-SD" | "ar-SY" | "ar-TN" | "ar-YE" | "cs-CZ" | "de-DE" | "en-AU" | "en-GB" | "en-HK" | "en-IN" | "en-NZ" | "en-US" | "en-ZA" | "en-ZM" | "es-ES" | "fr-FR" | "fr-BE" | "hu-HU" | "nl-BE" | "nl-NL" | "pl-PL" | "pt-BR" | "pt-PT" | "ru-RU" | "sr-RS" | "sr-RS@latin" | "tr-TR"; - type MobilePhoneLocale = "ar-DZ" | "ar-SA" | "ar-SY" | "cs-CZ" | "de-DE" | "da-DK" | "el-GR" | "en-AU" | "en-GB" | "en-HK" | "en-IN" | "en-NZ" | "en-US" | "en-CA" | "en-ZA" | "en-ZM" | "es-ES" | "fi-FI" | "fr-FR" | "hu-HU" | "it-IT" | "ja-JP" | "ms-MY" | "nb-NO" | "nn-NO" | "pl-PL" | "pt-PT" | "ru-RU" | "sr-RS" | "tr-TR" | "vi-VN" | "zh-CN" | "zh-TW" + type MobilePhoneLocale = "ar-DZ" | "ar-SA" | "ar-SY" | "cs-CZ" | "de-DE" | "da-DK" | "el-GR" | "en-AU" | "en-GB" | "en-HK" | "en-IN" | "en-NZ" | "en-US" | "en-CA" | "en-ZA" | "en-ZM" | "es-ES" | "fi-FI" | "fr-FR" | "hu-HU" | "it-IT" | "ja-JP" | "ms-MY" | "nb-NO" | "nn-NO" | "pl-PL" | "pt-PT" | "ru-RU" | "sr-RS" | "tr-TR" | "vi-VN" | "zh-CN" | "zh-TW" | "any"; interface ValidatorStatic { diff --git a/types/vexflow/index.d.ts b/types/vexflow/index.d.ts index 3c3aa2365a..01c8d75381 100644 --- a/types/vexflow/index.d.ts +++ b/types/vexflow/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for VexFlow v1.2.83 +// Type definitions for VexFlow v1.2.84 // Project: http://vexflow.com // Definitions by: Roman Quiring // Sebastian Haas @@ -187,6 +187,7 @@ declare namespace Vex { class BarNote extends Note { static DEBUG : boolean; + constructor(); getType() : Barline.type; setType(type : Barline.type) : BarNote; getBoundingBox() : BoundingBox; @@ -618,7 +619,7 @@ declare namespace Vex { getTickMultiplier() : Fraction; applyTickMultiplier(numerator : number, denominator : number) : void; setDuration(duration : Fraction) : void; - + constructor(note_struct : {type? : string, dots? : number, duration : string}); getPlayNote() : any; setPlayNote(note : any) : Note; diff --git a/types/vexflow/vexflow-tests.ts b/types/vexflow/vexflow-tests.ts index 52a031ac1b..6a9187c7e5 100644 --- a/types/vexflow/vexflow-tests.ts +++ b/types/vexflow/vexflow-tests.ts @@ -34,16 +34,20 @@ notes1[2].addModifier(0, new Vex.Flow.GraceNoteGroup([gracenote], true).beamNote // Color the chord notes1[3].setStyle({fillStyle: "blue", strokeStyle: "blue"}); +// Add a bar +var tickable1: Vex.Flow.Note[] = notes1; +tickable1.push(new Vex.Flow.BarNote()); + // Create a voice in 4/4 and add notes var voice1 = new Vex.Flow.Voice({ num_beats: 4, beat_value: 4, resolution: Vex.Flow.RESOLUTION -}).addTickables(notes1); +}).addTickables(tickable1); // Create a second voice with just one whole note var voice2 = new Vex.Flow.Voice(Vex.Flow.TIME4_4). - addTickables([new Vex.Flow.StaveNote({keys: ["c/4"], duration: "w"})]); + addTickables([new Vex.Flow.StaveNote({keys: ["c/4"], duration: "w"}), new Vex.Flow.BarNote()]); // Format and justify the notes to 550 pixels var formatter = new Vex.Flow.Formatter(). @@ -85,4 +89,4 @@ var notes = [ ]; // Format ad draw the notes -Vex.Flow.Formatter.FormatAndDraw(ctx, tabstave, notes); \ No newline at end of file +Vex.Flow.Formatter.FormatAndDraw(ctx, tabstave, notes); diff --git a/types/webpack-sources/index.d.ts b/types/webpack-sources/index.d.ts index 245e251a7f..792158d27a 100644 --- a/types/webpack-sources/index.d.ts +++ b/types/webpack-sources/index.d.ts @@ -1,15 +1,14 @@ -// Type definitions for webpack-sources v0.1.2 +// Type definitions for webpack-sources 0.1 // Project: https://github.com/webpack/webpack-sources // Definitions by: e-cloud +// Chris Eppstein // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -/// -/// /// -import { Hash } from 'crypto' -import { SourceNode, RawSourceMap, SourceMapGenerator } from 'source-map' -import { SourceListMap } from 'source-list-map' +import { Hash } from 'crypto'; +import { SourceNode, RawSourceMap, SourceMapGenerator } from 'source-map'; +import { SourceListMap } from 'source-list-map'; export abstract class Source { size(): number; @@ -32,7 +31,7 @@ export abstract class Source { listMap(options?: any): any; } -interface SourceAndMapMixin { +export interface SourceAndMapMixin { map(options: { columns?: boolean }): RawSourceMap; sourceAndMap(options: { columns?: boolean }): { source: string; @@ -67,9 +66,9 @@ export class CachedSource { } export class ConcatSource extends Source implements SourceAndMapMixin { - children: (string | Source)[]; + children: Array<(string | Source)>; - constructor(...args: (string | Source)[]); + constructor(...args: Array<(string | Source)>); add(item: string | Source): void; @@ -187,7 +186,10 @@ export class SourceMapSource extends Source implements SourceAndMapMixin { _innerSourceMap: RawSourceMap; constructor( - value: string, name: string, sourceMap: SourceMapGenerator | RawSourceMap, originalSource: string, + value: string, + name: string, + sourceMap: SourceMapGenerator | RawSourceMap, + originalSource?: string, innerSourceMap?: RawSourceMap ); diff --git a/types/webpack-sources/tslint.json b/types/webpack-sources/tslint.json new file mode 100644 index 0000000000..3db14f85ea --- /dev/null +++ b/types/webpack-sources/tslint.json @@ -0,0 +1 @@ +{ "extends": "dtslint/dt.json" } diff --git a/types/webpack-sources/webpack-sources-tests.ts b/types/webpack-sources/webpack-sources-tests.ts index 16c915516b..760fbc6d4b 100644 --- a/types/webpack-sources/webpack-sources-tests.ts +++ b/types/webpack-sources/webpack-sources-tests.ts @@ -7,9 +7,8 @@ import { ReplaceSource, OriginalSource, SourceMapSource, - } from 'webpack-sources'; -import { RawSourceMap } from 'source-map' +import { RawSourceMap } from 'source-map'; const s1 = new OriginalSource('a', 'b'); @@ -19,8 +18,8 @@ const s3 = new ConcatSource('a', 'b', s1); const s4 = new RawSource('hey'); -const a = {} as RawSourceMap -const b = {} as RawSourceMap +const a = {} as RawSourceMap; +const b = {} as RawSourceMap; const s5 = new LineToLineMappedSource('a', 'v', 'c'); const s6 = new PrefixSource(s4, s5); diff --git a/types/webpack/index.d.ts b/types/webpack/index.d.ts index 88cf8a6318..13b2de85cd 100644 --- a/types/webpack/index.d.ts +++ b/types/webpack/index.d.ts @@ -30,13 +30,7 @@ declare namespace webpack { context?: string; entry?: string | string[] | Entry; /** Choose a style of source mapping to enhance the debugging process. These values can affect build and rebuild speed dramatically. */ - // tslint:disable-next-line:max-line-length - devtool?: 'eval' | 'inline-source-map' | 'cheap-eval-source-map' | 'cheap-source-map' | 'cheap-module-eval-source-map' | 'cheap-module-source-map' | 'eval-source-map' | 'source-map' | - 'nosources-source-map' | 'hidden-source-map' | 'nosources-source-map' | '@eval' | '@inline-source-map' | '@cheap-eval-source-map' | '@cheap-source-map' | '@cheap-module-eval-source-map' | - '@cheap-module-source-map' | '@eval-source-map' | '@source-map' | '@nosources-source-map' | '@hidden-source-map' | '@nosources-source-map' | '#eval' | '#inline-source-map' | - '#cheap-eval-source-map' | '#cheap-source-map' | '#cheap-module-eval-source-map' | '#cheap-module-source-map' | '#eval-source-map' | '#source-map' | '#nosources-source-map' | - '#hidden-source-map' | '#nosources-source-map' | '#@eval' | '#@inline-source-map' | '#@cheap-eval-source-map' | '#@cheap-source-map' | '#@cheap-module-eval-source-map' | - '#@cheap-module-source-map' | '#@eval-source-map' | '#@source-map' | '#@nosources-source-map' | '#@hidden-source-map' | '#@nosources-source-map' | boolean; + devtool?: Options.Devtool; /** Options affecting the output. */ output?: Output; /** Options affecting the normal modules (NormalModuleFactory) */ @@ -96,6 +90,18 @@ declare namespace webpack { [name: string]: string | string[]; } + interface DevtoolModuleFilenameTemplateInfo { + identifier: string; + shortIdentifier: string; + resource: any; + resourcePath: string; + absoluteResourcePath: string; + allLoaders: any[]; + query: string; + moduleId: string; + hash: string; + } + interface Output { /** The output directory as absolute path (required). */ path?: string; @@ -106,9 +112,9 @@ declare namespace webpack { /** The filename of the SourceMaps for the JavaScript files. They are inside the output.path directory. */ sourceMapFilename?: string; /** Filename template string of function for the sources array in a generated SourceMap. */ - devtoolModuleFilenameTemplate?: string; + devtoolModuleFilenameTemplate?: string | ((info: DevtoolModuleFilenameTemplateInfo) => string); /** Similar to output.devtoolModuleFilenameTemplate, but used in the case of duplicate module identifiers. */ - devtoolFallbackModuleFilenameTemplate?: string; + devtoolFallbackModuleFilenameTemplate?: string | ((info: DevtoolModuleFilenameTemplateInfo) => string); /** * Enable line to line mapped mode for all/specified modules. * Line to line mapped mode uses a simple SourceMap where each line of the generated source is mapped to the same line of the original source. @@ -168,6 +174,7 @@ declare namespace webpack { wrappedContextRegExp?: RegExp; wrappedContextRecursive?: boolean; wrappedContextCritical?: boolean; + strictExportPresence?: boolean; } interface OldModule extends BaseModule { /** An array of automatically applied loaders. */ @@ -496,6 +503,14 @@ declare namespace webpack { type Rule = LoaderRule | UseRule | RulesRule | OneOfRule; namespace Options { + // tslint:disable-next-line:max-line-length + type Devtool = 'eval' | 'inline-source-map' | 'cheap-eval-source-map' | 'cheap-source-map' | 'cheap-module-eval-source-map' | 'cheap-module-source-map' | 'eval-source-map' | 'source-map' | + 'nosources-source-map' | 'hidden-source-map' | 'nosources-source-map' | '@eval' | '@inline-source-map' | '@cheap-eval-source-map' | '@cheap-source-map' | '@cheap-module-eval-source-map' | + '@cheap-module-source-map' | '@eval-source-map' | '@source-map' | '@nosources-source-map' | '@hidden-source-map' | '@nosources-source-map' | '#eval' | '#inline-source-map' | + '#cheap-eval-source-map' | '#cheap-source-map' | '#cheap-module-eval-source-map' | '#cheap-module-source-map' | '#eval-source-map' | '#source-map' | '#nosources-source-map' | + '#hidden-source-map' | '#nosources-source-map' | '#@eval' | '#@inline-source-map' | '#@cheap-eval-source-map' | '#@cheap-source-map' | '#@cheap-module-eval-source-map' | + '#@cheap-module-source-map' | '#@eval-source-map' | '#@source-map' | '#@nosources-source-map' | '#@hidden-source-map' | '#@nosources-source-map' | boolean; + interface Performance { /** This property allows webpack to control what files are used to calculate performance hints. */ assetFilter?(assetFilename: string): boolean; diff --git a/types/ws/index.d.ts b/types/ws/index.d.ts index 49ae4cfb3e..8dc6cfa746 100644 --- a/types/ws/index.d.ts +++ b/types/ws/index.d.ts @@ -43,8 +43,8 @@ declare class WebSocket extends events.EventEmitter { close(code?: number, data?: any): void; pause(): void; resume(): void; - ping(data?: any, options?: { mask?: boolean; binary?: boolean }, dontFail?: boolean): void; - pong(data?: any, options?: { mask?: boolean; binary?: boolean }, dontFail?: boolean): void; + ping(data?: any, mask?: boolean, dontFail?: boolean): void; + pong(data?: any, mask?: boolean, dontFail?: boolean): void; send(data: any, cb?: (err: Error) => void): void; send(data: any, options: { mask?: boolean; binary?: boolean }, cb?: (err: Error) => void): void; stream(options: { mask?: boolean; binary?: boolean }, cb?: (err: Error, final: boolean) => void): void; @@ -76,8 +76,8 @@ declare class WebSocket extends events.EventEmitter { addListener(event: 'close', cb: (code: number, message: string) => void): this; addListener(event: 'headers', cb: (headers: {}, request: http.IncomingMessage) => void): this; addListener(event: 'message', cb: (data: WebSocket.Data, flags: { binary: boolean }) => void): this; - addListener(event: 'ping', cb: (data: Buffer, flags: { binary: boolean }) => void): this; - addListener(event: 'pong', cb: (data: Buffer, flags: { binary: boolean }) => void): this; + addListener(event: 'ping', cb: (data: Buffer) => void): this; + addListener(event: 'pong', cb: (data: Buffer) => void): this; addListener(event: 'open', cb: () => void): this; addListener(event: 'unexpected-response', cb: (request: http.ClientRequest, response: http.IncomingMessage) => void): this; addListener(event: string, listener: () => void): this; @@ -155,7 +155,7 @@ declare namespace WebSocket { export class Server extends events.EventEmitter { options: IServerOptions; path: string; - clients: WebSocket[]; + clients: Set; constructor(options?: IServerOptions, callback?: Function); diff --git a/types/ws/ws-tests.ts b/types/ws/ws-tests.ts index 4da29311ee..90b0e6080f 100644 --- a/types/ws/ws-tests.ts +++ b/types/ws/ws-tests.ts @@ -34,9 +34,8 @@ import * as https from 'https'; { var wss = new WebSocket.Server({port: 8082}); - const broadcast = function(data: any) { - for(var i in wss.clients) - wss.clients[i].send(data); + const broadcast = (data: any) => { + wss.clients.forEach((ws) => ws.send(data)); }; } diff --git a/types/yargs/index.d.ts b/types/yargs/index.d.ts index faf26b3fa8..fe8f4ea6c2 100644 --- a/types/yargs/index.d.ts +++ b/types/yargs/index.d.ts @@ -87,12 +87,12 @@ declare namespace yargs { usage(message: string, options?: { [key: string]: Options }): Argv; usage(options?: { [key: string]: Options }): Argv; - command(command: string, description: string): Argv; - command(command: string, description: string, builder: (args: Argv) => Argv): Argv; - command(command: string, description: string, builder: { [optionName: string]: Options }): Argv; - command(command: string, description: string, builder: { [optionName: string]: Options }, handler: (args: Arguments) => void): Argv; - command(command: string, description: string, builder: (args: Argv) => Argv, handler: (args: Arguments) => void): Argv; - command(command: string, description: string, module: CommandModule): Argv; + command(command: string | string[], description: string): Argv; + command(command: string | string[], description: string, builder: (args: Argv) => Argv): Argv; + command(command: string | string[], description: string, builder: { [optionName: string]: Options }): Argv; + command(command: string | string[], description: string, builder: { [optionName: string]: Options }, handler: (args: Arguments) => void): Argv; + command(command: string | string[], description: string, builder: (args: Argv) => Argv, handler: (args: Arguments) => void): Argv; + command(command: string | string[], description: string, module: CommandModule): Argv; command(module: CommandModule): Argv; commandDir(dir: string, opts?: RequireDirectoryOptions): Argv; diff --git a/types/yargs/yargs-tests.ts b/types/yargs/yargs-tests.ts index 2c0756d427..3773d03ea5 100644 --- a/types/yargs/yargs-tests.ts +++ b/types/yargs/yargs-tests.ts @@ -620,3 +620,9 @@ function Argv$conflicts() { }) .argv; } + +function Argv$commandArray() { + let ya = yargs + .command(['commandName', 'commandAlias'], 'command description') + .argv; +} diff --git a/types/zeromq/index.d.ts b/types/zeromq/index.d.ts new file mode 100644 index 0000000000..1d33077d1d --- /dev/null +++ b/types/zeromq/index.d.ts @@ -0,0 +1,245 @@ +// Type definitions for zeromq 4.5 +// Project: https://github.com/zeromq/zeromq.js +// Definitions by: Dave McKeown , Erik Mavrinac +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// +// Forked from the DefinitelyTyped 'zmq' project originally created by Dave McKeown, +// then updated with recent changes in the 'zeromq' project from +// https://github.com/zeromq/zeromq.js/blob/master/lib/index.js + +/// + +export interface SocketTypes { + pub: number; + xpub: number; + sub: number; + xsub: number; + req: number; + xreq: number; + rep: number; + xrep: number; + push: number; + pull: number; + dealer: number; + router: number; + pair: number; + stream: number; +} + +export interface SocketOptions { + _fd: number; + _ioevents: number; + _receiveMore: number; + _subscribe: number; + _unsubscribe: number; + affinity: number; + backlog: number; + hwm: number; + identity: number; + linger: number; + mcast_loop: number; + rate: number; + rcvbuf: number; + last_endpoint: number; + reconnect_ivl: number; + recovery_ivl: number; + sndbuf: number; + swap: number; + mechanism: number; + plain_server: number; + plain_username: number; + plain_password: number; + curve_server: number; + curve_publickey: number; + curve_secretkey: number; + curve_serverkey: number; + zap_domain: number; +} + +export interface Socket { + /** + * Set `opt` to `val`. + * + * @param opt Option + * @param val Value + */ + setsocketopt(opt: number|string, val: any): Socket; + + /** + * Get socket `opt`. + * + * @param opt Option number + */ + getsocketopt(opt: number|string): any; + + /** + * Async bind. + * + * Emits the "bind" event. + * + * @param addr Socket address + * @param cb Bind callback + */ + bind(addr: string, callback?: (error: string) => void ): Socket; + + /** + * Sync bind. + * + * @param addr Socket address + */ + bindSync(addr: string): Socket; + + /** + * Async unbind. + * + * Emits the "unbind" event. + * + * @param addr Socket address + * @param cb Unind callback + */ + unbind(addr: string, callback?: (error: string) => void ): Socket; + + /** + * Sync unbind. + * + * @param addr Socket address + */ + unbindSync(addr: string): Socket; + + /** + * Connect to `addr`. + * + * @param addr Connection address + */ + connect(addr: string): Socket; + + /** + * Disconnect from `addr`. + * + * @param addr The address + */ + disconnect(addr: string): Socket; + + /** + * Subscribe with the given `filter`. + * + * @param filter The filter + */ + subscribe(filter: string): Socket; + + /** + * Unsubscribe with the given `filter`. + * + * @param filter The filter + */ + unsubscribe(filter: string): Socket; + + /** + * Send the given `msg`. + * + * @param msg The message + * @param flags Message flags + */ + send(msg: string|Buffer|any[], flags?: number): Socket; + + /** + * Enable monitoring of a Socket. This enables the following additional events: + * 'connect', 'connect_delay', 'connect_retry', 'listen', 'bind_error', + * 'accept', 'accept_error', 'close', 'close_error', 'disconnect'. + * Each event receives the parameters: (eventValue, eventEndpointAddrress, error) + * + * @param {Number} timer interval in ms > 0 or Undefined for default + * @return {Socket} for chaining + */ + monitor(interval?: number): Socket; + + /** + * Close the socket. + * + */ + close(): Socket; + + /** + * Socket event - 'message' + * @param eventName {string} + * @param callback {Function} + */ + on(eventName: string, callback: (...buffer: Buffer[]) => void): void; + + pause(): void; + resume(): void; + + // Socket Options + _fd: any; + _ioevents: any; + _receiveMore: any; + _subscribe: any; + _unsubscribe: any; + affinity: any; + backlog(): any; + hwm: any; + identity: any; + linger: any; + mcast_loop: any; + rate: any; + rcvbuf: any; + last_endpoint: any; + reconnect_ivl: any; + recovery_ivl: any; + sndbuf: any; + swap: any; + mechanism: any; + plain_server: any; + plain_username: any; + plain_password: any; + curve_server: number; + curve_publickey: string | Buffer; + curve_secretkey: string | Buffer; + curve_serverkey: string | Buffer; + zap_domain: any; +} + +/** The key material returned from a call to curveKeypair(). */ +export interface CurveKeyPair { + /** + * A Z85 string denoting the public portion of the Curve25519 key. + * + * @name CurveKeyPair#public + * @type string + */ + public: string; + + /** + * A Z85 string denoting the private, secret portion of the Curve25519 key. + * + * @name CurveKeyPair#secret + * @type string + */ + secret: string; +} + +/** + * Gets the ZeroMQ version. + */ +export let version: string; + +export let types: SocketTypes; +export let options: SocketOptions; + +/** + * Creates a ZeroMQ socket of the specified type. + * @return {Socket} The created socket in an unconnected state. + */ +export function socket(type: string|number, options?: any): Socket; + +/** + * Creates a ZeroMQ socket of the specified type. + * @return {Socket} The created socket in an unconnected state. + */ +export function createSocket(type: string, options?: any): Socket; + +/** + * Generates a CurveZMQ (Curve25519) key pair. + * @return {CurveKeyPair} The public and secret portions of the key. + */ +export function curveKeypair(): CurveKeyPair; diff --git a/types/zeromq/tsconfig.json b/types/zeromq/tsconfig.json new file mode 100644 index 0000000000..aa30afd4b0 --- /dev/null +++ b/types/zeromq/tsconfig.json @@ -0,0 +1,22 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "zeromq-tests.ts" + ] +} diff --git a/types/zeromq/tslint.json b/types/zeromq/tslint.json new file mode 100644 index 0000000000..495d29983d --- /dev/null +++ b/types/zeromq/tslint.json @@ -0,0 +1,5 @@ +{ + "extends": "dtslint/dt.json", + "rules": { + } +} diff --git a/types/zeromq/zeromq-tests.ts b/types/zeromq/zeromq-tests.ts new file mode 100644 index 0000000000..af36166e64 --- /dev/null +++ b/types/zeromq/zeromq-tests.ts @@ -0,0 +1,49 @@ +import zeromq = require('zeromq'); + +function test1() { + let sock = zeromq.socket('push'); + sock.bindSync('tcp://127.0.0.1:3000'); + sock.unbindSync('tcp://127.0.0.1:3000'); + sock.send("some work"); +} + +function test2() { + let sock = zeromq.socket('push'); + sock.bindSync('tcp://127.0.0.1:3000'); + sock.send(new Buffer(1000)); +} + +function test3() { + let sock = zeromq.socket('push'); + sock.bindSync('tcp://127.0.0.1:3000'); + sock.send(['hello', 'world']); + sock.on('message', (buffer1: Buffer, buffer2: Buffer) => { }); +} + +function test4() { + let sock = zeromq.socket(zeromq.types.pull); + sock.bind('tcp://127.0.0.1', err => { + sock.send("some work"); + }); + sock.unbind('tcp://127.0.0.1', err => { + // + }); +} + +function test5() { + let sock = zeromq.socket(zeromq.types.pull, zeromq.options.linger); + sock.bind('tcp://127.0.0.1', err => { + sock.send("some work"); + }); + sock.monitor(); + sock.monitor(10); +} + +function test6() { + let sock = zeromq.socket(zeromq.types.dealer); + sock.bind('tcp://127.0.0.1', err => { + sock.send("some work"); + }); + sock.pause(); + sock.resume(); +}