/// <reference types="xrm" />
declare module "xrm-mock/controls/addcontrolnotificationoptions/addcontrolnotificationoptions.mock" {
    export class AddControlNotificationOptionsMock implements Xrm.Controls.AddControlNotificationOptions {
        actions?: Xrm.Controls.ControlNotificationAction[];
        messages: string[];
        notificationLevel?: Xrm.Controls.NotificationLevel;
        uniqueId: string;
        constructor(components: IAddControlNotificationOptionsComponents);
    }
    export interface IAddControlNotificationOptionsComponents {
        actions?: Xrm.Controls.ControlNotificationAction[];
        messages: string[];
        notificationLevel?: Xrm.Controls.NotificationLevel;
        uniqueId: string;
    }
}
declare module "xrm-mock/navigation/alertstrings/alertstrings.mock" {
    export class AlertStringsMock implements Xrm.Navigation.AlertStrings {
        confirmButtonLabel?: string;
        text: string;
        constructor(text: string, confirmButtonLabel?: string);
    }
}
declare module "xrm-mock/appproperties/appproperties.mock" {
    export class AppPropertiesMock implements Xrm.AppProperties {
        appId?: string;
        displayName?: string;
        uniqueName?: string;
        url?: string;
        webResourceId?: string;
        webResourceName?: string;
        welcomePageId?: string;
        welcomePageName?: string;
        constructor(components: IAppPropertiesComponents);
    }
    export interface IAppPropertiesComponents {
        appId?: string;
        displayName?: string;
        uniqueName?: string;
        url?: string;
        webResourceId?: string;
        webResourceName?: string;
        welcomePageId?: string;
        welcomePageName?: string;
    }
}
declare module "xrm-mock/metadata/attributemetadata/attributemetadata.mock" {
    export class AttributeMetadataMock implements Xrm.Metadata.AttributeMetadata {
        DefaultFormValue: number;
        LogicalName: string;
        DisplayName: string;
        AttributeType: XrmEnum.AttributeTypeCode;
        EntityLogicalName: string;
        OptionSet: Xrm.Metadata.OptionMetadata[];
        constructor(components: IAttributeMetadataComponents);
    }
    export interface IAttributeMetadataComponents {
        DefaultFormValue?: number;
        LogicalName?: string;
        DisplayName?: string;
        AttributeType?: XrmEnum.AttributeTypeCode;
        EntityLogicalName?: string;
        OptionSet?: Xrm.Metadata.OptionMetadata[];
    }
}
declare module "xrm-mock-generator/helpers/array.helper" {
    export function findIndex(handlers: Xrm.Events.ContextSensitiveHandler[], handler: Xrm.Events.ContextSensitiveHandler): number;
}
declare module "xrm-mock/async/xrmpromise/xrmpromise.mock" {
    export class XrmPromiseMock<T> implements Xrm.Async.PromiseLike<T> {
        private promise;
        constructor(promise: Promise<T>);
        then<U>(onFulfilled?: (value: T) => U | Xrm.Async.PromiseLike<U>, onRejected?: (error: any) => U | Xrm.Async.PromiseLike<U> | void): Xrm.Async.PromiseLike<U>;
        fail<U>(onRejected?: (reason: Xrm.ErrorResponse) => U | Xrm.Async.PromiseLike<U>): Xrm.Async.PromiseLike<U>;
        always<U>(alwaysCallback: () => U | Xrm.Async.PromiseLike<U>): Xrm.Async.PromiseLike<U>;
        catch<U>(onRejected?: (reason: Xrm.ErrorResponse) => U | Xrm.Async.PromiseLike<U>): Xrm.Async.PromiseLike<U>;
        finally<U>(finallyCallback: () => U | Xrm.Async.PromiseLike<U>): Xrm.Async.PromiseLike<U>;
        /**
         * Creates a PromiseLike<T> that is resolved with the given value or the result of calling the given function, after a timeout.
         * @param value value or function that returns a value to resolve the PromiseLike<T> with.
         * @param timeout The time to wait before resolving the PromiseLike<T> with the value (in milliseconds). Defaults to 1.
         * @returns PromiseLike<T> for the given value
         */
        static delay<T>(value: T | (() => T), timeout?: number): Xrm.Async.PromiseLike<T>;
        /**
         * Creates a PromiseLike<void> that is resolved after a timeout.
         * @param action The action to perform after the timeout.
         * @param timeout The time to wait before calling the action, and resolving the PromiseLike<void>. Defaults to 1.
         * @returns PromiseLike<void>
         */
        static delayVoid(action?: () => void, timeout?: number): Xrm.Async.PromiseLike<void>;
    }
}
declare module "xrm-mock/app/sidePanes.mock" {
    export class SidePanesMock {
        state: number;
        createPane(paneOptions?: Xrm.App.PaneOptions): Xrm.Async.PromiseLike<Xrm.App.PaneObject>;
        getAllPanes(): Xrm.App.PaneObject[];
        getPane(panelId: string): Xrm.App.PaneObject;
        getSelectedPane(): Xrm.App.PaneObject;
    }
}
declare module "xrm-mock/app/app.mock" {
    export class AppMock implements Xrm.App {
        globalNotifications: {
            [index: string]: Xrm.App.Notification;
        };
        private static count;
        constructor();
        addGlobalNotification(notification: Xrm.App.Notification): Xrm.Async.PromiseLike<string>;
        clearGlobalNotification(uniqueId: string): Xrm.Async.PromiseLike<string>;
        sidePanes: {
            state: number;
            createPane(paneOptions?: Xrm.App.PaneOptions): Xrm.Async.PromiseLike<Xrm.App.PaneObject>;
            getAllPanes(): Xrm.App.PaneObject[];
            getPane(panelId: string): Xrm.App.PaneObject | undefined;
            getSelectedPane(): Xrm.App.PaneObject;
        };
    }
}
declare module "xrm-mock-generator/app" {
    import { AppMock } from "xrm-mock/app/app.mock";
    export default class App {
        static createApp(): AppMock;
    }
}
declare module "xrm-mock-generator/form" {
    import * as XrmMock from "xrm-mock/index";
    export default class Form {
        static createBlankForm(): XrmMock.FormItemMock;
    }
}
declare module "xrm-mock-generator/ui" {
    import * as XrmMock from "xrm-mock/index";
    export default class Ui {
        static createUi(): XrmMock.UiMock;
        static createLabelElement(label: string): XrmMock.UiLabelElementMock;
        static createCanGetVisibleElement(isVisible: boolean): XrmMock.UiCanGetVisibleElementMock;
        static createStandardElement(labelElement: Xrm.Page.UiLabelElement, visibleElement: Xrm.Page.UiCanGetVisibleElement): XrmMock.UiStandardElementMock;
    }
}
declare module "xrm-mock-generator/control" {
    import * as XrmMock from "xrm-mock/index";
    export type CreateMethods = "createBoolean" | "createDate" | "createLookup" | "createNumber" | "createOptionSet" | "createString";
    export default class Control {
        createBoolean(components: XrmMock.IBooleanControlComponents): XrmMock.BooleanControlMock;
        createBoolean(attribute: XrmMock.BooleanAttributeMock, name?: string, visible?: boolean, disabled?: boolean, label?: string): XrmMock.BooleanControlMock;
        createDate(components: XrmMock.IDateControlComponents): XrmMock.DateControlMock;
        createDate(attribute: XrmMock.DateAttributeMock, name?: string, visible?: boolean, disabled?: boolean, label?: string): XrmMock.DateControlMock;
        createGrid(components: XrmMock.IGridControlComponents): XrmMock.GridControlMock;
        createGrid(name?: string, visible?: boolean, label?: string): XrmMock.GridControlMock;
        createLookup(components: XrmMock.ILookupControlComponents): XrmMock.LookupControlMock;
        createLookup(attribute: XrmMock.LookupAttributeMock, name?: string, visible?: boolean, disabled?: boolean, label?: string): XrmMock.LookupControlMock;
        createNumber(components: XrmMock.INumberControlComponents): XrmMock.NumberControlMock;
        createNumber(attribute: XrmMock.NumberAttributeMock, name?: string, visible?: boolean, disabled?: boolean, label?: string): XrmMock.NumberControlMock;
        createOptionSet(components: XrmMock.IOptionSetControlComponents): XrmMock.OptionSetControlMock;
        createOptionSet(attribute: XrmMock.OptionSetAttributeMock, name?: string, visible?: boolean, disabled?: boolean, label?: string): XrmMock.OptionSetControlMock;
        createString(components: XrmMock.IStringControlComponents): XrmMock.StringControlMock;
        createString(attribute: XrmMock.StringAttributeMock, name?: string, visible?: boolean, disabled?: boolean, label?: string): XrmMock.StringControlMock;
        private addControl;
        private createStandardComponent;
    }
}
declare module "xrm-mock-generator/attribute" {
    import * as XrmMock from "xrm-mock/index";
    export type BooleanControlComponent = XrmMock.IAttBooleanControlComponents | XrmMock.IAttBooleanControlComponents[];
    export type DateControlComponent = XrmMock.IAttDateControlComponents | XrmMock.IAttDateControlComponents[];
    export type LookupControlComponent = XrmMock.IAttLookupControlComponents | XrmMock.IAttLookupControlComponents[];
    export type NumberControlComponent = XrmMock.IAttNumberControlComponents | XrmMock.IAttNumberControlComponents[];
    export type OptionSetControlComponent = XrmMock.IAttOptionSetControlComponents | XrmMock.IAttOptionSetControlComponents[];
    export type StringControlComponent = XrmMock.IAttStringControlComponents | XrmMock.IAttStringControlComponents[];
    export default class Attribute {
        private Control;
        createBoolean(attComponents: XrmMock.IBooleanAttributeComponents, controlComponents?: BooleanControlComponent): XrmMock.BooleanAttributeMock;
        createBoolean(name: string, value?: boolean): XrmMock.BooleanAttributeMock;
        createDate(attComponents: XrmMock.IDateAttributeComponents, controlComponents?: DateControlComponent): XrmMock.DateAttributeMock;
        createDate(name: string, value?: Date): XrmMock.DateAttributeMock;
        createLookup(attComponents: XrmMock.ILookupAttributeComponents, controlComponents?: LookupControlComponent): XrmMock.LookupAttributeMock;
        createLookup(name: string, lookup?: Xrm.LookupValue | Xrm.LookupValue[]): XrmMock.LookupAttributeMock;
        createNumber(attComponents: XrmMock.INumberAttributeComponents, controlComponents?: NumberControlComponent): XrmMock.NumberAttributeMock;
        createNumber(name: string, value?: number): XrmMock.NumberAttributeMock;
        createOptionSet(attComponents: XrmMock.IOptionSetAttributeComponents, controlComponents?: OptionSetControlComponent): XrmMock.OptionSetAttributeMock;
        createOptionSet(name: string, value?: string | number, options?: Xrm.OptionSetValue[]): XrmMock.OptionSetAttributeMock;
        createString(attComponents: XrmMock.IStringAttributeComponents, controlComponents?: StringControlComponent): XrmMock.StringAttributeMock;
        createString(name: string, value?: string): XrmMock.StringAttributeMock;
        private createOptionSetFromParameters;
        private createOptionSetFromComponents;
        private createStringFromParameters;
        private createAttribute;
        private addAttribute;
        /**
         * Creates the given attribute, as well as the controls for the attribute defined by the components
         * @param attribute The newly created attribute to be added to the page colleciton of attributes
         * @param controls Array of Control Components to create controls for the given attribute
         * @param controlCreateFunction the name of the Control function to call to create the correct type of control
         */
        private associateAttribute;
        private defaultName;
        private arrayify;
    }
}
declare module "xrm-mock-generator/context" {
    import * as XrmMock from "xrm-mock/index";
    export default class Context {
        static createContext(client?: Xrm.Client): XrmMock.ContextMock;
    }
}
declare module "xrm-mock/device/device.mock" {
    export class DeviceMock implements Xrm.Device {
        captureAudio(): Xrm.Async.PromiseLike<Xrm.Device.CaptureFileResponse>;
        captureImage(imageOptions: Xrm.Device.CaptureImageOptions): Xrm.Async.PromiseLike<Xrm.Device.CaptureFileResponse>;
        captureVideo(): Xrm.Async.PromiseLike<Xrm.Device.CaptureFileResponse>;
        getBarcodeValue(): Xrm.Async.PromiseLike<string>;
        getCurrentPosition(): Xrm.Async.PromiseLike<Xrm.Device.GetCurrentPositionResponse>;
        pickFile(pickFileOptions: Xrm.Device.PickFileOptions): Xrm.Async.PromiseLike<Xrm.Device.CaptureFileResponse[]>;
    }
}
declare module "xrm-mock-generator/device" {
    import { DeviceMock } from "xrm-mock/device/device.mock";
    export default class Device {
        static createDevice(): DeviceMock;
    }
}
declare module "xrm-mock/collection/itemcollection/itemcollection.mock" {
    export class ItemCollectionMock<T> implements Xrm.Collection.ItemCollection<T> {
        itemCollection: T[];
        constructor(itemCollection?: T[]);
        forEach(delegate: Xrm.Collection.IterativeDelegate<T>): void;
        get(delegate: Xrm.Collection.MatchingDelegate<T>): T[];
        get(item: number | string): T;
        get(): T[];
        getLength(): number;
        push(item: T): void;
    }
}
declare module "xrm-mock/controls/formitem/formitem.mock" {
    export class FormItemMock implements Xrm.Controls.FormItem {
        id: string;
        label: string;
        formType: XrmEnum.FormType;
        currentItem: boolean;
        constructor(components: IFormItemComponents);
        getId(): string;
        getLabel(): string;
        navigate(): void;
        getVisible(): boolean;
        setVisible(value: boolean): boolean;
    }
    export interface IFormItemComponents {
        id: string;
        label: string;
        formType?: XrmEnum.FormType;
        currentItem?: boolean;
    }
}
declare module "xrm-mock/controls/formselector/formselector.mock" {
    import { ItemCollectionMock } from "xrm-mock/collection/itemcollection/itemcollection.mock";
    import { FormItemMock } from "xrm-mock/controls/formitem/formitem.mock";
    export class FormSelectorMock implements Xrm.Controls.FormSelector {
        items: ItemCollectionMock<FormItemMock>;
        constructor(items: ItemCollectionMock<FormItemMock>);
        getCurrentItem(): Xrm.Controls.FormItem;
    }
}
declare module "xrm-mock/ui/ui.mock" {
    import { FormSelectorMock } from "xrm-mock/controls/formselector/formselector.mock";
    export class UiMock implements Xrm.Ui {
        process: Xrm.Controls.ProcessControl;
        controls: Xrm.Collection.ItemCollection<Xrm.Controls.Control>;
        footerSection: Xrm.Controls.FooterSection;
        formSelector: FormSelectorMock;
        headerSection: Xrm.Controls.HeaderSection;
        navigation: Xrm.Controls.Navigation;
        tabs: Xrm.Collection.ItemCollection<Xrm.Controls.Tab>;
        quickForms: Xrm.Collection.ItemCollection<Xrm.Controls.QuickFormControl>;
        formNotifications: [{
            message: string;
            level: Xrm.Page.ui.FormNotificationLevel;
            uniqueId: string;
        }];
        constructor(components: IUiComponents);
        setFormNotification(message: string, level: Xrm.Page.ui.FormNotificationLevel, uniqueId: string): boolean;
        clearFormNotification(uniqueId: string): boolean;
        close(): void;
        getFormType(): XrmEnum.FormType;
        getViewPortHeight(): number;
        getViewPortWidth(): number;
        refreshRibbon(): void;
        setFormEntityName(arg: string): void;
        addOnLoad(handler: Xrm.Events.ContextSensitiveHandler): void;
        removeOnLoad(handler: Xrm.Events.ContextSensitiveHandler): void;
        private _getFormNotificationExists;
    }
    export interface IUiComponents {
        process?: Xrm.Controls.ProcessControl;
        controls?: Xrm.Collection.ItemCollection<Xrm.Controls.Control>;
        footerSection?: Xrm.Controls.FooterSection;
        formSelector?: FormSelectorMock;
        headerSection?: Xrm.Controls.HeaderSection;
        navigation?: Xrm.Controls.Navigation;
        tabs?: Xrm.Collection.ItemCollection<Xrm.Controls.Tab>;
        quickForms?: Xrm.Collection.ItemCollection<Xrm.Controls.QuickFormControl>;
    }
}
declare module "xrm-mock-generator/formcontext" {
    import * as XrmMock from "xrm-mock/index";
    export default class FormContext {
        static createFormContext(entity?: XrmMock.IEntityComponents, ui?: XrmMock.IUiComponents, process?: Xrm.ProcessFlow.ProcessManager): XrmMock.FormContextMock;
    }
}
declare module "xrm-mock-generator/eventcontext" {
    import * as XrmMock from "xrm-mock/index";
    import Context from "xrm-mock-generator/context";
    import FormContext from "xrm-mock-generator/formcontext";
    export default class EventContext {
        static Context: Context;
        static FormContext: FormContext;
        static createEventContext(entity?: XrmMock.IEntityComponents, context?: Xrm.GlobalContext, formContext?: Xrm.FormContext, ui?: XrmMock.IUiComponents, process?: Xrm.ProcessFlow.ProcessManager): XrmMock.EventContextMock;
    }
}
declare module "xrm-mock/mobile/mobile.mock" {
    export class MobileMock implements Xrm.Mobile {
        offline: Xrm.MobileOffline;
        constructor(offline: Xrm.MobileOffline);
    }
}
declare module "xrm-mock/mobileoffline/mobileoffline.mock" {
    export class MobileOfflineMock implements Xrm.MobileOffline {
        isOfflineEnabled(entityType: string): boolean;
        createRecord(entityType: string, data: {
            [attributeName: string]: any;
        }): Xrm.Async.PromiseLike<Xrm.Async.OfflineOperationSuccessCallbackObject>;
        retrieveRecord(entityType: string, id: string, options: string): Xrm.Async.PromiseLike<Xrm.Async.OfflineOperationSuccessCallbackObject>;
        retrieveMultipleRecords(entityType: string, options: string, maxPageSize: number): Xrm.Async.PromiseLike<Array<{
            [key: string]: any;
        }>>;
        updateRecord(entityType: string, id: string, data: {
            [attributeName: string]: any;
        }): Xrm.Async.PromiseLike<Xrm.Async.OfflineOperationSuccessCallbackObject>;
        deleteRecord(entityType: string, id: string): Xrm.Async.PromiseLike<Xrm.Async.OfflineOperationSuccessCallbackObject>;
    }
}
declare module "xrm-mock-generator/mobile" {
    import { MobileMock } from "xrm-mock/mobile/mobile.mock";
    export default class Mobile {
        static createMobile(): MobileMock;
    }
}
declare module "xrm-mock-generator/navigation" {
    import * as XrmMock from "xrm-mock/index";
    export default class Navigation {
        static createNavigation(client?: Xrm.Client): XrmMock.NavigationStaticMock;
    }
}
declare module "xrm-mock/controls/uicangetvisibleelement/uicangetvisibleelement.mock" {
    export class UiCanGetVisibleElementMock implements Xrm.Controls.UiCanGetVisibleElement {
        isVisible: boolean;
        constructor(isVisible: boolean);
        getVisible(): boolean;
    }
}
declare module "xrm-mock/controls/uilabelelement/uilabelelement.mock" {
    export class UiLabelElementMock implements Xrm.Controls.UiLabelElement {
        private label;
        constructor(label: string);
        getLabel(): string;
        setLabel(label: string): void;
    }
}
declare module "xrm-mock/controls/uistandardelement/uistandardelement.mock" {
    export class UiStandardElementMock implements Xrm.Controls.UiStandardElement {
        static create(label: string, visible?: boolean): UiStandardElementMock;
        uiLabelElement: Xrm.Controls.UiLabelElement;
        uiCanGetVisibleElement: Xrm.Controls.UiCanGetVisibleElement;
        constructor(uiLabelElement: Xrm.Controls.UiLabelElement, uiCanGetVisibleElement: Xrm.Controls.UiCanGetVisibleElement);
        setVisible(visible: boolean): void;
        getVisible(): boolean;
        getLabel(): string;
        setLabel(label: string): void;
    }
}
declare module "xrm-mock-generator/helpers/control.helper" {
    export default class ControlHelpers {
        static setControlsParent(controls: Xrm.Collection.ItemCollection<Xrm.Controls.Control | Xrm.Controls.Section>, parent: Xrm.Controls.Section | Xrm.Controls.Tab): void;
    }
}
declare module "xrm-mock-generator/section" {
    import * as XrmMock from "xrm-mock/index";
    export default class Section {
        /**
         * Creates a section mock added to the XRM parent tab collection.
         * The section will be added to the parent tab given.
         * The section will be set as parent in the given controls.
         * Author: Yagasoft
         *
         * @param {string} [name] Logical name of the section.
         * @param {string} [label] Form label of the section.
         * @param {boolean} [isVisible] Is the section visible by default?
         * @param {Xrm.Controls.Tab} [parent] Parent tab.
         * @param {Xrm.Collection.ItemCollection<Xrm.Controls.Control>} [controls] List of controls in the section. Created by using the Mock Generator.
         * @returns {XrmMock.SectionMock} Section mock.
         * @memberof Section
         */
        createSection(name?: string, label?: string, isVisible?: boolean, parent?: Xrm.Controls.Tab, controls?: Xrm.Collection.ItemCollection<Xrm.Controls.Control>): XrmMock.SectionMock;
    }
}
declare module "xrm-mock/controls/section/section.mock" {
    export class SectionMock implements Xrm.Controls.Section {
        controls: Xrm.Collection.ItemCollection<Xrm.Controls.Control>;
        parent: Xrm.Controls.Tab;
        private name;
        private uiStandardElement;
        constructor(name: string, parent?: Xrm.Controls.Tab, uiStandardElement?: Xrm.Controls.UiStandardElement, controls?: Xrm.Collection.ItemCollection<Xrm.Controls.Control>);
        getName(): string;
        getParent(): Xrm.Controls.Tab;
        setVisible(visible: boolean): void;
        getVisible(): boolean;
        getLabel(): string;
        setLabel(label: string): void;
    }
}
declare module "xrm-mock/controls/uifocusable/uifocusable.mock" {
    export class UiFocusableMock implements Xrm.Controls.UiFocusable {
        hasFocus: boolean;
        constructor(hasFocus?: boolean);
        setFocus(): void;
    }
}
declare module "xrm-mock/controls/tab/tab.mock" {
    export class TabMock implements Xrm.Controls.Tab {
        sections: Xrm.Collection.ItemCollection<Xrm.Controls.Section>;
        tabStateChangeHandlers: Xrm.Events.ContextSensitiveHandler[];
        private uiStandardElement;
        private uiFocusableElement;
        private name;
        private parent;
        private displayState;
        constructor(components: ITabComponents);
        getDisplayState(): Xrm.DisplayState;
        getName(): string;
        getParent(): Xrm.Ui;
        setDisplayState(displayState: Xrm.DisplayState): void;
        setVisible(visible: boolean): void;
        getVisible(): boolean;
        getLabel(): string;
        setLabel(label: string): void;
        setFocus(): void;
        addTabStateChange(handler: (context: Xrm.Events.EventContext) => void): void;
        removeTabStateChange(handler: (context: Xrm.Events.EventContext) => void): void;
    }
    export interface ITabComponents {
        uiStandardElement?: Xrm.Controls.UiStandardElement;
        uiFocusableElement?: Xrm.Controls.UiFocusable;
        name?: string;
        parent?: Xrm.Ui;
        displayState?: Xrm.DisplayState;
        sections?: Xrm.Collection.ItemCollection<Xrm.Controls.Section>;
        tabStateChangeHandlers?: Xrm.Events.ContextSensitiveHandler[];
    }
}
declare module "xrm-mock-generator/tab" {
    import * as XrmMock from "xrm-mock/index";
    export default class Tab {
        /**
         * Creates a tab mock added to the XRM tabs collection.
         * The tab will be set as parent in the given sections.
         * Author: Yagasoft
         *
         * @param {string} [name] Logical name of the tab.
         * @param {string} [label] Form label of the tab.
         * @param {boolean} [isVisible] Is the tab visible by default?
         * @param {Xrm.DisplayState} [displayState] Is the tab collapsed or expanded?
         * @param {Xrm.ui} [parent] Parent UI.
         * @param {Xrm.Collection.ItemCollection<Xrm.Controls.Section>} [sections] List of sections in the tab. Created by using the Mock Generator.
         * @returns {XrmMock.TabMock} Tab mock.
         * @memberof Tab
         */
        createTab(name?: string, label?: string, isVisible?: boolean, displayState?: Xrm.DisplayState, parent?: Xrm.Ui, sections?: Xrm.Collection.ItemCollection<Xrm.Controls.Section>): XrmMock.TabMock;
    }
}
declare module "xrm-mock/utility/utility.mock" {
    export class UtilityMock implements Xrm.Utility {
        alertDialog(message: string, onCloseCallback: () => void): void;
        confirmDialog(message: string, yesCloseCallback: () => void, noCloseCallback: () => void): void;
        isActivityType(entityType: string): boolean;
        openQuickCreate(entityLogicalName: string, createFromEntity?: Xrm.LookupValue, parameters?: Xrm.Utility.OpenParameters): Xrm.Async.PromiseLike<Xrm.Async.OpenQuickCreateSuccessCallbackObject>;
        openEntityForm(name: string, id?: string, parameters?: Xrm.Utility.FormOpenParameters, windowOptions?: Xrm.Utility.WindowOptions): void;
        openWebResource(webResourceName: string, webResourceData?: string, width?: number, height?: number): Window;
        closeProgressIndicator(): void;
        getAllowedStatusTransitions(entityName: string, stateCode: number): Xrm.Async.PromiseLike<any>;
        getEntityMetadata(entityName: string, attributes?: string[]): Xrm.Async.PromiseLike<Xrm.Metadata.EntityMetadata>;
        getGlobalContext(): Xrm.GlobalContext;
        getResourceString(webResourceName: string, key: string): string;
        invokeProcessAction(name: string, parameters: Xrm.Collection.Dictionary<any>): Xrm.Async.PromiseLike<any>;
        lookupObjects(lookupOptions: Xrm.LookupOptions): Xrm.Async.PromiseLike<Xrm.LookupValue[]>;
        refreshParentGrid(lookupOptions: Xrm.LookupValue): void;
        showProgressIndicator(message: string): void;
        getLearningPathAttributeName(): string;
        getPageContext(): any;
    }
}
declare module "xrm-mock-generator/utility" {
    import { UtilityMock } from "xrm-mock/utility/utility.mock";
    export default class Utility {
        static createUtility(): UtilityMock;
    }
}
declare module "xrm-mock-generator/webapi" {
    import * as XrmMock from "xrm-mock/index";
    export default class WebApi {
        static createApi(clientContext: Xrm.ClientContext): XrmMock.WebApiMock;
        private static createOfflineApi;
        private static createOnlineApi;
    }
}
declare module "xrm-mock-generator/xrm-mock-generator" {
    import * as XrmMock from "xrm-mock/index";
    import App from "xrm-mock-generator/app";
    import Attribute from "xrm-mock-generator/attribute";
    import Context from "xrm-mock-generator/context";
    import Control from "xrm-mock-generator/control";
    import Device from "xrm-mock-generator/device";
    import EventContext from "xrm-mock-generator/eventcontext";
    import Form from "xrm-mock-generator/form";
    import FormContext from "xrm-mock-generator/formcontext";
    import Mobile from "xrm-mock-generator/mobile";
    import Navigation from "xrm-mock-generator/navigation";
    import Section from "xrm-mock-generator/section";
    import Tab from "xrm-mock-generator/tab";
    import Utility from "xrm-mock-generator/utility";
    import WebApi from "xrm-mock-generator/webapi";
    export class XrmMockGenerator {
        static EventContext: EventContext;
        static FormContext: FormContext;
        static Attribute: Attribute;
        static Context: Context;
        static Control: Control;
        static Device: Device;
        static Mobile: Mobile;
        static Tab: Tab;
        static Section: Section;
        static Form: Form;
        static Navigation: Navigation;
        static WebApi: WebApi;
        static Utility: Utility;
        static App: App;
        static context: XrmMock.ContextMock;
        static formContext: XrmMock.FormContextMock;
        static eventContext: XrmMock.EventContextMock;
        static initialise(components?: IXrmGeneratorComponents): XrmMock.XrmStaticMock;
        static getEventContext(): XrmMock.EventContextMock;
        static getFormContext(): XrmMock.FormContextMock;
    }
    export interface IXrmGeneratorComponents {
        context?: XrmMock.ContextMock;
        ui?: XrmMock.IUiComponents;
        entity?: XrmMock.IEntityComponents;
        process?: Xrm.ProcessFlow.ProcessManager;
    }
}
declare module "xrm-mock/controls/control/control.mock" {
    export class ControlMock implements Xrm.Controls.Control {
        controlType: Xrm.Controls.ControlType;
        name: string;
        parent: Xrm.Controls.Section;
        label: string;
        visible: boolean;
        constructor(components: IControlComponents);
        getControlType(): Xrm.Controls.ControlType | string;
        getName(): string;
        getParent(): Xrm.Controls.Section;
        getLabel(): string;
        setLabel(label: string): void;
        getVisible(): boolean;
    }
    export interface IControlComponents extends IAttControlComponents {
        name: string;
    }
    export interface IAttControlComponents {
        name?: string;
        controlType?: Xrm.Controls.ControlType;
        label?: string;
        visible?: boolean;
        parent?: Xrm.Controls.Section;
    }
}
declare module "xrm-mock/events/eventcontext/eventcontext.mock" {
    export class EventContextMock implements Xrm.Events.EventContext {
        context: Xrm.GlobalContext;
        depth: number;
        eventSource: Xrm.Attributes.Attribute | Xrm.Controls.Control | Xrm.Entity;
        formContext: Xrm.FormContext;
        sharedVariables: {
            [index: string]: any;
        };
        constructor(components: IEventContextComponents);
        getContext(): Xrm.GlobalContext;
        getDepth(): number;
        setDepth(depth: number): void;
        getEventSource(): Xrm.Attributes.Attribute | Xrm.Controls.Control | Xrm.Entity;
        getFormContext(): Xrm.FormContext;
        getSharedVariable<T>(key: string): T;
        setSharedVariable<T>(key: string, value: T): void;
    }
    export interface IEventContextComponents {
        context?: Xrm.GlobalContext;
        depth?: number;
        eventSource?: Xrm.Attributes.Attribute | Xrm.Controls.Control | Xrm.Entity;
        formContext?: Xrm.FormContext;
        sharedVariables?: {
            [index: string]: any;
        };
    }
}
declare module "xrm-mock/controls/standardcontrol/standardcontrol.mock" {
    import { AttributeMock, AttributeReturnType } from "xrm-mock/attributes/attribute/attribute.mock";
    import { ControlMock, IAttControlComponents, IControlComponents } from "xrm-mock/controls/control/control.mock";
    export class StandardControlMock<TControl extends StandardControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> extends ControlMock implements Xrm.Controls.StandardControl {
        disabled: boolean;
        attribute: TAttribute;
        protected outChangedEventHandlers: Xrm.Events.ContextSensitiveHandler[];
        protected uiStandardElement: Xrm.Controls.UiStandardElement;
        protected uiFocusable: Xrm.Controls.UiFocusable;
        protected notifications: Xrm.Controls.AddControlNotificationOptions[];
        constructor(components: IStandardControlComponents<TControl, TAttribute, TValue>);
        addNotification(notification: Xrm.Controls.AddControlNotificationOptions): void;
        /**
         * Fires the action event(s) of the first notification if it is a RECOMMENDATION notification level.
         * @returns true if it was able to apply the notification, false otherwise
         */
        applyNotification(): boolean;
        clearNotification(uniqueId?: string): boolean;
        getDisabled(): boolean;
        getNotifications(): Xrm.Controls.AddControlNotificationOptions[];
        setDisabled(disabled: boolean): void;
        setNotification(message: string, uniqueId: string): boolean;
        getAttribute(): TAttribute;
        getLabel(): string;
        setLabel(label: string): void;
        getVisible(): boolean;
        setVisible(visible: boolean): void;
        setFocus(): void;
        getOutputs(): {
            [index: string]: Xrm.Controls.FieldControlOutput;
        };
        addOnOutputChange(handler: Xrm.Events.ContextSensitiveHandler): void;
        fireOnOutputChange(): void;
        removeOnOutputChange(handler: Xrm.Events.ContextSensitiveHandler): void;
    }
    export interface IStandardControlComponents<TControl extends StandardControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> extends IAttStandardControlComponents<TControl, TAttribute, TValue>, IControlComponents {
        attribute: TAttribute;
        name: string;
    }
    export interface IAttStandardControlComponents<TControl extends StandardControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> extends IAttControlComponents {
        disabled?: boolean;
        label?: string;
        visible?: boolean;
        hasFocus?: boolean;
    }
}
declare module "xrm-mock/attributes/attribute/attribute.mock" {
    import { ItemCollectionMock } from "xrm-mock/collection/itemcollection/itemcollection.mock";
    import { StandardControlMock } from "xrm-mock/controls/standardcontrol/standardcontrol.mock";
    export type AttributeReturnType = boolean | Date | number | Xrm.LookupValue[] | string | null;
    export class AttributeMock<TControl extends StandardControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> implements Xrm.Attributes.Attribute {
        attributeType: Xrm.Attributes.AttributeType;
        controls: ItemCollectionMock<TControl>;
        isDirty: boolean;
        name: string;
        requiredLevel: Xrm.Attributes.RequirementLevel;
        submitMode: Xrm.SubmitMode;
        value: TValue;
        format: Xrm.Attributes.AttributeFormat;
        eventHandlers: Xrm.Events.ContextSensitiveHandler[];
        constructor(components: IAttributeComponents<TControl, TAttribute, TValue>);
        addOnChange(handler: Xrm.Events.ContextSensitiveHandler): void;
        fireOnChange(): void;
        getAttributeType(): Xrm.Attributes.AttributeType;
        getFormat(): Xrm.Attributes.AttributeFormat;
        getIsDirty(): boolean;
        getName(): string;
        getParent(): Xrm.Entity;
        getRequiredLevel(): Xrm.Attributes.RequirementLevel;
        getSubmitMode(): Xrm.SubmitMode;
        getUserPrivilege(): Xrm.Privilege;
        removeOnChange(handler: Xrm.Events.ContextSensitiveHandler): void;
        setRequiredLevel(requirementLevel: Xrm.Attributes.RequirementLevel): void;
        setSubmitMode(submitMode: Xrm.SubmitMode): void;
        getValue(): TValue;
        setValue(value: TValue): void;
        isValid(): boolean;
        setIsValid(valid: boolean, message: string): void;
    }
    export interface IAttributeComponents<TControl extends StandardControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> {
        attributeType?: Xrm.Attributes.AttributeType;
        controls?: ItemCollectionMock<TControl>;
        eventHandlers?: Xrm.Events.ContextSensitiveHandler[];
        format?: Xrm.Attributes.AttributeFormat;
        isDirty?: boolean;
        name: string;
        requiredLevel?: Xrm.Attributes.RequirementLevel;
        submitMode?: Xrm.SubmitMode;
        value?: TValue | null;
    }
}
declare module "xrm-mock/controls/autocompletecommand/autocompletecommand.mock" {
    export class AutoCompleteCommandMock implements Xrm.Controls.AutoCompleteCommand {
        id: string;
        icon?: string;
        label: string;
        constructor(id: string, label: string, icon?: string, action?: () => void);
        action(): void;
    }
}
declare module "xrm-mock/controls/autocompleteresult/autocompleteresult.mock" {
    export class AutoCompleteResultMock implements Xrm.Controls.AutoCompleteResult {
        id: string | number;
        icon?: string;
        fields: string[];
        constructor(id: string | number, fields: string[], icon?: string);
    }
}
declare module "xrm-mock/controls/autocompleteresultset/autocompleteresultset.mock" {
    export class AutoCompleteResultSetMock implements Xrm.Controls.AutoCompleteResultSet {
        results: Xrm.Controls.AutoCompleteResult[];
        commands?: Xrm.Controls.AutoCompleteCommand;
        constructor(results: Xrm.Controls.AutoCompleteResult[], commands?: Xrm.Controls.AutoCompleteCommand);
    }
}
declare module "xrm-mock/controls/uikeypressable/uikeypressable.mock" {
    export class UiKeyPressableMock implements Xrm.Controls.UiKeyPressable {
        keyPressHandlers?: Xrm.Events.ContextSensitiveHandler[];
        constructor(keyPressHandlers?: Xrm.Events.ContextSensitiveHandler[]);
        addOnKeyPress(handler: Xrm.Events.ContextSensitiveHandler): void;
        fireOnKeyPress(eventContext?: Xrm.Events.EventContext): void;
        removeOnKeyPress(handler: Xrm.Events.ContextSensitiveHandler): void;
    }
}
declare module "xrm-mock/controls/autolookupcontrol/autolookupcontrol.mock" {
    import { AttributeMock, AttributeReturnType } from "xrm-mock/attributes/attribute/attribute.mock";
    import { IAttStandardControlComponents, IStandardControlComponents, StandardControlMock } from "xrm-mock/controls/standardcontrol/standardcontrol.mock";
    import { UiKeyPressableMock } from "xrm-mock/controls/uikeypressable/uikeypressable.mock";
    export class AutoLookupControlMock<TControl extends AutoLookupControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> extends StandardControlMock<TControl, TAttribute, TValue> implements Xrm.Controls.AutoLookupControl {
        uiKeyPressable: UiKeyPressableMock;
        /**
         * Allows for testing the value typed into the control, but not yet saved
         */
        uncommittedText: string;
        constructor(components: IAutoLookupControlComponents<TControl, TAttribute, TValue>);
        getValue(): string;
        hideAutoComplete(): void;
        showAutoComplete(resultSet: Xrm.Controls.AutoCompleteResultSet): void;
        addOnKeyPress(handler: Xrm.Events.ContextSensitiveHandler): void;
        fireOnKeyPress(): void;
        removeOnKeyPress(handler: Xrm.Events.ContextSensitiveHandler): void;
    }
    export interface IAutoLookupControlComponents<TControl extends AutoLookupControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> extends IStandardControlComponents<TControl, TAttribute, TValue>, IAttAutoLookupControlComponents<TControl, TAttribute, TValue> {
        name: string;
    }
    export interface IAttAutoLookupControlComponents<TControl extends AutoLookupControlMock<TControl, TAttribute, TValue>, TAttribute extends AttributeMock<TControl, TAttribute, TValue>, TValue extends AttributeReturnType> extends IAttStandardControlComponents<TControl, TAttribute, TValue> {
        keyPressHandlers?: Xrm.Events.ContextSensitiveHandler[];
        /**
         * Auto Lookup allows for getting the value that has currently been typed in,
         * but not necessarily saved to the attribute
         */
        uncommittedText?: string;
    }
}
declare module "xrm-mock/controls/booleancontrol/booleancontrol.mock" {
    import { BooleanAttributeMock } from "xrm-mock/attributes/booleanattribute/booleanattribute.mock";
    import { IAttStandardControlComponents, IStandardControlComponents, StandardControlMock } from "xrm-mock/controls/standardcontrol/standardcontrol.mock";
    export class BooleanControlMock extends StandardControlMock<BooleanControlMock, BooleanAttributeMock, boolean> implements Xrm.Controls.BooleanControl {
        private static defaultComponents;
        constructor(components: IBooleanControlComponents);
    }
    export interface IBooleanControlComponents extends IStandardControlComponents<BooleanControlMock, BooleanAttributeMock, boolean>, IAttBooleanControlComponents {
        name: string;
    }
    export interface IAttBooleanControlComponents extends IAttStandardControlComponents<BooleanControlMock, BooleanAttributeMock, boolean> {
    }
}
declare module "xrm-mock/attributes/enumattribute/enumattribute.mock" {
    import { StandardControlMock } from "xrm-mock/controls/standardcontrol/standardcontrol.mock";
    import { AttributeMock, IAttributeComponents } from "xrm-mock/attributes/attribute/attribute.mock";
    export class EnumAttributeMock<TControl extends StandardControlMock<TControl, TAttribute, TValue>, TAttribute extends EnumAttributeMock<TControl, TAttribute, TValue>, TValue extends number | boolean> extends AttributeMock<TControl, TAttribute, TValue> implements Xrm.Attributes.EnumAttribute<TValue> {
        initialValue: TValue;
        constructor(components: IEnumAttributeComponents<TControl, TAttribute, TValue>);
        getInitialValue(): TValue;
    }
    export interface IEnumAttributeComponents<TControl extends StandardControlMock<TControl, TAttribute, TValue>, TAttribute extends EnumAttributeMock<TControl, TAttribute, TValue>, TValue extends number | boolean> extends IAttributeComponents<TControl, TAttribute, TValue> {
        initialValue?: TValue;
    }
}
declare module "xrm-mock/attributes/booleanattribute/booleanattribute.mock" {
    import { BooleanControlMock } from "xrm-mock/controls/booleancontrol/booleancontrol.mock";
    import { EnumAttributeMock, IEnumAttributeComponents } from "xrm-mock/attributes/enumattribute/enumattribute.mock";
    export class BooleanAttributeMock extends EnumAttributeMock<BooleanControlMock, BooleanAttributeMock, boolean> implements Xrm.Attributes.BooleanAttribute {
        static create(name: string, value?: boolean): BooleanAttributeMock;
        private static defaultComponents;
        constructor(components: IBooleanAttributeComponents);
        /**
         * Gets the attribute format.
         * @returns the string "boolean"
         */
        getAttributeType(): "boolean";
    }
    export interface IBooleanAttributeComponents extends IEnumAttributeComponents<BooleanControlMock, BooleanAttributeMock, boolean> {
    }
}
declare module "xrm-mock/calendar/calendar.mock" {
    export class CalendarMock implements Xrm.Calendar {
        MinSupportedDateTime: Date;
        MaxSupportedDateTime: Date;
        AlgorithmType: number;
        CalendarType: number;
        Eras: number[];
        TwoDigitYearMax: number;
        IsReadOnly: boolean;
        constructor(components: ICalendarComponents);
    }
    export interface ICalendarComponents {
        MinSupportedDateTime: Date;
        MaxSupportedDateTime: Date;
        AlgorithmType: number;
        CalendarType: number;
        Eras: number[];
        TwoDigitYearMax: number;
        IsReadOnly: boolean;
    }
}
declare module "xrm-mock/device/capturefileresponse/capturefileresponse.mock" {
    export class CaptureFileResponseMock implements Xrm.Device.CaptureFileResponse {
        fileContent: string;
        fileName: string;
        fileSize: number;
        mimeType: string;
        constructor(fileContent?: string, fileName?: string, fileSize?: number, mimeType?: string);
    }
}
declare module "xrm-mock/device/captureimageoptions/captureimageoptions.mock" {
    export class CaptureImageOptionsMock implements Xrm.Device.CaptureImageOptions {
        allowEdit: boolean;
        height: number;
        preferFrontCamera: boolean;
        quality: number;
        width: number;
        constructor(components: ICaptureImageOptionsComponents);
    }
    export interface ICaptureImageOptionsComponents {
        allowEdit?: boolean;
        height?: number;
        preferFrontCamera?: boolean;
        quality?: number;
        width?: number;
    }
}
declare module "xrm-mock/clientcontext/clientcontext.mock" {
    export class ClientContextMock implements Xrm.ClientContext {
        client: Xrm.Client;
        clientState: Xrm.ClientState;
        constructor(client: Xrm.Client, clientState: Xrm.ClientState);
        getClient(): Xrm.Client;
        getClientState(): Xrm.ClientState;
        getFormFactor(): XrmEnum.ClientFormFactor;
        isOffline(): boolean;
        isNetworkAvailable(): boolean;
    }
}
declare module "xrm-mock/navigation/confirmresult/confirmresult.mock" {
    export class ConfirmResultMock implements Xrm.Navigation.ConfirmResult {
        confirmed: boolean;
        constructor(confirmed: boolean);
    }
}
declare module "xrm-mock/navigation/confirmstrings/confirmstrings.mock" {
    export class ConfirmStringsMock implements Xrm.Navigation.ConfirmStrings {
        cancelButtonLabel?: string;
        confirmButtonLabel?: string;
        subtitle?: string;
        title?: string;
        text: string;
        constructor(components: IConfirmStringsComponents);
    }
    export interface IConfirmStringsComponents {
        cancelButtonLabel?: string;
        confirmButtonLabel?: string;
        subtitle?: string;
        title?: string;
        text: string;
    }
}
declare module "xrm-mock/globalcontext/context.mock" {
    export class ContextMock implements Xrm.GlobalContext {
        advancedConfigSetting: {
            [index in "MaxChildIncidentNumber" | "MaxIncidentMergeNumber"]: number;
        };
        client: Xrm.ClientContext;
        clientUrl: string;
        currentAppName: string;
        currentAppProperties: Xrm.AppProperties;
        currentAppSettings: {
            [index: string]: string | number | boolean;
        };
        currentAppUrl: string;
        currentTheme: Xrm.Theme;
        isAutoSaveEnabled: boolean;
        onPremise: boolean;
        orgLcid: number;
        orgUniqueName: string;
        organizationSettings: Xrm.OrganizationSettings;
        queryStringParameters: {
            [index: string]: any;
        };
        timeZoneOffset: number;
        userId: string;
        userLcid: number;
        userName: string;
        userRoles: string[];
        userSettings: Xrm.UserSettings;
        version: string;
        webResourceUrl: {
            [index: string]: string;
        };
        constructor(components: IContextComponents);
        getCurrentAppSetting(settingName: string): string | number | boolean;
        getClientUrl(): string;
        getCurrentTheme(): Xrm.Theme;
        getIsAutoSaveEnabled(): boolean;
        getOrgLcid(): number;
        getOrgUniqueName(): string;
        getQueryStringParameters(): {
            [index: string]: any;
        };
        getTimeZoneOffsetMinutes(): number;
        getUserSettings(): Xrm.UserSettings;
        getUserId(): string;
        getUserLcid(): number;
        getUserName(): string;
        getUserRoles(): string[];
        getVersion(): string;
        prependOrgName(sPath: string): string;
        getAdvancedConfigSetting(setting: "MaxChildIncidentNumber" | "MaxIncidentMergeNumber"): number;
        getCurrentAppName(): Xrm.Async.PromiseLike<string>;
        getCurrentAppProperties(): Xrm.Async.PromiseLike<Xrm.AppProperties>;
        getCurrentAppUrl(): string;
        isOnPremise(): boolean;
        getWebResourceUrl(webResourceName: string): string;
    }
    export interface IContextComponents {
        advancedConfigSetting?: {
            [index in "MaxChildIncidentNumber" | "MaxIncidentMergeNumber"]: number;
        };
        clientContext: Xrm.ClientContext;
        clientUrl?: string;
        currentAppName?: string;
        currentAppProperties?: Xrm.AppProperties;
        currentAppUrl?: string;
        currentAppSettings?: {
            [index: string]: string | number | boolean;
        };
        currentTheme?: Xrm.Theme;
        isAutoSaveEnabled?: boolean;
        onPremise?: boolean;
        organizationSettings?: Xrm.OrganizationSettings;
        orgLcid?: number;
        orgUniqueName?: string;
        queryStringParameters?: {
            [index: string]: any;
        };
        timeZoneOffset?: number;
        userSettings?: Xrm.UserSettings;
        userId?: string;
        userLcid?: number;
        userName?: string;
        userRoles?: string[];
        version?: string;
        webResourceUrl?: {
            [index: string]: string;
        };
    }
}
declare module "xrm-mock/controls/controlnotificationaction/controlnotificationaction.mock" {
    export class ControlNotificationActionMock implements Xrm.Controls.ControlNotificationAction {
        message?: string;
        actions: Array<() => void>;
        constructor(actions: Array<() => void>, message?: string);
    }
}
declare module "xrm-mock/data/data.mock" {
    import { ItemCollectionMock } from "xrm-mock/collection/itemcollection/itemcollection.mock";
    export class DataMock implements Xrm.Data {
        attributes: ItemCollectionMock<Xrm.Attributes.Attribute>;
        entity: Xrm.Entity;
        process: Xrm.ProcessFlow.ProcessManager;
        loadEventHandlers: Xrm.Events.DataLoadEventHandler[];
        constructor(entity: Xrm.Entity, process?: Xrm.ProcessFlow.ProcessManager);
        refresh(save: boolean): Xrm.Async.PromiseLike<undefined>;
        save(saveOptions?: Xrm.SaveOptions): Xrm.Async.PromiseLike<undefined>;
        isValid(): boolean;
        getIsDirty(): boolean;
        addOnLoad(handler: Xrm.Events.DataLoadEventHandler): void;
        removeOnLoad(handler: Xrm.Events.ContextSensitiveHandler): void;
    }
}
declare module "xrm-mock/controls/datecontrol/datecontrol.mock" {
    import { DateAttributeMock } from "xrm-mock/attributes/dateattribute/dateattribute.mock";
    import { IAttStandardControlComponents, IStandardControlComponents, StandardControlMock } from "xrm-mock/controls/standardcontrol/standardcontrol.mock";
    export class DateControlMock extends StandardControlMock<DateControlMock, DateAttributeMock, Date> implements Xrm.Controls.DateControl {
        private static defaultComponents;
        showTime: boolean;
        constructor(components: IDateControlComponents);
        getShowTime(): boolean;
        setShowTime(showTime: boolean): void;
    }
    export interface IDateControlComponents extends IAttDateControlComponents, IStandardControlComponents<DateControlMock, DateAttributeMock, Date> {
        name: string;
    }
    export interface IAttDateControlComponents extends IAttStandardControlComponents<DateControlMock, DateAttributeMock, Date> {
        showTime?: boolean;
    }
}
declare module "xrm-mock/attributes/dateattribute/dateattribute.mock" {
    import { DateControlMock } from "xrm-mock/controls/datecontrol/datecontrol.mock";
    import { AttributeMock, IAttributeComponents } from "xrm-mock/attributes/attribute/attribute.mock";
    export class DateAttributeMock extends AttributeMock<DateControlMock, DateAttributeMock, Date> implements Xrm.Attributes.DateAttribute {
        static create(name: string, value?: Date): DateAttributeMock;
        private static defaultComponents;
        constructor(components: IDateAttributeComponents);
        getFormat(): Xrm.Attributes.DateAttributeFormat;
    }
    export interface IDateAttributeComponents extends IAttributeComponents<DateControlMock, DateAttributeMock, Date> {
        format?: Xrm.Attributes.DateAttributeFormat;
    }
}
declare module "xrm-mock/dateformattinginfo/dateformattinginfo.mock" {
    export class DateFormattingInfoMock implements Xrm.DateFormattingInfo {
        AmDesignator: string;
        AbbreviatedDayNames: string[];
        AbbreviatedMonthGenitiveNames: string[];
        AbbreviatedMonthNames: string[];
        CalendarWeekRule: number;
        Calendar: Xrm.Calendar;
        DateSeparator: string;
        DayNames: string[];
        FirstDayOfWeek: number;
        FullDateTimePattern: string;
        LongDatePattern: string;
        LongTimePattern: string;
        MonthDayPattern: string;
        MonthGenitiveNames: string[];
        MonthNames: string[];
        PmDesignator: string;
        ShortDatePattern: string;
        ShortTimePattern: string;
        ShortestDayNames: string[];
        SortableDateTimePattern: string;
        TimeSeparator: string;
        UniversalSortableDateTimePattern: string;
        YearMonthPattern: string;
        constructor(components: IDateFormattingInfoComponents);
    }
    export interface IDateFormattingInfoComponents {
        AmDesignator: string;
        AbbreviatedDayNames: string[];
        AbbreviatedMonthGenitiveNames: string[];
        AbbreviatedMonthNames: string[];
        CalendarWeekRule: number;
        Calendar: Xrm.Calendar;
        DateSeparator: string;
        DayNames: string[];
        FirstDayOfWeek: number;
        FullDateTimePattern: string;
        LongDatePattern: string;
        LongTimePattern: string;
        MonthDayPattern: string;
        MonthGenitiveNames: string[];
        MonthNames: string[];
        PmDesignator: string;
        ShortDatePattern: string;
        ShortTimePattern: string;
        ShortestDayNames: string[];
        SortableDateTimePattern: string;
        TimeSeparator: string;
        UniversalSortableDateTimePattern: string;
        YearMonthPattern: string;
    }
}
declare module "xrm-mock/navigation/dialogsizeoptions/dialogsizeoptions.mock" {
    export class DialogSizeOptionsMock implements Xrm.Navigation.DialogSizeOptions {
        height: number;
        width: number;
        constructor(height: number, width: number);
    }
}
declare module "xrm-mock/encoding/encoding.mock" {
    export class EncodingMock implements Xrm.Encoding {
        xmlAttributeEncode(arg: string): string;
        xmlEncode(arg: string): string;
        htmlAttributeEncode(arg: string): string;
        htmlDecode(arg: string): string;
        htmlEncode(arg: string): string;
    }
}
declare module "xrm-mock/navigation/entityformoptions/entityformoptions.mock" {
    export class EntityFormOptionsMock implements Xrm.Navigation.EntityFormOptions {
        cmdbar?: boolean;
        createFromEntity?: Xrm.LookupValue;
        entityId?: string;
        entityName?: string;
        formId?: string;
        height?: number;
        isCrossEntityNavigate?: boolean;
        isOfflineSyncError?: boolean;
        navBar?: Xrm.Url.NavBarDisplay;
        openInNewWindow?: boolean;
        windowPosition?: XrmEnum.WindowPositions;
        processId?: string;
        processInstanceId?: string;
        relationship?: Xrm.Navigation.Relationship;
        selectedStageId?: string;
        useQuickCreateForm?: boolean;
        width?: number;
        constructor(components: IEntityFormOptionsComponents);
    }
    export interface IEntityFormOptionsComponents {
        cmdbar?: boolean;
        createFromEntity?: Xrm.LookupValue;
        entityId?: string;
        entityName?: string;
        formId?: string;
        height?: number;
        isCrossEntityNavigate?: boolean;
        isOfflineSyncError?: boolean;
        navBar?: Xrm.Url.NavBarDisplay;
        openInNewWindow?: boolean;
        windowPosition?: XrmEnum.WindowPositions;
        processId?: string;
        processInstanceId?: string;
        relationship?: Xrm.Navigation.Relationship;
        selectedStageId?: string;
        useQuickCreateForm?: boolean;
        width?: number;
    }
}
declare module "xrm-mock/metadata/entitymetadata/entitymetadata.mock" {
    export class EntityMetadataMock implements Xrm.Metadata.EntityMetadata {
        ActivityTypeMask: number;
        Attributes: Xrm.Collection.StringIndexableItemCollection<Xrm.Metadata.AttributeMetadata>;
        AutoRouteToOwnerQueue: boolean;
        CanEnableSyncToExternalSearchIndex: boolean;
        CanBeInManyToMany: boolean;
        CanBePrimaryEntityInRelationship: boolean;
        CanBeRelatedEntityInRelationship: boolean;
        CanCreateAttributes: boolean;
        CanCreateCharts: boolean;
        CanCreateForms: boolean;
        CanCreateViews: boolean;
        CanModifyAdditionalSettings: boolean;
        CanTriggerWorkflow: boolean;
        Description: Xrm.Metadata.Label;
        DisplayCollectionName: Xrm.Metadata.Label;
        DisplayName: Xrm.Metadata.Label;
        EntityColor: string;
        EntitySetName: string;
        IconLargeName: string;
        IconMediumName: string;
        IconSmallName: string;
        IsActivity: boolean;
        IsActivityParty: boolean;
        IsAuditEnabled: boolean;
        IsAvailableOffline: boolean;
        IsBPFEntity: boolean;
        IsChildEntity: boolean;
        IsConnectionsEnabled: boolean;
        IsCustomEntity: boolean;
        IsCustomizable: boolean;
        IsDocumentManagementEnabled: boolean;
        IsDuplicateDetectionEnabled: boolean;
        IsEnabledForCharts: boolean;
        IsOneNotIntegrationEnabled: boolean;
        IsOptimisitcConcurrencyEnabled: boolean;
        IsQuickCreateEnabled: boolean;
        IsImportable: boolean;
        IsIntersect: boolean;
        IsMailMergeEnabled: boolean;
        IsManaged: boolean;
        IsMappable: boolean;
        IsReadingPaneEnabled: boolean;
        IsRenameable: boolean;
        IsStateModelAware: boolean;
        IsValidForAdvancedFind: boolean;
        IsValidForQueue: boolean;
        IsVisibleInMobileClient: boolean;
        LogicalCollectionName: string;
        LogicalName: string;
        ObjectTypeCode: number;
        OwnershipTypeCode: number;
        PrimaryIdAttribute: string;
        PrimaryNameAttribute: string;
        RecurrenceBaseEntityLogicalName: string;
        PrimaryImageAttribute: string;
        constructor(components: IEntityMetadataComponents);
    }
    export interface IEntityMetadataComponents {
        ActivityTypeMask?: number;
        Attributes?: Xrm.Collection.StringIndexableItemCollection<Xrm.Metadata.AttributeMetadata>;
        AutoRouteToOwnerQueue?: boolean;
        CanEnableSyncToExternalSearchIndex?: boolean;
        CanBeInManyToMany?: boolean;
        CanBePrimaryEntityInRelationship?: boolean;
        CanBeRelatedEntityInRelationship?: boolean;
        CanCreateAttributes?: boolean;
        CanCreateCharts?: boolean;
        CanCreateForms?: boolean;
        CanCreateViews?: boolean;
        CanModifyAdditionalSettings?: boolean;
        CanTriggerWorkflow?: boolean;
        Description?: Xrm.Metadata.Label;
        DisplayCollectionName?: Xrm.Metadata.Label;
        DisplayName?: Xrm.Metadata.Label;
        EntityColor?: string;
        EntitySetName?: string;
        IconLargeName?: string;
        IconMediumName?: string;
        IconSmallName?: string;
        IsActivity?: boolean;
        IsActivityParty?: boolean;
        IsAuditEnabled?: boolean;
        IsAvailableOffline?: boolean;
        IsBPFEntity?: boolean;
        IsChildEntity?: boolean;
        IsConnectionsEnabled?: boolean;
        IsCustomEntity?: boolean;
        IsCustomizable?: boolean;
        IsDocumentManagementEnabled?: boolean;
        IsDuplicateDetectionEnabled?: boolean;
        IsEnabledForCharts?: boolean;
        IsOneNotIntegrationEnabled?: boolean;
        IsOptimisitcConcurrencyEnabled?: boolean;
        IsQuickCreateEnabled?: boolean;
        IsImportable?: boolean;
        IsIntersect?: boolean;
        IsMailMergeEnabled?: boolean;
        IsManaged?: boolean;
        IsMappable?: boolean;
        IsReadingPaneEnabled?: boolean;
        IsRenameable?: boolean;
        IsStateModelAware?: boolean;
        IsValidForAdvancedFind?: boolean;
        IsValidForQueue?: boolean;
        IsVisibleInMobileClient?: boolean;
        LogicalCollectionName?: string;
        LogicalName?: string;
        ObjectTypeCode?: number;
        OwnershipTypeCode?: number;
        PrimaryIdAttribute?: string;
        PrimaryNameAttribute?: string;
        RecurrenceBaseEntityLogicalName?: string;
        PrimaryImageAttribute?: string;
    }
}
declare module "xrm-mock-generator/index" {
    export { XrmMockGenerator, IXrmGeneratorComponents } from "xrm-mock-generator/xrm-mock-generator";
}
declare module "xrm-mock/events/postsaveeventarguments.mock" {
    export class PostSaveEventArgumentsMock implements Xrm.Events.PostSaveEventArguments {
        entityReference: Xrm.LookupValue;
        isSaveSuccess: boolean;
        saveErrorInfo: object;
        constructor(components?: IPostSaveEventArgumentsComponents);
        getEntityReference(): Xrm.LookupValue;
        getIsSaveSuccess(): boolean;
        getSaveErrorInfo(): object;
    }
    export interface IPostSaveEventArgumentsComponents {
        entityReference?: Xrm.LookupValue;
        isSaveSuccess?: boolean;
        saveErrorInfo?: object;
    }
}
declare module "xrm-mock/events/eventcontextwitheventargs.mock" {
    import { EventContextMock, IEventContextComponents } from "xrm-mock/events/eventcontext/eventcontext.mock";
    export class EventContextWithEventArgsMock<TArgs> extends EventContextMock {
        eventArgs: TArgs;
        constructor(components: IGenericEventContextComponents<TArgs>);
        getEventArgs(): TArgs;
    }
    export interface IGenericEventContextComponents<TArgs> extends IEventContextComponents {
        eventArgs?: TArgs;
    }
}
declare module "xrm-mock/events/postsaveeventcontext.mock" {
    import { EventContextWithEventArgsMock, IGenericEventContextComponents } from "xrm-mock/events/eventcontextwitheventargs.mock";
    export class PostSaveEventContextMock extends EventContextWithEventArgsMock<Xrm.Events.PostSaveEventArguments> implements Xrm.Events.PostSaveEventContext {
        constructor(components?: IPostSaveEventContextComponents);
    }
    export interface IPostSaveEventContextComponents extends IGenericEventContextComponents<Xrm.Events.PostSaveEventArguments> {
        eventArgs?: Xrm.Events.PostSaveEventArguments;
    }
}
declare module "xrm-mock/events/saveeventarguments/saveeventarguments.mock" {
    export class SaveEventArgumentsMock implements Xrm.Events.SaveEventArguments {
        protected saveMode: XrmEnum.SaveMode;
        protected defaultPrevented: boolean;
        preventOnError: boolean;
        constructor(saveMode: XrmEnum.SaveMode);
        preventDefaultOnError(): void;
        getSaveMode(): XrmEnum.SaveMode;
        isDefaultPrevented(): boolean;
        preventDefault(): void;
    }
}
declare module "xrm-mock/events/saveeventcontext/saveeventcontext.mock" {
    import { EventContextWithEventArgsMock, IGenericEventContextComponents } from "xrm-mock/events/eventcontextwitheventargs.mock";
    export class SaveEventContextMock extends EventContextWithEventArgsMock<Xrm.Events.SaveEventArguments> implements Xrm.Events.SaveEventContext {
        constructor(components?: ISaveEventContextComponents);
    }
    export interface IGenericSaveEventContextComponents<TArgs extends Xrm.Events.SaveEventArguments> extends IGenericEventContextComponents<TArgs> {
        saveMode?: XrmEnum.SaveMode;
    }
    export interface ISaveEventContextComponents extends IGenericSaveEventContextComponents<Xrm.Events.SaveEventArguments> {
    }
}
declare module "xrm-mock/events/saveeventargumentsasync.mock" {
    import { SaveEventArgumentsMock } from "xrm-mock/events/saveeventarguments/saveeventarguments.mock";
    export class SaveEventArgumentsAsyncMock extends SaveEventArgumentsMock implements Xrm.Events.SaveEventArgumentsAsync {
        asyncTimeoutDisabled: boolean;
        constructor(saveMode: XrmEnum.SaveMode);
        disableAsyncTimeout(): void;
    }
}
declare module "xrm-mock/events/saveeventcontextasync.mock" {
    import { IGenericSaveEventContextComponents } from "xrm-mock/events/saveeventcontext/saveeventcontext.mock";
    import { EventContextWithEventArgsMock } from "xrm-mock/events/eventcontextwitheventargs.mock";
    export class SaveEventContextAsyncMock extends EventContextWithEventArgsMock<Xrm.Events.SaveEventArgumentsAsync> implements Xrm.Events.SaveEventContextAsync {
        asyncTimeoutDisabled: boolean;
        constructor(components?: ISaveEventContextAsyncComponents);
        disableAsyncTimeout(): void;
    }
    export interface ISaveEventContextAsyncComponents extends IGenericSaveEventContextComponents<Xrm.Events.SaveEventArgumentsAsync> {
    }
}
declare module "xrm-mock/entity/entity.mock" {
    import { ItemCollectionMock } from "xrm-mock/collection/itemcollection/itemcollection.mock";
    export class EntityMock implements Xrm.Entity {
        id: string;
        entityName: string;
        primaryValue: string;
        attributes: ItemCollectionMock<Xrm.Attributes.Attribute>;
        postSaveEventHandlers: Xrm.Events.PostSaveEventHandler[];
        saveEventHandlers: (Xrm.Events.SaveEventHandler | Xrm.Events.SaveEventHandlerAsync)[];
        constructor(components?: IEntityComponents);
        addOnPostSave(handler: Xrm.Events.PostSaveEventHandler): void;
        addOnSave(handler: Xrm.Events.SaveEventHandler | Xrm.Events.SaveEventHandlerAsync): void;
        getEntityName(): string;
        getDataXml(): string;
        getEntityReference(): Xrm.LookupValue;
        getId(): string;
        getIsDirty(): boolean;
        getPrimaryAttributeValue(): string;
        isValid(): boolean;
        removeOnPostSave(handler: Xrm.Events.PostSaveEventHandler): void;
        removeOnSave(handler: Xrm.Events.SaveEventHandler | Xrm.Events.SaveEventHandlerAsync): void;
        save(saveMode?: Xrm.EntitySaveMode): void;
        private getSaveContext;
        private getPostSaveContext;
    }
    export interface IEntityComponents {
        id?: string;
        entityName?: string;
        primaryValue?: string;
        attributes?: ItemCollectionMock<Xrm.Attributes.Attribute>;
    }
}
declare module "xrm-mock/navigation/errordialogoptions/errordialogoptions.mock" {
    export class ErrorDialogOptionsMock implements Xrm.Navigation.ErrorDialogOptions {
        details?: string;
        errorCode?: number;
        message?: string;
        constructor(details?: string, errorCode?: number, message?: string);
    }
}
declare module "xrm-mock/errorresponse/errorresponse.mock" {
    export class ErrorResponseMock implements Xrm.ErrorResponse {
        errorCode: number;
        message: string;
        constructor(errorCode: number, message: string);
    }
}
declare module "xrm-mock/executeresponse/executeresponse.mock" {
    export class ExecuteResponseMock implements Xrm.ExecuteResponse {
        body: ReadableStream<Uint8Array>;
        headers: Headers;
        ok: boolean;
        redirected: boolean;
        status: number;
        statusText: string;
        type: ResponseType;
        url: string;
        trailer: Promise<Headers>;
        bodyUsed: boolean;
        private notImplementedError;
        constructor(components: IExecuteResponseComponents);
        arrayBuffer(): Promise<ArrayBuffer>;
        blob(): Promise<Blob>;
        formData(): Promise<FormData>;
        json(): Promise<any>;
        text(): Promise<string>;
        clone(): Response;
    }
    export interface IExecuteResponseComponents {
        body?: ReadableStream<Uint8Array>;
        headers?: Headers;
        ok?: boolean;
        redirected?: boolean;
        status?: number;
        statusText?: string;
        type?: ResponseType;
        url?: string;
        trailer?: Promise<Headers>;
        bodyUsed?: boolean;
    }
}
declare module "xrm-mock/navigation/filedetails/filedetails.mock" {
    export class FileDetailsMock implements Xrm.Navigation.FileDetails {
        fileContent: string;
        fileName: string;
        fileSize: number;
        mimeType: string;
        constructor(fileContent?: string, fileName?: string, fileSize?: number, mimeType?: string);
    }
}
declare module "xrm-mock/formcontext/formcontext.mock" {
    export class FormContextMock implements Xrm.FormContext {
        data: Xrm.Data;
        ui: Xrm.Ui;
        constructor(data: Xrm.Data, ui: Xrm.Ui);
        getAttribute<T extends Xrm.Attributes.Attribute>(attributeNameOrIndex: number | string): T;
        getAttribute<T extends Xrm.Attributes.Attribute>(delegateFunction?: Xrm.Collection.MatchingDelegate<T>): T[];
        getControl<T extends Xrm.Controls.Control>(controlNameOrIndex: string | number): T;
        getControl<T extends Xrm.Controls.Control>(delegateFunction?: Xrm.Collection.MatchingDelegate<T>): T[];
    }
}
declare module "xrm-mock/utility/formopenparameters/formopenparameters.mock" {
    export class FormOpenParametersMock implements Xrm.Utility.OpenParameters {
        [index: string]: string | undefined;
        formid?: string;
        navbar?: Xrm.Url.NavBarDisplay;
        cmdbar?: Xrm.Url.CmdBarDisplay;
        constructor(formid?: string, navbar?: Xrm.Url.NavBarDisplay, cmdbar?: Xrm.Url.CmdBarDisplay);
    }
}
declare module "xrm-mock/device/getcurrentpositionresponse/getcurrentpositionresponse.mock" {
    export class GetCurrentPositionResponseMock implements Xrm.Device.GetCurrentPositionResponse {
        coords: any;
        timestamp: number;
        constructor(coords: any, timestamp: number);
    }
}
declare module "xrm-mock/controls/gridcontrol/gridcontrol.mock" {
    import { ControlMock, IAttControlComponents, IControlComponents } from "xrm-mock/controls/control/control.mock";
    export class GridControlMock extends ControlMock implements Xrm.Controls.GridControl {
        private static defaultComponents;
        onLoadHandlers: Xrm.Events.ContextSensitiveHandler[];
        contextType: XrmEnum.GridControlContext;
        entityName: string;
        viewSelector?: Xrm.Controls.ViewSelector;
        grid?: Xrm.Controls.Grid;
        relationship?: Xrm.Controls.GridRelationship;
        private _visible;
        constructor(components: IGridControlComponents);
        setVisible(visible: boolean): void;
        refreshRibbon(): void;
        addOnLoad(handler: Xrm.Events.ContextSensitiveHandler): void;
        getContextType(): XrmEnum.GridControlContext;
        getEntityName(): string;
        getGrid(): Xrm.Controls.Grid;
        getViewSelector(): Xrm.Controls.ViewSelector;
        getVisible(): boolean;
        refresh(): void;
        removeOnLoad(handler: () => void): void;
        getFetchXml(): string;
        getGridType(): number;
        getRelationship(): Xrm.Controls.GridRelationship;
        getUrl(client: number): string;
        openRelatedGrid(): void;
    }
    export interface IGridControlComponents extends IAttGridControlComponents, IControlComponents {
        name: string;
        viewSelector?: Xrm.Controls.ViewSelector;
        grid?: Xrm.Controls.Grid;
        relationship?: Xrm.Controls.GridRelationship;
    }
    export interface IAttGridControlComponents extends IAttControlComponents {
        contextType?: XrmEnum.GridControlContext;
        entityName?: string;
        name?: string;
        onLoadHandlers?: Xrm.Events.ContextSensitiveHandler[];
    }
}
declare module "xrm-mock/controls/grid/gridentity/gridentity.mock" {
    export class GridEntityMock implements Xrm.Controls.Grid.GridEntity {
        private reference;
        constructor(reference: Xrm.LookupValue);
        getEntityName(): string;
        getEntityReference(): Xrm.LookupValue;
        getId(): string;
        getPrimaryAttributeValue(): string;
    }
}
declare module "xrm-mock/controls/grid/grid.mock" {
    export class GridMock implements Xrm.Controls.Grid {
        private rows;
        private selectedRows;
        constructor(rows: Xrm.Collection.ItemCollection<Xrm.Controls.Grid.GridRow>, selectedRows: Xrm.Collection.ItemCollection<Xrm.Controls.Grid.GridRow>);
        getRows(): Xrm.Collection.ItemCollection<Xrm.Controls.Grid.GridRow>;
        getSelectedRows(): Xrm.Collection.ItemCollection<Xrm.Controls.Grid.GridRow>;
        getTotalRecordCount(): number;
    }
}
declare module "xrm-mock/controls/grid/gridrow/gridrow.mock" {
    export class GridRowMock implements Xrm.Controls.Grid.GridRow {
        data: Xrm.Data;
        private gridRowData;
        constructor(data: Xrm.Data, gridRowData: Xrm.Controls.Grid.GridRowData);
        getData(): Xrm.Controls.Grid.GridRowData;
    }
}
declare module "xrm-mock/controls/grid/gridrowdata/gridrowdata.mock" {
    export class GridRowDataMock implements Xrm.Controls.Grid.GridRowData {
        private entity;
        constructor(entity: Xrm.Controls.Grid.GridEntity);
        getEntity(): Xrm.Controls.Grid.GridEntity;
    }
}
declare module "xrm-mock/metadata/label/label.mock" {
    export class LabelMock implements Xrm.Metadata.Label {
        LocalizedLabels: Xrm.Metadata.LocalizedLabel[];
        UserLocalizedLabel: Xrm.Metadata.LocalizedLabel;
        constructor(localLabels: Xrm.Metadata.LocalizedLabel[], userLocalLabels: Xrm.Metadata.LocalizedLabel);
    }
}
declare module "xrm-mock/metadata/localizedlabel/localizedlabel.mock" {
    export class LocalizedLabelMock implements Xrm.Metadata.LocalizedLabel {
        Label: string;
        LanguageCode: number;
        constructor(label: string, languageCode: number);
    }
}
declare module "xrm-mock/controls/lookupcontrol/lookupcontrol.mock" {
    import { LookupAttributeMock } from "xrm-mock/attributes/lookupattribute/lookupattribute.mock";
    import { IAttStandardControlComponents, IStandardControlComponents, StandardControlMock } from "xrm-mock/controls/standardcontrol/standardcontrol.mock";
    export class LookupControlMock extends StandardControlMock<LookupControlMock, LookupAttributeMock, Xrm.LookupValue[]> implements Xrm.Controls.LookupControl {
        private static defaultComponents;
        entityTypes: string[];
        filters: ILookupFilter[];
        onLookupTagHandlers: Xrm.Events.LookupTagClickHandler[];
        preSearchHandlers: Xrm.Events.ContextSensitiveHandler[];
        views: ILookupView[];
        constructor(components: ILookupControlComponents);
        addOnLookupTagClick(handler: Xrm.Events.LookupTagClickHandler): void;
        addPreSearch(handler: Xrm.Events.ContextSensitiveHandler): void;
        addCustomFilter(filter: string, entityLogicalName?: string): void;
        addCustomView(viewId: string, entityName: string, viewDisplayName: string, fetchXml: string, layoutXml: string, isDefault: boolean): void;
        fireOnLookupTagClick(context: Xrm.Events.LookupTagClickEventContext): void;
        firePreSearch(context: Xrm.Events.EventContext): void;
        getDefaultView(): string;
        getEntityTypes(): string[];
        setEntityTypes(entityLogicalNames: string[]): void;
        removeOnLookupTagClick(handler: Xrm.Events.LookupTagClickHandler): void;
        removePreSearch(handler: Xrm.Events.ContextSensitiveHandler): void;
        setDefaultView(viewGuid: string): void;
    }
    export interface ILookupControlComponents extends IStandardControlComponents<LookupControlMock, LookupAttributeMock, Xrm.LookupValue[]>, IAttLookupControlComponents {
        name: string;
    }
    export interface IAttLookupControlComponents extends IAttStandardControlComponents<LookupControlMock, LookupAttributeMock, Xrm.LookupValue[]> {
        entityTypes?: string[];
        filters?: ILookupFilter[];
        views?: ILookupView[];
        onLookupTagHandlers?: Xrm.Events.ContextSensitiveHandler[];
        preSearchHandlers?: Xrm.Events.ContextSensitiveHandler[];
    }
    export interface ILookupFilter {
        filter: string;
        entityLogicalName?: string;
    }
    export interface ILookupView {
        viewId: string;
        entityName: string;
        viewDisplayName: string;
        fetchXml: string;
        layoutXml: string;
        isDefault: boolean;
    }
}
declare module "xrm-mock/attributes/lookupattribute/lookupattribute.mock" {
    import { LookupControlMock } from "xrm-mock/controls/lookupcontrol/lookupcontrol.mock";
    import { AttributeMock, IAttributeComponents } from "xrm-mock/attributes/attribute/attribute.mock";
    export class LookupAttributeMock extends AttributeMock<LookupControlMock, LookupAttributeMock, Xrm.LookupValue[]> implements Xrm.Attributes.LookupAttribute {
        private static defaultComponents;
        isPartyList: boolean;
        constructor(components: ILookupAttributeComponents);
        getIsPartyList(): boolean;
        getValue(): Xrm.LookupValue[] | null;
    }
    export interface ILookupAttributeComponents extends IAttributeComponents<LookupControlMock, LookupAttributeMock, Xrm.LookupValue[]> {
        isPartyList?: boolean;
    }
}
declare module "xrm-mock/lookupoptions/lookupoptions.mock" {
    export class LookupOptionsMock implements Xrm.LookupOptions {
        allowMultiSelect?: boolean;
        defaultEntityType?: string;
        defaultViewId?: string;
        entityTypes: string[];
        showBarcodeScanner?: boolean;
        viewIds?: string[];
        disableMru?: boolean;
        filters?: Xrm.LookupFilterOptions[];
        searchText?: string;
        constructor(components: ILookupOptionsComponents);
    }
    export interface ILookupOptionsComponents {
        allowMultiSelect?: boolean;
        defaultEntityType?: string;
        defaultViewId?: string;
        entityTypes?: string[];
        showBarcodeScanner?: boolean;
        viewIds?: string[];
    }
}
declare module "xrm-mock/lookupvalue/lookupvalue.mock" {
    export class LookupValueMock implements Xrm.LookupValue {
        id: string;
        name?: string;
        entityType: string;
        constructor(id: string, entityType: string, name?: string);
    }
}
declare module "xrm-mock/controls/navigation/navigation.mock" {
    export class NavigationMock implements Xrm.Controls.Navigation {
        items: Xrm.Collection.ItemCollection<Xrm.Controls.NavigationItem>;
        constructor(items: Xrm.Collection.ItemCollection<Xrm.Controls.NavigationItem>);
    }
}
declare module "xrm-mock/controls/navigationitem/navigationitem.mock" {
    export class NavigationItemMock implements Xrm.Controls.NavigationItem {
        private id;
        private standardElement;
        private focusable;
        constructor(id: string, standardElement: Xrm.Controls.UiStandardElement, focusable: Xrm.Controls.UiFocusable);
        setVisible(visible: boolean): void;
        getVisible(): boolean;
        getLabel(): string;
        setLabel(label: string): void;
        setFocus(): void;
        getId(): string;
    }
}
declare module "xrm-mock/navigation/navigation.mock" {
    export class NavigationStaticMock implements Xrm.Navigation {
        private returnValueNotImplemented;
        alertDialogCalls: {
            alertStrings: Xrm.Navigation.AlertStrings;
            alertOptions?: Xrm.Navigation.DialogSizeOptions;
        }[];
        confirmDialogCalls: {
            confirmStrings: Xrm.Navigation.ConfirmStrings;
            confirmOptions?: Xrm.Navigation.DialogSizeOptions;
        }[];
        errorDialogCalls: {
            errorOptions: Xrm.Navigation.ErrorDialogOptions;
        }[];
        fileDialogCalls: {
            file: Xrm.Navigation.FileDetails;
            openFileOptions?: Xrm.Navigation.OpenFileOptions;
        }[];
        formCalls: {
            entityFormOptions: Xrm.Navigation.EntityFormOptions;
            formParameters?: Xrm.Utility.OpenParameters;
        }[];
        navigateToCalls: {
            pageInput: Xrm.Navigation.PageInputEntityRecord | Xrm.Navigation.PageInputEntityList | Xrm.Navigation.CustomPage | Xrm.Navigation.PageInputHtmlWebResource | Xrm.Navigation.Dashboard;
            navigationOptions?: Xrm.Navigation.NavigationOptions;
        }[];
        urlCalls: {
            url: string;
            openUrlOptions?: Xrm.Navigation.DialogSizeOptions;
        }[];
        webResourceCalls: {
            webResourceName: string;
            windowOptions?: Xrm.Navigation.OpenWebresourceOptions;
            data?: string;
        }[];
        navigateTo(pageInput: Xrm.Navigation.PageInputEntityRecord | Xrm.Navigation.PageInputEntityList | Xrm.Navigation.CustomPage | Xrm.Navigation.PageInputHtmlWebResource | Xrm.Navigation.Dashboard, navigationOptions?: Xrm.Navigation.NavigationOptions): Xrm.Async.PromiseLike<any>;
        openAlertDialog(alertStrings: Xrm.Navigation.AlertStrings, alertOptions?: Xrm.Navigation.DialogSizeOptions): Xrm.Async.PromiseLike<any>;
        openConfirmDialog(confirmStrings: Xrm.Navigation.ConfirmStrings, confirmOptions?: Xrm.Navigation.DialogSizeOptions): Xrm.Async.PromiseLike<Xrm.Navigation.ConfirmResult>;
        openErrorDialog(errorOptions: Xrm.Navigation.ErrorDialogOptions): Xrm.Async.PromiseLike<any>;
        openFile(file: Xrm.Navigation.FileDetails, openFileOptions?: Xrm.Navigation.OpenFileOptions): void;
        openForm(entityFormOptions: Xrm.Navigation.EntityFormOptions, formParameters?: Xrm.Utility.OpenParameters): Xrm.Async.PromiseLike<any>;
        openUrl(url: string, openUrlOptions?: Xrm.Navigation.DialogSizeOptions): void;
        openWebResource(webResourceName: string, windowOptions?: Xrm.Navigation.OpenWebresourceOptions, data?: string): void;
    }
}
declare module "xrm-mock/controls/numbercontrol/numbercontrol.mock" {
    import { NumberAttributeMock } from "xrm-mock/attributes/numberattribute/numberattribute.mock";
    import { AutoLookupControlMock, IAttAutoLookupControlComponents, IAutoLookupControlComponents } from "xrm-mock/controls/autolookupcontrol/autolookupcontrol.mock";
    export class NumberControlMock extends AutoLookupControlMock<NumberControlMock, NumberAttributeMock, number> implements Xrm.Controls.NumberControl {
        private static defaultComponents;
        constructor(components: INumberControlComponents);
    }
    export interface INumberControlComponents extends IAutoLookupControlComponents<NumberControlMock, NumberAttributeMock, number>, IAttNumberControlComponents {
        name: string;
    }
    export interface IAttNumberControlComponents extends IAttAutoLookupControlComponents<NumberControlMock, NumberAttributeMock, number> {
    }
}
declare module "xrm-mock/attributes/numberattribute/numberattribute.mock" {
    import { NumberControlMock } from "xrm-mock/controls/numbercontrol/numbercontrol.mock";
    import { AttributeMock, IAttributeComponents } from "xrm-mock/attributes/attribute/attribute.mock";
    export class NumberAttributeMock extends AttributeMock<NumberControlMock, NumberAttributeMock, number> implements Xrm.Attributes.NumberAttribute {
        private static defaultComponents;
        min: number;
        max: number;
        precision: number;
        constructor(components: INumberAttributeComponents);
        getFormat(): Xrm.Attributes.IntegerAttributeFormat;
        getMax(): number;
        getMin(): number;
        getPrecision(): number;
        setPrecision(value: number): void;
        setValue(value: number): void;
        private validatePrecision;
    }
    export interface INumberAttributeComponents extends IAttributeComponents<NumberControlMock, NumberAttributeMock, number> {
        min?: number;
        max?: number;
        precision?: number;
        format?: Xrm.Attributes.IntegerAttributeFormat;
    }
}
declare module "xrm-mock/utility/openparameters/openparameters.mock" {
    export class OpenParametersMock implements Xrm.Utility.OpenParameters {
        [index: string]: string | undefined;
    }
}
declare module "xrm-mock/navigation/openwebresourceoptions/openwebresourceoptions.mock" {
    import { DialogSizeOptionsMock } from "xrm-mock/navigation/dialogsizeoptions/dialogsizeoptions.mock";
    export class OpenWebresourceOptionsMock extends DialogSizeOptionsMock implements Xrm.Navigation.OpenWebresourceOptions {
        openInNewWindow: boolean;
        constructor(openInNewWindow: boolean, height: number, width: number);
    }
}
declare module "xrm-mock/optionsetvalue/optionsetvalue.mock" {
    export class OptionSetValueMock implements Xrm.OptionSetValue {
        text: string;
        value: number;
        constructor(text: string, value: number);
    }
}
declare module "xrm-mock/controls/optionsetcontrol/optionsetcontrol.mock" {
    import { OptionSetAttributeMock } from "xrm-mock/attributes/optionsetattribute/optionsetattribute.mock";
    import { OptionSetValueMock } from "xrm-mock/optionsetvalue/optionsetvalue.mock";
    import { IAttStandardControlComponents, IStandardControlComponents, StandardControlMock } from "xrm-mock/controls/standardcontrol/standardcontrol.mock";
    export class OptionSetControlMock extends StandardControlMock<OptionSetControlMock, OptionSetAttributeMock, number> implements Xrm.Controls.OptionSetControl {
        private static defaultComponents;
        options: OptionSetValueMock[];
        constructor(components: IOptionSetControlComponents);
        addOption(option: Xrm.OptionSetValue, index?: number): void;
        clearOptions(): void;
        removeOption(value: number): void;
        getOptions(): Xrm.OptionSetValue[];
    }
    export interface IOptionSetControlComponents extends IStandardControlComponents<OptionSetControlMock, OptionSetAttributeMock, number>, IAttOptionSetControlComponents {
        name: string;
    }
    export interface IAttOptionSetControlComponents extends IAttStandardControlComponents<OptionSetControlMock, OptionSetAttributeMock, number> {
        options?: Xrm.OptionSetValue[];
    }
}
declare module "xrm-mock/attributes/optionsetattribute/optionsetattribute.mock" {
    import { OptionSetControlMock } from "xrm-mock/controls/optionsetcontrol/optionsetcontrol.mock";
    import { OptionSetValueMock } from "xrm-mock/optionsetvalue/optionsetvalue.mock";
    import { EnumAttributeMock, IEnumAttributeComponents } from "xrm-mock/attributes/enumattribute/enumattribute.mock";
    export class OptionSetAttributeMock extends EnumAttributeMock<OptionSetControlMock, OptionSetAttributeMock, number> implements Xrm.Attributes.OptionSetAttribute {
        static create(name: string, value?: number): OptionSetAttributeMock;
        private static defaultComponents;
        options: OptionSetValueMock[];
        selectedOption: OptionSetValueMock;
        constructor(components: IOptionSetAttributeComponents);
        getFormat(): Xrm.Attributes.OptionSetAttributeFormat;
        getOption(param: number | string): Xrm.OptionSetValue;
        getOptions(): Xrm.OptionSetValue[];
        getSelectedOption(): Xrm.OptionSetValue;
        getText(): string;
        setValue(value: number): void;
    }
    export interface IOptionSetAttributeComponents extends IEnumAttributeComponents<OptionSetControlMock, OptionSetAttributeMock, number> {
        format?: Xrm.Attributes.OptionSetAttributeFormat;
        options?: Xrm.OptionSetValue[];
        selectedOption?: Xrm.OptionSetValue;
    }
}
declare module "xrm-mock/metadata/optionmetadata/optionmetadata.mock" {
    export class OptionMetadataMock implements Xrm.Metadata.OptionMetadata {
        Value: number;
        Color: string;
        IsManaged: boolean;
        ExternalValue: any;
        MetadataId: string;
        HasChanged: boolean;
        State: number;
        TransitionData: any;
        Label: Xrm.Metadata.Label;
        Description: Xrm.Metadata.Label;
        constructor(components: IOptionMetadataComponents);
    }
    export interface IOptionMetadataComponents {
        Value?: number;
        Color?: string;
        IsManaged?: boolean;
        ExternalValue?: any;
        MetadataId?: string;
        HasChanged?: boolean;
        State?: number;
        TransitionData?: any;
        Label?: Xrm.Metadata.Label;
        Description?: Xrm.Metadata.Label;
    }
}
declare module "xrm-mock/organizationsettings/organizationsettings.mock" {
    export class OrganizationSettingsMock implements Xrm.OrganizationSettings {
        baseCurrencyId: string;
        defaultCountryCode: string;
        isAutoSaveEnabled: boolean;
        languageId: number;
        organizationId: string;
        uniqueName: string;
        useSkypeProtocol: boolean;
        baseCurrency: Xrm.LookupValue;
        attributes: any;
        organizationGeo: string;
        constructor(components: IOrganizationSettingsComponents);
    }
    export interface IOrganizationSettingsComponents {
        baseCurrencyId?: string;
        defaultCountryCode?: string;
        isAutoSaveEnabled?: boolean;
        languageId?: number;
        organizationId?: string;
        uniqueName?: string;
        useSkypeProtocol?: boolean;
        baseCurrency?: Xrm.LookupValue;
        attributes?: any;
    }
}
declare module "xrm-mock/page/page.mock" {
    export class PageMock implements Xrm.FormContext {
        context: Xrm.GlobalContext;
        data: Xrm.Data;
        ui: Xrm.Ui;
        constructor(context: Xrm.GlobalContext, formContext: Xrm.FormContext);
        getAttribute<T extends Xrm.Attributes.Attribute>(attributeNameOrIndex: number | string): T | null;
        getAttribute<T extends Xrm.Attributes.Attribute>(delegateFunction?: Xrm.Collection.MatchingDelegate<T>): T[];
        getControl<T extends Xrm.Controls.Control>(controlNameOrIndex: string | number): T | null;
        getControl<T extends Xrm.Controls.Control>(delegateFunction?: Xrm.Collection.MatchingDelegate<Xrm.Controls.Control>): T[];
    }
}
declare module "xrm-mock/panel/panel.mock" {
    export class PanelMock implements Xrm.Panel {
        loadPanel(url: string, title: string): void;
    }
}
declare module "xrm-mock/device/pickfileoptions/pickfileoptions.mock" {
    export class PickFileOptionsMock implements Xrm.Device.PickFileOptions {
        accept: Xrm.Device.PickFileTypes;
        allowMultipleFiles: boolean;
        maximumAllowedFileSize: number;
        constructor(accept: Xrm.Device.PickFileTypes, allowMultipleFiles: boolean, maximumAllowedFileSize: number);
    }
}
declare module "xrm-mock/privilege/privilege.mock" {
    export class PrivilegeMock implements Xrm.Privilege {
        canRead: boolean;
        canUpdate: boolean;
        canCreate: boolean;
        constructor(canRead: boolean, canUpdate: boolean, canCreate: boolean);
    }
}
declare module "xrm-mock/controls/processcontrol/processcontrol.mock" {
    export class ProcessControlMock implements Xrm.Controls.ProcessControl {
        private displayState;
        private getVisibleElement;
        private setVisibleElement;
        constructor(displayState: Xrm.DisplayState, getVisibleElement: Xrm.Controls.UiCanGetVisibleElement, setVisibleElement: Xrm.Controls.UiCanSetVisibleElement);
        getVisible(): boolean;
        setVisible(visible: boolean): void;
        setDisplayState(displayState: Xrm.DisplayState): void;
        getDisplayState(): Xrm.DisplayState;
        reflow(updateUI: boolean, parentStage: string, nextStage: string): void;
    }
}
declare module "xrm-mock/processflow/processdictionary/processdictionary.mock" {
    export class ProcessDictionaryMock implements Xrm.ProcessFlow.ProcessDictionary {
        [index: string]: string;
        constructor(index: any);
    }
}
declare module "xrm-mock/processflow/stage/stage.mock" {
    export class StageMock implements Xrm.ProcessFlow.Stage {
        id: string;
        name: string;
        status: Xrm.ProcessFlow.StageStatus;
        category: XrmEnum.StageCategory;
        steps: Xrm.ProcessFlow.Step[];
        constructor(id: string, name: string, status: Xrm.ProcessFlow.StageStatus, category?: XrmEnum.StageCategory, steps?: Xrm.ProcessFlow.Step[]);
        getCategory(): {
            getValue(): XrmEnum.StageCategory;
        };
        getEntityName(): string;
        getId(): string;
        getName(): string;
        getStatus(): Xrm.ProcessFlow.StageStatus;
        getSteps(): Xrm.ProcessFlow.Step[];
        _setStatus(status: Xrm.ProcessFlow.StageStatus): void;
        getNavigationBehavior(): any;
    }
}
declare module "xrm-mock/processflow/processmanager/processmanager.mock" {
    import { StageMock } from "xrm-mock/processflow/stage/stage.mock";
    export class ProcessManagerMock implements Xrm.ProcessFlow.ProcessManager {
        enabledProcesses: Xrm.Page.Process[] | Xrm.ProcessFlow.ProcessDictionary;
        constructor(enabledProcesses: Xrm.ProcessFlow.Process[]);
        addOnPreProcessStatusChange(handler: Xrm.Events.ProcessStatusChangeHandler): void;
        addOnPreStageChange(handler: Xrm.Events.StageChangeEventHandler): void;
        removeOnPreProcessStatusChange(handler: Xrm.Events.ProcessStatusChangeHandler): void;
        removeOnPreStageChange(handler: Xrm.Events.StageChangeEventHandler): void;
        getActiveProcess(): Xrm.ProcessFlow.Process;
        setActiveProcess(processId: string, callbackFunction?: Xrm.ProcessFlow.ProcessCallbackDelegate): void;
        setActiveProcessInstance(processInstanceId: string, callbackFunction: Xrm.ProcessFlow.SetProcessInstanceDelegate): void;
        getProcessInstances(callbackFunction: Xrm.ProcessFlow.GetProcessInstancesDelegate): void;
        addOnProcessStatusChange(handler: Xrm.Events.ProcessStatusChangeHandler): void;
        removeOnProcessStatusChange(handler: Xrm.Events.ProcessStatusChangeHandler): void;
        getInstanceId(): string;
        getInstanceName(): string;
        getStatus(): Xrm.ProcessFlow.ProcessStatus;
        setStatus(status: Xrm.ProcessFlow.ProcessStatus, callbackFunction: Xrm.ProcessFlow.ProcessSetStatusDelegate): void;
        getActiveStage(): StageMock | Xrm.ProcessFlow.Stage;
        setActiveStage(stageId: string, callbackFunction?: Xrm.ProcessFlow.ProcessCallbackDelegate): void;
        getActivePath(): Xrm.Collection.ItemCollection<Xrm.ProcessFlow.Stage>;
        getEnabledProcesses(callbackFunction: (enabledProcesses: Xrm.ProcessFlow.ProcessDictionary) => void): void;
        getSelectedStage(): Xrm.ProcessFlow.Stage;
        addOnStageChange(handler: Xrm.Events.StageChangeEventHandler): void;
        addOnStageSelected(handler: Xrm.Events.ContextSensitiveHandler): void;
        removeOnStageChange(handler: Xrm.Events.StageChangeEventHandler): void;
        removeOnStageSelected(handler: Xrm.Events.StageChangeEventHandler): void;
        moveNext(callbackFunction?: Xrm.ProcessFlow.ProcessCallbackDelegate): void;
        movePrevious(callbackFunction?: Xrm.ProcessFlow.ProcessCallbackDelegate): void;
    }
}
declare module "xrm-mock/processflow/process/process.mock" {
    export class ProcessMock implements Xrm.ProcessFlow.Process {
        id: string;
        name: string;
        stages: Xrm.Collection.ItemCollection<Xrm.ProcessFlow.Stage>;
        status: Xrm.ProcessFlow.ProcessStatus;
        rendered: boolean;
        constructor(components: IProcessComponents);
        getStatus(): Xrm.ProcessFlow.ProcessStatus;
        getId(): string;
        getName(): string;
        getStages(): Xrm.Collection.ItemCollection<Xrm.ProcessFlow.Stage>;
        isRendered(): boolean;
    }
    export interface IProcessComponents {
        id?: string;
        name?: string;
        stages?: Xrm.Collection.ItemCollection<Xrm.ProcessFlow.Stage>;
        status?: Xrm.ProcessFlow.ProcessStatus;
        rendered?: boolean;
    }
}
declare module "xrm-mock/navigation/relationship/relationship.mock" {
    export class RelationshipMock implements Xrm.Navigation.Relationship {
        attributeName: string;
        name: string;
        navigationPropertyName?: string;
        relationshipType?: XrmEnum.RelationshipType;
        roleType?: XrmEnum.RoleType;
        constructor(components: IRelationshipComponents);
    }
    export interface IRelationshipComponents {
        attributeName: string;
        name: string;
        navigationPropertyName?: string;
        relationshipType?: XrmEnum.RelationshipType;
        roleType?: XrmEnum.RoleType;
    }
}
declare module "xrm-mock/url/reportopenparameters/reportopenparameters.mock" {
    export class ReportOpenParametersMock implements Xrm.Url.ReportOpenParameters {
        action: Xrm.Url.ReportAction;
        helpID?: string;
        id: string;
        constructor(action: Xrm.Url.ReportAction, id: string, helpID?: string);
    }
}
declare module "xrm-mock/retrievemultiplerequest/retrievemultiplerequest.mock" {
    export class RetrieveMultipleRequestMock implements Xrm.RetrieveMultipleResult {
        entities: any[];
        nextLink: string;
        constructor(entities: any[], nextLink: string);
    }
}
declare module "xrm-mock/saveoptions/saveoptions.mock" {
    export class SaveOptionsMock implements Xrm.SaveOptions {
        UseSchedulingEngine?: boolean;
        saveMode: XrmEnum.SaveMode;
        constructor(UseSchedulingEngine?: boolean);
    }
}
declare module "xrm-mock/events/stagechangeeventarguments/stagechangeeventarguments.mock" {
    export class StageChangeEventArgumentsMock implements Xrm.Events.StageChangeEventArguments {
        preventDefault(): void;
        getDirection(): Xrm.ProcessFlow.StageChangeDirection;
        getStage(): Xrm.ProcessFlow.Stage;
    }
}
declare module "xrm-mock/events/stagechangeeventcontext/stagechangeeventcontext.mock" {
    export class StageChangeEventContextMock implements Xrm.Events.StageChangeEventContext {
        private eventContext;
        constructor(eventContext: Xrm.Events.EventContext);
        getContext(): Xrm.GlobalContext;
        getDepth(): number;
        getEventSource(): Xrm.Attributes.Attribute | Xrm.Controls.Control | Xrm.Entity;
        getFormContext(): Xrm.FormContext;
        getSharedVariable<T>(key: string): T;
        setSharedVariable<T>(key: string, value: T): void;
        getEventArgs(): Xrm.Events.StageChangeEventArguments;
    }
}
declare module "xrm-mock/events/stageselectedeventarguments/stageselectedeventarguments.mock" {
    export class StageSelectedEventArgumentsMock implements Xrm.Events.StageSelectedEventArguments {
        getStage(): Xrm.ProcessFlow.Stage;
    }
}
declare module "xrm-mock/events/stageselectedeventcontext/stageselectedeventcontext.mock" {
    export class StageSelectedEventContextMock implements Xrm.Events.StageSelectedEventContext {
        private eventContext;
        constructor(eventContext: Xrm.Events.EventContext);
        getContext(): Xrm.GlobalContext;
        getDepth(): number;
        getEventSource(): Xrm.Attributes.Attribute | Xrm.Controls.Control | Xrm.Entity;
        getFormContext(): Xrm.FormContext;
        getSharedVariable<T>(key: string): T;
        setSharedVariable<T>(key: string, value: T): void;
        getEventArgs(): Xrm.Events.StageChangeEventArguments;
    }
}
declare module "xrm-mock/processflow/step/step.mock" {
    export class StepMock implements Xrm.ProcessFlow.Step {
        required: boolean;
        name: string;
        attribute: string;
        constructor(name: string, attribute: string, required: boolean);
        getAttribute(): string;
        getName(): string;
        isRequired(): boolean;
        getProgress(): number;
        setProgress(stepProgress: number, message: string): string;
    }
}
declare module "xrm-mock/controls/stringcontrol/stringcontrol.mock" {
    import { StringAttributeMock } from "xrm-mock/attributes/stringattribute/stringattribute.mock";
    import { AutoLookupControlMock, IAttAutoLookupControlComponents, IAutoLookupControlComponents } from "xrm-mock/controls/autolookupcontrol/autolookupcontrol.mock";
    export class StringControlMock extends AutoLookupControlMock<StringControlMock, StringAttributeMock, string> implements Xrm.Controls.StringControl {
        constructor(components: IStringControlComponents);
    }
    export interface IStringControlComponents extends IAttStringControlComponents, IAutoLookupControlComponents<StringControlMock, StringAttributeMock, string> {
        name: string;
    }
    export interface IAttStringControlComponents extends IAttAutoLookupControlComponents<StringControlMock, StringAttributeMock, string> {
    }
}
declare module "xrm-mock/attributes/stringattribute/stringattribute.mock" {
    import { StringControlMock } from "xrm-mock/controls/stringcontrol/stringcontrol.mock";
    import { AttributeMock, IAttributeComponents } from "xrm-mock/attributes/attribute/attribute.mock";
    export class StringAttributeMock extends AttributeMock<StringControlMock, StringAttributeMock, string> implements Xrm.Attributes.StringAttribute {
        static create(name: string, value?: string): StringAttributeMock;
        private static defaultComponents;
        maxLength: number;
        constructor(components: IStringAttributeComponents);
        getFormat(): Xrm.Attributes.StringAttributeFormat;
        getMaxLength(): number;
        setValue(value: string): void;
    }
    export interface IStringAttributeComponents extends IAttributeComponents<StringControlMock, StringAttributeMock, string> {
        format?: Xrm.Attributes.StringAttributeFormat;
        maxLength?: number;
    }
}
declare module "xrm-mock/controls/timelinewall/timelinewall.mock" {
    import { ControlMock } from "xrm-mock/controls/control/control.mock";
    export class TimelineWallMock extends ControlMock implements Xrm.Controls.TimelineWall {
        refresh(): void;
        getDisabled(): boolean;
        setDisabled(value: boolean): void;
        setFocus(): void;
        setVisible(visible: boolean): void;
    }
}
declare module "xrm-mock/usersettings/usersettings.mock" {
    export class UserSettingsMock implements Xrm.UserSettings {
        dateFormattingInfo: Xrm.DateFormattingInfo;
        defaultDashboardId: string;
        isGuidedHelpEnabled: boolean;
        isHighContrastEnabled: boolean;
        isRTL: boolean;
        languageId: number;
        securityRolePrivileges: string[];
        securityRoles: string[];
        transactionCurrencyId: string;
        userId: string;
        userName: string;
        roles: Xrm.Collection.ItemCollection<Xrm.LookupValue>;
        transactionCurrency: Xrm.LookupValue;
        constructor(components: IUserSettingsComponents);
        getTimeZoneOffsetMinutes(): number;
    }
    export interface IUserSettingsComponents {
        dateFormattingInfo?: Xrm.DateFormattingInfo;
        defaultDashboardId?: string;
        isGuidedHelpEnabled: boolean;
        isHighContrastEnabled: boolean;
        isRTL: boolean;
        languageId?: number;
        securityRolePrivileges?: string[];
        securityRoles?: string[];
        transactionCurrencyId?: string;
        userId: string;
        userName: string;
        roles?: Xrm.Collection.ItemCollection<Xrm.LookupValue>;
        transactionCurrency?: Xrm.LookupValue;
    }
}
declare module "xrm-mock/controls/viewselector/viewselector.mock" {
    export class ViewSelectorMock implements Xrm.Controls.ViewSelector {
        private visible;
        private currentView;
        constructor(isVisible: boolean);
        getCurrentView(): Xrm.LookupValue;
        setCurrentView(viewSelectorItem: Xrm.LookupValue): void;
        isVisible(): boolean;
    }
}
declare module "xrm-mock/controls/viewselectoritem/viewselectoritem.mock" {
    export class ViewSelectorItemMock implements Xrm.Controls.ViewSelectorItem {
        private reference;
        constructor(reference: Xrm.LookupValue);
        getEntityReference(): Xrm.LookupValue;
    }
}
declare module "xrm-mock/webapi/webapi.mock" {
    export class WebApiMock implements Xrm.WebApi {
        online: Xrm.WebApiOnline;
        offline: Xrm.WebApiOffline;
        private clientContext;
        private isOffline;
        constructor(clientContext: Xrm.ClientContext, online: Xrm.WebApiOnline, offline: Xrm.WebApiOffline);
        createRecord(entityLogicalName: string, record: any): Xrm.Async.PromiseLike<Xrm.CreateResponse>;
        deleteRecord(entityLogicalName: string, id: string): Xrm.Async.PromiseLike<string>;
        retrieveRecord(entityLogicalName: string, id: string, options: string): Xrm.Async.PromiseLike<any>;
        retrieveMultipleRecords(entityLogicalName: string, options?: string, maxPageSize?: number): Xrm.Async.PromiseLike<Xrm.RetrieveMultipleResult>;
        updateRecord(entityLogicalName: string, id: string, data: any): Xrm.Async.PromiseLike<any>;
        isAvailableOffline(entityLogicalName: string): boolean;
    }
}
declare module "xrm-mock/webapioffline/webapioffline.mock" {
    export class WebApiOfflineMock implements Xrm.WebApiOffline {
        private notImplementedError;
        createRecord(entityLogicalName: string, record: any): Xrm.Async.PromiseLike<Xrm.CreateResponse>;
        deleteRecord(entityLogicalName: string, id: string): Xrm.Async.PromiseLike<string>;
        retrieveRecord(entityLogicalName: string, id: string, options: string): Xrm.Async.PromiseLike<any>;
        retrieveMultipleRecords(entityLogicalName: string, options?: string, maxPageSize?: number): Xrm.Async.PromiseLike<Xrm.RetrieveMultipleResult>;
        updateRecord(entityLogicalName: string, id: string, data: any): Xrm.Async.PromiseLike<any>;
    }
}
declare module "xrm-mock/webapionline/webapionline.mock" {
    export class WebApiOnlineMock implements Xrm.WebApiOnline {
        private offline;
        private notImplementedError;
        constructor(offlineCapabilities: Xrm.WebApiOffline);
        execute(request: any): Xrm.Async.PromiseLike<Xrm.ExecuteResponse>;
        executeMultiple(request: any[]): Xrm.Async.PromiseLike<Xrm.ExecuteResponse[]>;
        createRecord(entityLogicalName: string, record: any): Xrm.Async.PromiseLike<Xrm.CreateResponse>;
        deleteRecord(entityLogicalName: string, id: string): Xrm.Async.PromiseLike<string>;
        retrieveRecord(entityLogicalName: string, id: string, options: string): Xrm.Async.PromiseLike<any>;
        retrieveMultipleRecords(entityLogicalName: string, options?: string, maxPageSize?: number): Xrm.Async.PromiseLike<Xrm.RetrieveMultipleResult>;
        updateRecord(entityLogicalName: string, id: string, data: any): Xrm.Async.PromiseLike<any>;
    }
}
declare module "xrm-mock/xrmstatic.mock" {
    import { AppMock } from "xrm-mock/app/app.mock";
    import { NavigationStaticMock } from "xrm-mock/navigation/navigation.mock";
    import { PageMock } from "xrm-mock/page/page.mock";
    import { UtilityMock } from "xrm-mock/utility/utility.mock";
    export class XrmStaticMock implements Xrm.XrmStatic {
        Device: Xrm.Device;
        Encoding: Xrm.Encoding;
        Mobile: Xrm.Mobile;
        Navigation: NavigationStaticMock;
        Page: PageMock;
        Panel: Xrm.Panel;
        Utility: UtilityMock;
        WebApi: Xrm.WebApi;
        App: AppMock;
        constructor(components: IXrmStaticComponents);
    }
    export interface IXrmStaticComponents {
        device?: Xrm.Device;
        encoding?: Xrm.Encoding;
        mobile?: Xrm.Mobile;
        navigation?: NavigationStaticMock;
        page?: PageMock;
        panel?: Xrm.Panel;
        utility?: UtilityMock;
        webApi?: Xrm.WebApi;
        app?: AppMock;
    }
}
declare module "xrm-mock/window.mock" {
    import { XrmStaticMock } from "xrm-mock/xrmstatic.mock";
    export class WindowMock {
        Xrm: XrmStaticMock;
        constructor(xrm: XrmStaticMock);
        GetGlobalContext(): Xrm.GlobalContext;
    }
}
declare module "xrm-mock/controls/iframecontrol/iframecontrol.mock" {
    import { ControlMock } from "xrm-mock/controls/control/control.mock";
    export class IframeControlMock extends ControlMock implements Xrm.Controls.IframeControl {
        setVisible(visible: boolean): void;
        getObject(): any;
        getContentWindow(): Promise<Window>;
        getSrc(): string;
        setSrc(src: string): void;
        getInitialUrl(): string;
        getDisabled(): boolean;
        setDisabled(value: boolean): void;
        setFocus(): void;
    }
}
declare module "xrm-mock/controls/quickform/quickform.mock" {
    import { ControlMock } from "xrm-mock/controls/control/control.mock";
    export class QuickFormControlMock extends ControlMock implements Xrm.Controls.QuickFormControl {
        getControlType(): "quickform";
        getControl(): any;
        isLoaded(): boolean;
        refresh(): void;
        setFocus(): void;
        getDisabled(): boolean;
        setDisabled(disabled: boolean): void;
        setVisible(visible: boolean): void;
    }
}
declare module "xrm-mock/controls/kbsearchcontrol/kbsearchcontrol.mock" {
    import { ControlMock } from "xrm-mock/controls/control/control.mock";
    export class KbSearchControlMock extends ControlMock {
        addOnPostSearch(handler: Xrm.Events.ContextSensitiveHandler): void;
        addOnResultOpened(handler: Xrm.Events.ContextSensitiveHandler): void;
        addOnSelection(handler: Xrm.Events.ContextSensitiveHandler): void;
        getDisabled(): boolean;
        getSearchQuery(): string;
        getSelectedResults(): any;
        getTotalResultCount(): number;
        openSearchResult(resultNumber: number, mode: string): boolean;
        removeOnPostSearch(handler: () => void): void;
        removeOnResultOpened(handler: () => void): void;
        removeOnSelection(handler: () => void): void;
        setFocus(): void;
        setSearchQuery(searchString: string): void;
        setVisible(visible: boolean): void;
        setDisabled(value: boolean): void;
    }
}
declare module "xrm-mock/controls/timercontrol/timercontrol.mock" {
    import { ControlMock } from "xrm-mock/controls/control/control.mock";
    export class TimerControlMock extends ControlMock {
        getState(): number;
        refresh(): void;
        getDisabled(): boolean;
        setDisabled(value: boolean): void;
        setFocus(): void;
        setVisible(visible: boolean): void;
    }
}
declare module "xrm-mock/index" {
    export { IAddControlNotificationOptionsComponents, AddControlNotificationOptionsMock } from "xrm-mock/controls/addcontrolnotificationoptions/addcontrolnotificationoptions.mock";
    export { AlertStringsMock } from "xrm-mock/navigation/alertstrings/alertstrings.mock";
    export { IAppPropertiesComponents, AppPropertiesMock } from "xrm-mock/appproperties/appproperties.mock";
    export { IAttributeMetadataComponents, AttributeMetadataMock } from "xrm-mock/metadata/attributemetadata/attributemetadata.mock";
    export { AttributeReturnType, AttributeMock, IAttributeComponents } from "xrm-mock/attributes/attribute/attribute.mock";
    export { AutoCompleteCommandMock } from "xrm-mock/controls/autocompletecommand/autocompletecommand.mock";
    export { AutoCompleteResultMock } from "xrm-mock/controls/autocompleteresult/autocompleteresult.mock";
    export { AutoCompleteResultSetMock } from "xrm-mock/controls/autocompleteresultset/autocompleteresultset.mock";
    export { AutoLookupControlMock, IAttAutoLookupControlComponents, IAutoLookupControlComponents } from "xrm-mock/controls/autolookupcontrol/autolookupcontrol.mock";
    export { IBooleanAttributeComponents, BooleanAttributeMock } from "xrm-mock/attributes/booleanattribute/booleanattribute.mock";
    export { IAttBooleanControlComponents, IBooleanControlComponents, BooleanControlMock } from "xrm-mock/controls/booleancontrol/booleancontrol.mock";
    export { ICalendarComponents, CalendarMock } from "xrm-mock/calendar/calendar.mock";
    export { CaptureFileResponseMock } from "xrm-mock/device/capturefileresponse/capturefileresponse.mock";
    export { ICaptureImageOptionsComponents, CaptureImageOptionsMock } from "xrm-mock/device/captureimageoptions/captureimageoptions.mock";
    export { ClientContextMock } from "xrm-mock/clientcontext/clientcontext.mock";
    export { ConfirmResultMock } from "xrm-mock/navigation/confirmresult/confirmresult.mock";
    export { IConfirmStringsComponents, ConfirmStringsMock } from "xrm-mock/navigation/confirmstrings/confirmstrings.mock";
    export { ContextMock, IContextComponents } from "xrm-mock/globalcontext/context.mock";
    export { ControlMock, IAttControlComponents, IControlComponents } from "xrm-mock/controls/control/control.mock";
    export { ControlNotificationActionMock } from "xrm-mock/controls/controlnotificationaction/controlnotificationaction.mock";
    export { DataMock } from "xrm-mock/data/data.mock";
    export { DateAttributeMock, IDateAttributeComponents } from "xrm-mock/attributes/dateattribute/dateattribute.mock";
    export { DateControlMock, IAttDateControlComponents, IDateControlComponents } from "xrm-mock/controls/datecontrol/datecontrol.mock";
    export { IDateFormattingInfoComponents, DateFormattingInfoMock } from "xrm-mock/dateformattinginfo/dateformattinginfo.mock";
    export { DeviceMock } from "xrm-mock/device/device.mock";
    export { DialogSizeOptionsMock } from "xrm-mock/navigation/dialogsizeoptions/dialogsizeoptions.mock";
    export { EncodingMock } from "xrm-mock/encoding/encoding.mock";
    export { IEntityFormOptionsComponents, EntityFormOptionsMock } from "xrm-mock/navigation/entityformoptions/entityformoptions.mock";
    export { IEntityMetadataComponents, EntityMetadataMock } from "xrm-mock/metadata/entitymetadata/entitymetadata.mock";
    export { EntityMock, IEntityComponents } from "xrm-mock/entity/entity.mock";
    export { EnumAttributeMock } from "xrm-mock/attributes/enumattribute/enumattribute.mock";
    export { ErrorDialogOptionsMock } from "xrm-mock/navigation/errordialogoptions/errordialogoptions.mock";
    export { ErrorResponseMock } from "xrm-mock/errorresponse/errorresponse.mock";
    export { EventContextMock } from "xrm-mock/events/eventcontext/eventcontext.mock";
    export { IExecuteResponseComponents, ExecuteResponseMock } from "xrm-mock/executeresponse/executeresponse.mock";
    export { FileDetailsMock } from "xrm-mock/navigation/filedetails/filedetails.mock";
    export { FormContextMock } from "xrm-mock/formcontext/formcontext.mock";
    export { FormItemMock, IFormItemComponents } from "xrm-mock/controls/formitem/formitem.mock";
    export { FormOpenParametersMock } from "xrm-mock/utility/formopenparameters/formopenparameters.mock";
    export { FormSelectorMock } from "xrm-mock/controls/formselector/formselector.mock";
    export { GetCurrentPositionResponseMock } from "xrm-mock/device/getcurrentpositionresponse/getcurrentpositionresponse.mock";
    export { GridControlMock, IAttGridControlComponents, IGridControlComponents } from "xrm-mock/controls/gridcontrol/gridcontrol.mock";
    export { GridEntityMock } from "xrm-mock/controls/grid/gridentity/gridentity.mock";
    export { GridMock } from "xrm-mock/controls/grid/grid.mock";
    export { GridRowMock } from "xrm-mock/controls/grid/gridrow/gridrow.mock";
    export { GridRowDataMock } from "xrm-mock/controls/grid/gridrowdata/gridrowdata.mock";
    export { ItemCollectionMock } from "xrm-mock/collection/itemcollection/itemcollection.mock";
    export { LabelMock } from "xrm-mock/metadata/label/label.mock";
    export { LocalizedLabelMock } from "xrm-mock/metadata/localizedlabel/localizedlabel.mock";
    export { ILookupAttributeComponents, LookupAttributeMock } from "xrm-mock/attributes/lookupattribute/lookupattribute.mock";
    export { IAttLookupControlComponents, ILookupControlComponents, ILookupFilter, ILookupView, LookupControlMock } from "xrm-mock/controls/lookupcontrol/lookupcontrol.mock";
    export { ILookupOptionsComponents, LookupOptionsMock } from "xrm-mock/lookupoptions/lookupoptions.mock";
    export { LookupValueMock } from "xrm-mock/lookupvalue/lookupvalue.mock";
    export { NavigationMock } from "xrm-mock/controls/navigation/navigation.mock";
    export { NavigationItemMock } from "xrm-mock/controls/navigationitem/navigationitem.mock";
    export { NavigationStaticMock } from "xrm-mock/navigation/navigation.mock";
    export { INumberAttributeComponents, NumberAttributeMock } from "xrm-mock/attributes/numberattribute/numberattribute.mock";
    export { IAttNumberControlComponents, INumberControlComponents, NumberControlMock } from "xrm-mock/controls/numbercontrol/numbercontrol.mock";
    export { OpenParametersMock } from "xrm-mock/utility/openparameters/openparameters.mock";
    export { OpenWebresourceOptionsMock } from "xrm-mock/navigation/openwebresourceoptions/openwebresourceoptions.mock";
    export { IOptionSetAttributeComponents, OptionSetAttributeMock } from "xrm-mock/attributes/optionsetattribute/optionsetattribute.mock";
    export { IAttOptionSetControlComponents, IOptionSetControlComponents, OptionSetControlMock } from "xrm-mock/controls/optionsetcontrol/optionsetcontrol.mock";
    export { IOptionMetadataComponents, OptionMetadataMock } from "xrm-mock/metadata/optionmetadata/optionmetadata.mock";
    export { OptionSetValueMock } from "xrm-mock/optionsetvalue/optionsetvalue.mock";
    export { IOrganizationSettingsComponents, OrganizationSettingsMock } from "xrm-mock/organizationsettings/organizationsettings.mock";
    export { PageMock } from "xrm-mock/page/page.mock";
    export { PanelMock } from "xrm-mock/panel/panel.mock";
    export { PickFileOptionsMock } from "xrm-mock/device/pickfileoptions/pickfileoptions.mock";
    export { PrivilegeMock } from "xrm-mock/privilege/privilege.mock";
    export { ProcessControlMock } from "xrm-mock/controls/processcontrol/processcontrol.mock";
    export { ProcessDictionaryMock } from "xrm-mock/processflow/processdictionary/processdictionary.mock";
    export { ProcessManagerMock } from "xrm-mock/processflow/processmanager/processmanager.mock";
    export { ProcessMock, IProcessComponents } from "xrm-mock/processflow/process/process.mock";
    export { IRelationshipComponents, RelationshipMock } from "xrm-mock/navigation/relationship/relationship.mock";
    export { ReportOpenParametersMock } from "xrm-mock/url/reportopenparameters/reportopenparameters.mock";
    export { RetrieveMultipleRequestMock } from "xrm-mock/retrievemultiplerequest/retrievemultiplerequest.mock";
    export { SaveEventArgumentsMock } from "xrm-mock/events/saveeventarguments/saveeventarguments.mock";
    export { SaveEventContextMock } from "xrm-mock/events/saveeventcontext/saveeventcontext.mock";
    export { SaveOptionsMock } from "xrm-mock/saveoptions/saveoptions.mock";
    export { SectionMock } from "xrm-mock/controls/section/section.mock";
    export { StageChangeEventArgumentsMock } from "xrm-mock/events/stagechangeeventarguments/stagechangeeventarguments.mock";
    export { StageChangeEventContextMock } from "xrm-mock/events/stagechangeeventcontext/stagechangeeventcontext.mock";
    export { StageMock } from "xrm-mock/processflow/stage/stage.mock";
    export { StageSelectedEventArgumentsMock } from "xrm-mock/events/stageselectedeventarguments/stageselectedeventarguments.mock";
    export { StageSelectedEventContextMock } from "xrm-mock/events/stageselectedeventcontext/stageselectedeventcontext.mock";
    export { IAttStandardControlComponents, IStandardControlComponents, StandardControlMock } from "xrm-mock/controls/standardcontrol/standardcontrol.mock";
    export { StepMock } from "xrm-mock/processflow/step/step.mock";
    export { IStringAttributeComponents, StringAttributeMock } from "xrm-mock/attributes/stringattribute/stringattribute.mock";
    export { IAttStringControlComponents, IStringControlComponents, StringControlMock } from "xrm-mock/controls/stringcontrol/stringcontrol.mock";
    export { TabMock } from "xrm-mock/controls/tab/tab.mock";
    export { TimelineWallMock } from "xrm-mock/controls/timelinewall/timelinewall.mock";
    export { UiCanGetVisibleElementMock } from "xrm-mock/controls/uicangetvisibleelement/uicangetvisibleelement.mock";
    export { UiFocusableMock } from "xrm-mock/controls/uifocusable/uifocusable.mock";
    export { UiKeyPressableMock } from "xrm-mock/controls/uikeypressable/uikeypressable.mock";
    export { UiLabelElementMock } from "xrm-mock/controls/uilabelelement/uilabelelement.mock";
    export { UiMock, IUiComponents } from "xrm-mock/ui/ui.mock";
    export { UiStandardElementMock } from "xrm-mock/controls/uistandardelement/uistandardelement.mock";
    export { IUserSettingsComponents, UserSettingsMock } from "xrm-mock/usersettings/usersettings.mock";
    export { UtilityMock } from "xrm-mock/utility/utility.mock";
    export { ViewSelectorMock } from "xrm-mock/controls/viewselector/viewselector.mock";
    export { ViewSelectorItemMock } from "xrm-mock/controls/viewselectoritem/viewselectoritem.mock";
    export { WebApiMock } from "xrm-mock/webapi/webapi.mock";
    export { WebApiOfflineMock } from "xrm-mock/webapioffline/webapioffline.mock";
    export { WebApiOnlineMock } from "xrm-mock/webapionline/webapionline.mock";
    export { WindowMock } from "xrm-mock/window.mock";
    export { XrmStaticMock, IXrmStaticComponents } from "xrm-mock/xrmstatic.mock";
    export { IframeControlMock } from "xrm-mock/controls/iframecontrol/iframecontrol.mock";
    export { QuickFormControlMock } from "xrm-mock/controls/quickform/quickform.mock";
    export { AppMock } from "xrm-mock/app/app.mock";
    export { KbSearchControlMock } from "xrm-mock/controls/kbsearchcontrol/kbsearchcontrol.mock";
    export { TimerControlMock } from "xrm-mock/controls/timercontrol/timercontrol.mock";
}
/// <amd-module name="xrm-mock" />
declare module "xrm-mock" {
    export * from "xrm-mock/index";
    export { XrmMockGenerator, IXrmGeneratorComponents } from "xrm-mock-generator/index";
}
declare module "xrm-mock/async/errorcallbackobject/errorcallbackobject.mock" {
    export class ErrorCallbackObjectMock implements Xrm.Async.ErrorCallbackObject {
        errorCode: number;
        message: string;
        constructor(errorCode: number, message: string);
    }
}
declare module "xrm-mock/async/offlineerrorcallbackobject/offlineerrorcallbackobject.mock" {
    export class OfflineErrorCallbackObjectMock implements Xrm.Async.OfflineErrorCallbackObject {
        debugMessage: string;
        errorCallbackObject: Xrm.Async.ErrorCallbackObject;
        errorCode: number;
        message: string;
        constructor(errorCallbackObject: Xrm.Async.ErrorCallbackObject, debugMessage: string);
    }
}
declare module "xrm-mock/async/offlineoperationsuccesscallbackobject/offlineoperationsuccesscallbackobject.mock" {
    export class OfflineOperationSuccessCallbackObjectMock implements Xrm.Async.OfflineOperationSuccessCallbackObject {
        id: string;
        logicalName: string;
        constructor(id: string, logicalName: string);
    }
}
declare module "xrm-mock/async/openquickcreatesuccesscallbackobject/openquickcreatesuccesscallbackobject.mock" {
    export class OpenQuickCreateSuccessCallbackObjectMock implements Xrm.Async.OpenQuickCreateSuccessCallbackObject {
        savedEntityReference: Xrm.LookupValue;
        constructor(savedEntityReference: Xrm.LookupValue);
    }
}
