/* tslint:disable */
/**
 * This is an autogenerated file created by the Stencil compiler.
 * It contains typing information for all components that exist in this project.
 */


import { HTMLStencilElement, JSXBase } from './stencil.core';


export namespace Components {
  interface EmaCard {}
  interface EmaCardContent {
    'background': string;
    'color': string;
    'padding': string;
  }
  interface EmaCardFooter {
    'background': string;
    'color': string;
    'padding': string;
  }
  interface EmaCardHeader {
    'background': string;
    'color': string;
    'padding': string;
  }
  interface EmaCollapsible {
    'collapsed': boolean;
    'label': string;
  }
  interface EmaDebugger {
    'apiUrl': string;
    'close': () => Promise<void>;
    'collapseAt': number;
    'dataJson': string;
    'historySize': number;
    'jsonUrl': string;
    'maxLevel': number;
    'open': () => Promise<void>;
    'pause': () => Promise<void>;
    'run': () => Promise<void>;
    'toggle': () => Promise<void>;
    'type': string;
  }
  interface EmaDemo {
    'tag': string;
  }
  interface EmaDialog {
    'alert': (msg?: string, options?: {}) => Promise<void>;
    'allowClose': boolean;
    'cancelLabel': string;
    'confirm': (msg?: string, calllback?: () => void, options?: {}) => Promise<void>;
    'confirmLabel': string;
    'continueLabel': string;
    'notice': (msg?: string, options?: {}) => Promise<void>;
    'popup': (options?: {}) => Promise<void>;
    'setConfirmHandler': (callBackHandler: any) => Promise<void>;
  }
  interface EmaDrupalNode {
    'dataJson': string;
  }
  interface EmaEntityForm {
    'dataJson': string;
    'definitionsJson': string;
    'language': string;
    'setData': (data: any) => Promise<void>;
    'setDefinitions': (data: any) => Promise<void>;
  }
  interface EmaFlashMessage {
    'show': (message: string, activeClass: string, duration?: number) => Promise<void>;
  }
  interface EmaFlip {
    'flip': () => Promise<void>;
    'flipBackEvents': string;
    'flipDuration': number;
    'flipEvents': string;
    'flipTimingFunction': string;
    'isFlipped': boolean;
  }
  interface EmaForm {
    'action': string;
    'dataJson': string;
    'dataType': string;
    'definitionsJson': string;
    'entityJson': string;
    'formClass': string;
    'language': string;
    'method': string;
    'resettable': boolean;
    'setConstraints': (constraints: any) => Promise<void>;
    'setData': (data: any) => Promise<void>;
    'setDefinitions': (definitions: any) => Promise<void>;
    'setEntity': (entity: any) => Promise<void>;
    'setSubmitInterceptor': (submitFn: any) => Promise<void>;
    'setTranslateService': (instance: any) => Promise<void>;
    'submitError': string;
    'submitLabel': string;
    'update': () => Promise<void>;
  }
  interface EmaFormField {
    'configJson': string;
    'dataJson': string;
    'getValue': () => Promise<any>;
    'keyId': string;
    'setData': (data: any) => Promise<void>;
    'styles': any;
    'tag': string;
    'type': string;
    'value': any;
  }
  interface EmaIframe {
    'fullscreen': boolean;
    'fullscreenMargin': string;
    'height': string;
    'src': string;
    'width': string;
    'zIndex': number;
  }
  interface EmaJsonViewer {
    'allowCopy': boolean;
    'collapseAt': number;
    'dataJson': string;
    'jsonUrl': string;
    'maxLevel': number;
  }
  interface EmaLayout {
    'cellHeight': string;
    'cellWidth': string;
    'gridGap': string;
    'paddingStyle': string;
    'type': string;
  }
  interface EmaLazyImg {
    'alt': string;
    'src': string;
  }
  interface EmaLoadingSpinner {
    'color': string;
    'hide': () => Promise<void>;
    'show': () => Promise<void>;
    'toggle': () => Promise<void>;
    'type': string;
  }
  interface EmaLoginForm {
    'forgotPasswordLabel': string;
    'forgotPasswordUrl': string;
    'language': string;
    'submitError': string;
    'submitLabel': string;
    'type': string;
  }
  interface EmaModal {
    'allowClose': string;
    'centerContent': boolean;
    'centerVertical': boolean;
    'height': string;
    'hide': () => Promise<void>;
    'modalContent': string;
    'modalTitle': string;
    'show': (html: string) => Promise<void>;
    'width': string;
  }
  interface EmaNavbar {
    /**
    * The amount of menu-items
    */
    'itemCount': number;
    'logo': string;
    /**
    * Json string of menu-items
    */
    'menuItems': string;
    'position': string;
  }
  interface EmaPermission {
    'can': string;
    'cannot': string;
    'conditions': string;
    'getRules': () => Promise<any[]>;
    'isolate': boolean;
    'rulesJson': string;
    'setPermissionService': (instance: any) => Promise<void>;
    'setRules': (rules: any[], replace?: boolean) => Promise<void>;
    'subject': string;
    'update': () => Promise<void>;
  }
  interface EmaPost {
    'dataJson': string;
  }
  interface EmaRepeater {
    'dataJson': string;
    'element': string;
    'setData': (content: any) => Promise<void>;
    'setTemplate': (template: any) => Promise<void>;
    'template': string;
  }
  interface EmaRoute {
    'action': string;
    'actionParams': string;
    'component': string;
    'componentProps': string;
    'exact': boolean;
    'getUrl': () => Promise<string>;
    'url': string;
  }
  interface EmaRouteLink {
    'action': string;
    'actionParams': string;
    'dataJson': string;
    'url': string;
  }
  interface EmaRouter {
    'dataJson': string;
    'getState': () => Promise<any>;
    'hash': string;
    'level': number;
    'page': () => Promise<any>;
    'targetSelector': string;
    'url': (url: any) => Promise<string>;
  }
  interface EmaRouterMenu {
    'dataJson': string;
    'getData': () => Promise<any>;
    'setData': (data: any, extend?: boolean) => Promise<void>;
  }
  interface EmaSlider {
    'max': number;
    'min': number;
    'value': number;
  }
  interface EmaSvg {
    'dataJson': any;
    'getElements': () => Promise<any[]>;
    'src': string;
    'type': string;
  }
  interface EmaTabContent {
    'getChild': () => Promise<{ select: any; unselect: any; name: string; }>;
    'name': string;
  }
  interface EmaTabHeader {
    'getChild': () => Promise<{ select: any; unselect: any; name: string; id: string; }>;
    'name': string;
  }
  interface EmaTabs {
    /**
    * The selected visible tab-content
    */
    'selectedIndex': number;
  }
  interface EmaTranslate {
    'get': (string: string) => Promise<string>;
    'language': string;
    'params': string;
    'paramsJson': string;
    'set': (string: string, language: string, transform: any) => Promise<void>;
    'setTranslateService': (instance: any) => Promise<void>;
    'string': string;
    'transform': string;
    'translationsLocation': string;
    'update': () => Promise<void>;
  }
  interface EmaTypeAhead {
    'dataJson': string;
    'options': any;
  }
}

declare global {


  interface HTMLEmaCardElement extends Components.EmaCard, HTMLStencilElement {}
  var HTMLEmaCardElement: {
    prototype: HTMLEmaCardElement;
    new (): HTMLEmaCardElement;
  };

  interface HTMLEmaCardContentElement extends Components.EmaCardContent, HTMLStencilElement {}
  var HTMLEmaCardContentElement: {
    prototype: HTMLEmaCardContentElement;
    new (): HTMLEmaCardContentElement;
  };

  interface HTMLEmaCardFooterElement extends Components.EmaCardFooter, HTMLStencilElement {}
  var HTMLEmaCardFooterElement: {
    prototype: HTMLEmaCardFooterElement;
    new (): HTMLEmaCardFooterElement;
  };

  interface HTMLEmaCardHeaderElement extends Components.EmaCardHeader, HTMLStencilElement {}
  var HTMLEmaCardHeaderElement: {
    prototype: HTMLEmaCardHeaderElement;
    new (): HTMLEmaCardHeaderElement;
  };

  interface HTMLEmaCollapsibleElement extends Components.EmaCollapsible, HTMLStencilElement {}
  var HTMLEmaCollapsibleElement: {
    prototype: HTMLEmaCollapsibleElement;
    new (): HTMLEmaCollapsibleElement;
  };

  interface HTMLEmaDebuggerElement extends Components.EmaDebugger, HTMLStencilElement {}
  var HTMLEmaDebuggerElement: {
    prototype: HTMLEmaDebuggerElement;
    new (): HTMLEmaDebuggerElement;
  };

  interface HTMLEmaDemoElement extends Components.EmaDemo, HTMLStencilElement {}
  var HTMLEmaDemoElement: {
    prototype: HTMLEmaDemoElement;
    new (): HTMLEmaDemoElement;
  };

  interface HTMLEmaDialogElement extends Components.EmaDialog, HTMLStencilElement {}
  var HTMLEmaDialogElement: {
    prototype: HTMLEmaDialogElement;
    new (): HTMLEmaDialogElement;
  };

  interface HTMLEmaDrupalNodeElement extends Components.EmaDrupalNode, HTMLStencilElement {}
  var HTMLEmaDrupalNodeElement: {
    prototype: HTMLEmaDrupalNodeElement;
    new (): HTMLEmaDrupalNodeElement;
  };

  interface HTMLEmaEntityFormElement extends Components.EmaEntityForm, HTMLStencilElement {}
  var HTMLEmaEntityFormElement: {
    prototype: HTMLEmaEntityFormElement;
    new (): HTMLEmaEntityFormElement;
  };

  interface HTMLEmaFlashMessageElement extends Components.EmaFlashMessage, HTMLStencilElement {}
  var HTMLEmaFlashMessageElement: {
    prototype: HTMLEmaFlashMessageElement;
    new (): HTMLEmaFlashMessageElement;
  };

  interface HTMLEmaFlipElement extends Components.EmaFlip, HTMLStencilElement {}
  var HTMLEmaFlipElement: {
    prototype: HTMLEmaFlipElement;
    new (): HTMLEmaFlipElement;
  };

  interface HTMLEmaFormElement extends Components.EmaForm, HTMLStencilElement {}
  var HTMLEmaFormElement: {
    prototype: HTMLEmaFormElement;
    new (): HTMLEmaFormElement;
  };

  interface HTMLEmaFormFieldElement extends Components.EmaFormField, HTMLStencilElement {}
  var HTMLEmaFormFieldElement: {
    prototype: HTMLEmaFormFieldElement;
    new (): HTMLEmaFormFieldElement;
  };

  interface HTMLEmaIframeElement extends Components.EmaIframe, HTMLStencilElement {}
  var HTMLEmaIframeElement: {
    prototype: HTMLEmaIframeElement;
    new (): HTMLEmaIframeElement;
  };

  interface HTMLEmaJsonViewerElement extends Components.EmaJsonViewer, HTMLStencilElement {}
  var HTMLEmaJsonViewerElement: {
    prototype: HTMLEmaJsonViewerElement;
    new (): HTMLEmaJsonViewerElement;
  };

  interface HTMLEmaLayoutElement extends Components.EmaLayout, HTMLStencilElement {}
  var HTMLEmaLayoutElement: {
    prototype: HTMLEmaLayoutElement;
    new (): HTMLEmaLayoutElement;
  };

  interface HTMLEmaLazyImgElement extends Components.EmaLazyImg, HTMLStencilElement {}
  var HTMLEmaLazyImgElement: {
    prototype: HTMLEmaLazyImgElement;
    new (): HTMLEmaLazyImgElement;
  };

  interface HTMLEmaLoadingSpinnerElement extends Components.EmaLoadingSpinner, HTMLStencilElement {}
  var HTMLEmaLoadingSpinnerElement: {
    prototype: HTMLEmaLoadingSpinnerElement;
    new (): HTMLEmaLoadingSpinnerElement;
  };

  interface HTMLEmaLoginFormElement extends Components.EmaLoginForm, HTMLStencilElement {}
  var HTMLEmaLoginFormElement: {
    prototype: HTMLEmaLoginFormElement;
    new (): HTMLEmaLoginFormElement;
  };

  interface HTMLEmaModalElement extends Components.EmaModal, HTMLStencilElement {}
  var HTMLEmaModalElement: {
    prototype: HTMLEmaModalElement;
    new (): HTMLEmaModalElement;
  };

  interface HTMLEmaNavbarElement extends Components.EmaNavbar, HTMLStencilElement {}
  var HTMLEmaNavbarElement: {
    prototype: HTMLEmaNavbarElement;
    new (): HTMLEmaNavbarElement;
  };

  interface HTMLEmaPermissionElement extends Components.EmaPermission, HTMLStencilElement {}
  var HTMLEmaPermissionElement: {
    prototype: HTMLEmaPermissionElement;
    new (): HTMLEmaPermissionElement;
  };

  interface HTMLEmaPostElement extends Components.EmaPost, HTMLStencilElement {}
  var HTMLEmaPostElement: {
    prototype: HTMLEmaPostElement;
    new (): HTMLEmaPostElement;
  };

  interface HTMLEmaRepeaterElement extends Components.EmaRepeater, HTMLStencilElement {}
  var HTMLEmaRepeaterElement: {
    prototype: HTMLEmaRepeaterElement;
    new (): HTMLEmaRepeaterElement;
  };

  interface HTMLEmaRouteElement extends Components.EmaRoute, HTMLStencilElement {}
  var HTMLEmaRouteElement: {
    prototype: HTMLEmaRouteElement;
    new (): HTMLEmaRouteElement;
  };

  interface HTMLEmaRouteLinkElement extends Components.EmaRouteLink, HTMLStencilElement {}
  var HTMLEmaRouteLinkElement: {
    prototype: HTMLEmaRouteLinkElement;
    new (): HTMLEmaRouteLinkElement;
  };

  interface HTMLEmaRouterElement extends Components.EmaRouter, HTMLStencilElement {}
  var HTMLEmaRouterElement: {
    prototype: HTMLEmaRouterElement;
    new (): HTMLEmaRouterElement;
  };

  interface HTMLEmaRouterMenuElement extends Components.EmaRouterMenu, HTMLStencilElement {}
  var HTMLEmaRouterMenuElement: {
    prototype: HTMLEmaRouterMenuElement;
    new (): HTMLEmaRouterMenuElement;
  };

  interface HTMLEmaSliderElement extends Components.EmaSlider, HTMLStencilElement {}
  var HTMLEmaSliderElement: {
    prototype: HTMLEmaSliderElement;
    new (): HTMLEmaSliderElement;
  };

  interface HTMLEmaSvgElement extends Components.EmaSvg, HTMLStencilElement {}
  var HTMLEmaSvgElement: {
    prototype: HTMLEmaSvgElement;
    new (): HTMLEmaSvgElement;
  };

  interface HTMLEmaTabContentElement extends Components.EmaTabContent, HTMLStencilElement {}
  var HTMLEmaTabContentElement: {
    prototype: HTMLEmaTabContentElement;
    new (): HTMLEmaTabContentElement;
  };

  interface HTMLEmaTabHeaderElement extends Components.EmaTabHeader, HTMLStencilElement {}
  var HTMLEmaTabHeaderElement: {
    prototype: HTMLEmaTabHeaderElement;
    new (): HTMLEmaTabHeaderElement;
  };

  interface HTMLEmaTabsElement extends Components.EmaTabs, HTMLStencilElement {}
  var HTMLEmaTabsElement: {
    prototype: HTMLEmaTabsElement;
    new (): HTMLEmaTabsElement;
  };

  interface HTMLEmaTranslateElement extends Components.EmaTranslate, HTMLStencilElement {}
  var HTMLEmaTranslateElement: {
    prototype: HTMLEmaTranslateElement;
    new (): HTMLEmaTranslateElement;
  };

  interface HTMLEmaTypeAheadElement extends Components.EmaTypeAhead, HTMLStencilElement {}
  var HTMLEmaTypeAheadElement: {
    prototype: HTMLEmaTypeAheadElement;
    new (): HTMLEmaTypeAheadElement;
  };
  interface HTMLElementTagNameMap {
    'ema-card': HTMLEmaCardElement;
    'ema-card-content': HTMLEmaCardContentElement;
    'ema-card-footer': HTMLEmaCardFooterElement;
    'ema-card-header': HTMLEmaCardHeaderElement;
    'ema-collapsible': HTMLEmaCollapsibleElement;
    'ema-debugger': HTMLEmaDebuggerElement;
    'ema-demo': HTMLEmaDemoElement;
    'ema-dialog': HTMLEmaDialogElement;
    'ema-drupal-node': HTMLEmaDrupalNodeElement;
    'ema-entity-form': HTMLEmaEntityFormElement;
    'ema-flash-message': HTMLEmaFlashMessageElement;
    'ema-flip': HTMLEmaFlipElement;
    'ema-form': HTMLEmaFormElement;
    'ema-form-field': HTMLEmaFormFieldElement;
    'ema-iframe': HTMLEmaIframeElement;
    'ema-json-viewer': HTMLEmaJsonViewerElement;
    'ema-layout': HTMLEmaLayoutElement;
    'ema-lazy-img': HTMLEmaLazyImgElement;
    'ema-loading-spinner': HTMLEmaLoadingSpinnerElement;
    'ema-login-form': HTMLEmaLoginFormElement;
    'ema-modal': HTMLEmaModalElement;
    'ema-navbar': HTMLEmaNavbarElement;
    'ema-permission': HTMLEmaPermissionElement;
    'ema-post': HTMLEmaPostElement;
    'ema-repeater': HTMLEmaRepeaterElement;
    'ema-route': HTMLEmaRouteElement;
    'ema-route-link': HTMLEmaRouteLinkElement;
    'ema-router': HTMLEmaRouterElement;
    'ema-router-menu': HTMLEmaRouterMenuElement;
    'ema-slider': HTMLEmaSliderElement;
    'ema-svg': HTMLEmaSvgElement;
    'ema-tab-content': HTMLEmaTabContentElement;
    'ema-tab-header': HTMLEmaTabHeaderElement;
    'ema-tabs': HTMLEmaTabsElement;
    'ema-translate': HTMLEmaTranslateElement;
    'ema-type-ahead': HTMLEmaTypeAheadElement;
  }
}

declare namespace LocalJSX {
  interface EmaCard extends JSXBase.HTMLAttributes<HTMLEmaCardElement> {}
  interface EmaCardContent extends JSXBase.HTMLAttributes<HTMLEmaCardContentElement> {
    'background'?: string;
    'color'?: string;
    'padding'?: string;
  }
  interface EmaCardFooter extends JSXBase.HTMLAttributes<HTMLEmaCardFooterElement> {
    'background'?: string;
    'color'?: string;
    'padding'?: string;
  }
  interface EmaCardHeader extends JSXBase.HTMLAttributes<HTMLEmaCardHeaderElement> {
    'background'?: string;
    'color'?: string;
    'padding'?: string;
  }
  interface EmaCollapsible extends JSXBase.HTMLAttributes<HTMLEmaCollapsibleElement> {
    'collapsed'?: boolean;
    'label'?: string;
    'onOnToggle'?: (event: CustomEvent<any>) => void;
  }
  interface EmaDebugger extends JSXBase.HTMLAttributes<HTMLEmaDebuggerElement> {
    'apiUrl'?: string;
    'collapseAt'?: number;
    'dataJson'?: string;
    'historySize'?: number;
    'jsonUrl'?: string;
    'maxLevel'?: number;
    'type'?: string;
  }
  interface EmaDemo extends JSXBase.HTMLAttributes<HTMLEmaDemoElement> {
    'tag'?: string;
  }
  interface EmaDialog extends JSXBase.HTMLAttributes<HTMLEmaDialogElement> {
    'allowClose'?: boolean;
    'cancelLabel'?: string;
    'confirmLabel'?: string;
    'continueLabel'?: string;
  }
  interface EmaDrupalNode extends JSXBase.HTMLAttributes<HTMLEmaDrupalNodeElement> {
    'dataJson'?: string;
  }
  interface EmaEntityForm extends JSXBase.HTMLAttributes<HTMLEmaEntityFormElement> {
    'dataJson'?: string;
    'definitionsJson'?: string;
    'language'?: string;
  }
  interface EmaFlashMessage extends JSXBase.HTMLAttributes<HTMLEmaFlashMessageElement> {}
  interface EmaFlip extends JSXBase.HTMLAttributes<HTMLEmaFlipElement> {
    'flipBackEvents'?: string;
    'flipDuration'?: number;
    'flipEvents'?: string;
    'flipTimingFunction'?: string;
    'isFlipped'?: boolean;
  }
  interface EmaForm extends JSXBase.HTMLAttributes<HTMLEmaFormElement> {
    'action'?: string;
    'dataJson'?: string;
    'dataType'?: string;
    'definitionsJson'?: string;
    'entityJson'?: string;
    'formClass'?: string;
    'language'?: string;
    'method'?: string;
    'onFormSubmit'?: (event: CustomEvent<any>) => void;
    'resettable'?: boolean;
    'submitError'?: string;
    'submitLabel'?: string;
  }
  interface EmaFormField extends JSXBase.HTMLAttributes<HTMLEmaFormFieldElement> {
    'configJson'?: string;
    'dataJson'?: string;
    'keyId'?: string;
    'onChanged'?: (event: CustomEvent<any>) => void;
    'styles'?: any;
    'tag'?: string;
    'type'?: string;
    'value'?: any;
  }
  interface EmaIframe extends JSXBase.HTMLAttributes<HTMLEmaIframeElement> {
    'fullscreen'?: boolean;
    'fullscreenMargin'?: string;
    'height'?: string;
    'onIframeLoaded'?: (event: CustomEvent<any>) => void;
    'src'?: string;
    'width'?: string;
    'zIndex'?: number;
  }
  interface EmaJsonViewer extends JSXBase.HTMLAttributes<HTMLEmaJsonViewerElement> {
    'allowCopy'?: boolean;
    'collapseAt'?: number;
    'dataJson'?: string;
    'jsonUrl'?: string;
    'maxLevel'?: number;
  }
  interface EmaLayout extends JSXBase.HTMLAttributes<HTMLEmaLayoutElement> {
    'cellHeight'?: string;
    'cellWidth'?: string;
    'gridGap'?: string;
    'paddingStyle'?: string;
    'type'?: string;
  }
  interface EmaLazyImg extends JSXBase.HTMLAttributes<HTMLEmaLazyImgElement> {
    'alt'?: string;
    'src'?: string;
  }
  interface EmaLoadingSpinner extends JSXBase.HTMLAttributes<HTMLEmaLoadingSpinnerElement> {
    'color'?: string;
    'type'?: string;
  }
  interface EmaLoginForm extends JSXBase.HTMLAttributes<HTMLEmaLoginFormElement> {
    'forgotPasswordLabel'?: string;
    'forgotPasswordUrl'?: string;
    'language'?: string;
    'onFormSubmit'?: (event: CustomEvent<any>) => void;
    'submitError'?: string;
    'submitLabel'?: string;
    'type'?: string;
  }
  interface EmaModal extends JSXBase.HTMLAttributes<HTMLEmaModalElement> {
    'allowClose'?: string;
    'centerContent'?: boolean;
    'centerVertical'?: boolean;
    'height'?: string;
    'modalContent'?: string;
    'modalTitle'?: string;
    'width'?: string;
  }
  interface EmaNavbar extends JSXBase.HTMLAttributes<HTMLEmaNavbarElement> {
    /**
    * The amount of menu-items
    */
    'itemCount'?: number;
    'logo'?: string;
    /**
    * Json string of menu-items
    */
    'menuItems'?: string;
    'position'?: string;
  }
  interface EmaPermission extends JSXBase.HTMLAttributes<HTMLEmaPermissionElement> {
    'can'?: string;
    'cannot'?: string;
    'conditions'?: string;
    'isolate'?: boolean;
    'rulesJson'?: string;
    'subject'?: string;
  }
  interface EmaPost extends JSXBase.HTMLAttributes<HTMLEmaPostElement> {
    'dataJson'?: string;
  }
  interface EmaRepeater extends JSXBase.HTMLAttributes<HTMLEmaRepeaterElement> {
    'dataJson'?: string;
    'element'?: string;
    'template'?: string;
  }
  interface EmaRoute extends JSXBase.HTMLAttributes<HTMLEmaRouteElement> {
    'action'?: string;
    'actionParams'?: string;
    'component'?: string;
    'componentProps'?: string;
    'exact'?: boolean;
    'url'?: string;
  }
  interface EmaRouteLink extends JSXBase.HTMLAttributes<HTMLEmaRouteLinkElement> {
    'action'?: string;
    'actionParams'?: string;
    'dataJson'?: string;
    'onRegisterRouteLink'?: (event: CustomEvent<any>) => void;
    'onRouteLinkChange'?: (event: CustomEvent<any>) => void;
    'url'?: string;
  }
  interface EmaRouter extends JSXBase.HTMLAttributes<HTMLEmaRouterElement> {
    'dataJson'?: string;
    'hash'?: string;
    'level'?: number;
    'onChanged'?: (event: CustomEvent<any>) => void;
    'targetSelector'?: string;
  }
  interface EmaRouterMenu extends JSXBase.HTMLAttributes<HTMLEmaRouterMenuElement> {
    'dataJson'?: string;
    'onChanged'?: (event: CustomEvent<any>) => void;
  }
  interface EmaSlider extends JSXBase.HTMLAttributes<HTMLEmaSliderElement> {
    'max'?: number;
    'min'?: number;
    'onValueChanged'?: (event: CustomEvent<any>) => void;
    'value'?: number;
  }
  interface EmaSvg extends JSXBase.HTMLAttributes<HTMLEmaSvgElement> {
    'dataJson'?: any;
    'onSvgElementClick'?: (event: CustomEvent<any>) => void;
    'src'?: string;
    'type'?: string;
  }
  interface EmaTabContent extends JSXBase.HTMLAttributes<HTMLEmaTabContentElement> {
    'name'?: string;
  }
  interface EmaTabHeader extends JSXBase.HTMLAttributes<HTMLEmaTabHeaderElement> {
    'name'?: string;
    'onOnSelect'?: (event: CustomEvent<any>) => void;
  }
  interface EmaTabs extends JSXBase.HTMLAttributes<HTMLEmaTabsElement> {
    /**
    * The selected visible tab-content
    */
    'selectedIndex'?: number;
  }
  interface EmaTranslate extends JSXBase.HTMLAttributes<HTMLEmaTranslateElement> {
    'language'?: string;
    'params'?: string;
    'paramsJson'?: string;
    'string'?: string;
    'transform'?: string;
    'translationsLocation'?: string;
  }
  interface EmaTypeAhead extends JSXBase.HTMLAttributes<HTMLEmaTypeAheadElement> {
    'dataJson'?: string;
    'onSearch'?: (event: CustomEvent<any>) => void;
    'onSelection'?: (event: CustomEvent<any>) => void;
    'options'?: any;
  }

  interface IntrinsicElements {
    'ema-card': EmaCard;
    'ema-card-content': EmaCardContent;
    'ema-card-footer': EmaCardFooter;
    'ema-card-header': EmaCardHeader;
    'ema-collapsible': EmaCollapsible;
    'ema-debugger': EmaDebugger;
    'ema-demo': EmaDemo;
    'ema-dialog': EmaDialog;
    'ema-drupal-node': EmaDrupalNode;
    'ema-entity-form': EmaEntityForm;
    'ema-flash-message': EmaFlashMessage;
    'ema-flip': EmaFlip;
    'ema-form': EmaForm;
    'ema-form-field': EmaFormField;
    'ema-iframe': EmaIframe;
    'ema-json-viewer': EmaJsonViewer;
    'ema-layout': EmaLayout;
    'ema-lazy-img': EmaLazyImg;
    'ema-loading-spinner': EmaLoadingSpinner;
    'ema-login-form': EmaLoginForm;
    'ema-modal': EmaModal;
    'ema-navbar': EmaNavbar;
    'ema-permission': EmaPermission;
    'ema-post': EmaPost;
    'ema-repeater': EmaRepeater;
    'ema-route': EmaRoute;
    'ema-route-link': EmaRouteLink;
    'ema-router': EmaRouter;
    'ema-router-menu': EmaRouterMenu;
    'ema-slider': EmaSlider;
    'ema-svg': EmaSvg;
    'ema-tab-content': EmaTabContent;
    'ema-tab-header': EmaTabHeader;
    'ema-tabs': EmaTabs;
    'ema-translate': EmaTranslate;
    'ema-type-ahead': EmaTypeAhead;
  }
}

export { LocalJSX as JSX };


declare module "@stencil/core" {
  export namespace JSX {
    interface IntrinsicElements extends LocalJSX.IntrinsicElements {}
  }
}


