/* eslint-disable */
/* 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-public-runtime";
import { AddonReminderStencilDTO, AuthorStencilDTO, ReminderInfoDTO } from "./interfaces";
import { StateOfReminder } from "./utils/utils";
export namespace Components {
    interface SwAddonReminder {
        "baseUrl": string;
        "deleteSub": boolean;
        "doneFlag": boolean;
        "idPluginAction": number;
        "idPluginActionExternal": number;
        "reminderInfoDTO": ReminderInfoDTO;
        "sendDataForCalendar": boolean;
        "state": string;
        "taskId": number;
        "userInfo": AuthorStencilDTO;
        "withoutFooter": boolean;
    }
    interface SwAddonReminderBody {
        "addonReminderInfoFromParent": {
    name: string;
    description: string;
    hour: string;
    minute: string;
    duration: string;
    date: string;
  };
        "date": string;
        "descriptionText": string;
        "duration": string;
        "hours": string;
        "minutes": string;
        "reminderDoneValue": boolean;
        "state": StateOfReminder;
        "withoutFooter": boolean;
    }
    interface SwAddonReminderFooter {
        "author": AuthorStencilDTO;
        "reminderAddonInfo": {name?: string, description?: string, hour?:string, minute?:string, duration?:string, date?: string};
        "reminderDoneProp": boolean;
        "state": StateOfReminder;
        "submitValidation": boolean;
    }
    interface SwAddonReminderHeader {
        "addonReminderTitle": string;
        "creationDate": string;
        "state": StateOfReminder;
        "withoutFooter": boolean;
    }
    interface SwAvatar {
    }
    interface SwBadgeError {
    }
    interface SwContentWrapper {
    }
    interface SwDescriptionInput {
        "state": StateOfReminder;
        "text": string;
    }
    interface SwInputButton {
        "dark": boolean;
        "icon": boolean;
        "size": string;
        "text": string;
    }
    interface SwInputSelect {
        "numberOfInputSelect": number;
        "optionLabels": string[];
        "text": string;
        "triggerIsOpen": boolean;
        "valueOfEdit": string;
    }
    interface SwObligatoryField {
    }
    interface SwOptionsMenu {
        "menuOpened": boolean;
        "state": StateOfReminder;
    }
    interface SwSearchbox {
        "label": string;
        "searchResult": string[];
        "type": string;
        "value": string;
    }
}
export interface SwAddonReminderCustomEvent<T> extends CustomEvent<T> {
    detail: T;
    target: HTMLSwAddonReminderElement;
}
export interface SwAddonReminderBodyCustomEvent<T> extends CustomEvent<T> {
    detail: T;
    target: HTMLSwAddonReminderBodyElement;
}
export interface SwAddonReminderFooterCustomEvent<T> extends CustomEvent<T> {
    detail: T;
    target: HTMLSwAddonReminderFooterElement;
}
export interface SwAddonReminderHeaderCustomEvent<T> extends CustomEvent<T> {
    detail: T;
    target: HTMLSwAddonReminderHeaderElement;
}
export interface SwDescriptionInputCustomEvent<T> extends CustomEvent<T> {
    detail: T;
    target: HTMLSwDescriptionInputElement;
}
export interface SwInputButtonCustomEvent<T> extends CustomEvent<T> {
    detail: T;
    target: HTMLSwInputButtonElement;
}
export interface SwInputSelectCustomEvent<T> extends CustomEvent<T> {
    detail: T;
    target: HTMLSwInputSelectElement;
}
export interface SwOptionsMenuCustomEvent<T> extends CustomEvent<T> {
    detail: T;
    target: HTMLSwOptionsMenuElement;
}
export interface SwSearchboxCustomEvent<T> extends CustomEvent<T> {
    detail: T;
    target: HTMLSwSearchboxElement;
}
declare global {
    interface HTMLSwAddonReminderElement extends Components.SwAddonReminder, HTMLStencilElement {
    }
    var HTMLSwAddonReminderElement: {
        prototype: HTMLSwAddonReminderElement;
        new (): HTMLSwAddonReminderElement;
    };
    interface HTMLSwAddonReminderBodyElement extends Components.SwAddonReminderBody, HTMLStencilElement {
    }
    var HTMLSwAddonReminderBodyElement: {
        prototype: HTMLSwAddonReminderBodyElement;
        new (): HTMLSwAddonReminderBodyElement;
    };
    interface HTMLSwAddonReminderFooterElement extends Components.SwAddonReminderFooter, HTMLStencilElement {
    }
    var HTMLSwAddonReminderFooterElement: {
        prototype: HTMLSwAddonReminderFooterElement;
        new (): HTMLSwAddonReminderFooterElement;
    };
    interface HTMLSwAddonReminderHeaderElement extends Components.SwAddonReminderHeader, HTMLStencilElement {
    }
    var HTMLSwAddonReminderHeaderElement: {
        prototype: HTMLSwAddonReminderHeaderElement;
        new (): HTMLSwAddonReminderHeaderElement;
    };
    interface HTMLSwAvatarElement extends Components.SwAvatar, HTMLStencilElement {
    }
    var HTMLSwAvatarElement: {
        prototype: HTMLSwAvatarElement;
        new (): HTMLSwAvatarElement;
    };
    interface HTMLSwBadgeErrorElement extends Components.SwBadgeError, HTMLStencilElement {
    }
    var HTMLSwBadgeErrorElement: {
        prototype: HTMLSwBadgeErrorElement;
        new (): HTMLSwBadgeErrorElement;
    };
    interface HTMLSwContentWrapperElement extends Components.SwContentWrapper, HTMLStencilElement {
    }
    var HTMLSwContentWrapperElement: {
        prototype: HTMLSwContentWrapperElement;
        new (): HTMLSwContentWrapperElement;
    };
    interface HTMLSwDescriptionInputElement extends Components.SwDescriptionInput, HTMLStencilElement {
    }
    var HTMLSwDescriptionInputElement: {
        prototype: HTMLSwDescriptionInputElement;
        new (): HTMLSwDescriptionInputElement;
    };
    interface HTMLSwInputButtonElement extends Components.SwInputButton, HTMLStencilElement {
    }
    var HTMLSwInputButtonElement: {
        prototype: HTMLSwInputButtonElement;
        new (): HTMLSwInputButtonElement;
    };
    interface HTMLSwInputSelectElement extends Components.SwInputSelect, HTMLStencilElement {
    }
    var HTMLSwInputSelectElement: {
        prototype: HTMLSwInputSelectElement;
        new (): HTMLSwInputSelectElement;
    };
    interface HTMLSwObligatoryFieldElement extends Components.SwObligatoryField, HTMLStencilElement {
    }
    var HTMLSwObligatoryFieldElement: {
        prototype: HTMLSwObligatoryFieldElement;
        new (): HTMLSwObligatoryFieldElement;
    };
    interface HTMLSwOptionsMenuElement extends Components.SwOptionsMenu, HTMLStencilElement {
    }
    var HTMLSwOptionsMenuElement: {
        prototype: HTMLSwOptionsMenuElement;
        new (): HTMLSwOptionsMenuElement;
    };
    interface HTMLSwSearchboxElement extends Components.SwSearchbox, HTMLStencilElement {
    }
    var HTMLSwSearchboxElement: {
        prototype: HTMLSwSearchboxElement;
        new (): HTMLSwSearchboxElement;
    };
    interface HTMLElementTagNameMap {
        "sw-addon-reminder": HTMLSwAddonReminderElement;
        "sw-addon-reminder-body": HTMLSwAddonReminderBodyElement;
        "sw-addon-reminder-footer": HTMLSwAddonReminderFooterElement;
        "sw-addon-reminder-header": HTMLSwAddonReminderHeaderElement;
        "sw-avatar": HTMLSwAvatarElement;
        "sw-badge-error": HTMLSwBadgeErrorElement;
        "sw-content-wrapper": HTMLSwContentWrapperElement;
        "sw-description-input": HTMLSwDescriptionInputElement;
        "sw-input-button": HTMLSwInputButtonElement;
        "sw-input-select": HTMLSwInputSelectElement;
        "sw-obligatory-field": HTMLSwObligatoryFieldElement;
        "sw-options-menu": HTMLSwOptionsMenuElement;
        "sw-searchbox": HTMLSwSearchboxElement;
    }
}
declare namespace LocalJSX {
    interface SwAddonReminder {
        "baseUrl"?: string;
        "deleteSub"?: boolean;
        "doneFlag"?: boolean;
        "idPluginAction"?: number;
        "idPluginActionExternal"?: number;
        "onCollapseReminder"?: (event: SwAddonReminderCustomEvent<boolean>) => void;
        "onDeleteAddonReminderEmitter"?: (event: SwAddonReminderCustomEvent<boolean>) => void;
        "onEditOutputDataEmitter"?: (event: SwAddonReminderCustomEvent<any>) => void;
        "onOutputDataEmitter"?: (event: SwAddonReminderCustomEvent<any>) => void;
        "onReminderDoneSetter"?: (event: SwAddonReminderCustomEvent<boolean>) => void;
        "onUndoReminderOutEmitter"?: (event: SwAddonReminderCustomEvent<boolean>) => void;
        "reminderInfoDTO"?: ReminderInfoDTO;
        "sendDataForCalendar"?: boolean;
        "state"?: string;
        "taskId"?: number;
        "userInfo"?: AuthorStencilDTO;
        "withoutFooter"?: boolean;
    }
    interface SwAddonReminderBody {
        "addonReminderInfoFromParent"?: {
    name: string;
    description: string;
    hour: string;
    minute: string;
    duration: string;
    date: string;
  };
        "date"?: string;
        "descriptionText"?: string;
        "duration"?: string;
        "hours"?: string;
        "minutes"?: string;
        "onAddonReminderInfoFromBodyEmitter"?: (event: SwAddonReminderBodyCustomEvent<{ description: string, hour: string, minute: string, duration: string, date: string }>) => void;
        "reminderDoneValue"?: boolean;
        "state"?: StateOfReminder;
        "withoutFooter"?: boolean;
    }
    interface SwAddonReminderFooter {
        "author"?: AuthorStencilDTO;
        "onCreateReminderEmitter"?: (event: SwAddonReminderFooterCustomEvent<string>) => void;
        "onCreateReminderEmitterFromSubmit"?: (event: SwAddonReminderFooterCustomEvent<AddonReminderStencilDTO>) => void;
        "onEditReminderEmitterFromSubmit"?: (event: SwAddonReminderFooterCustomEvent<AddonReminderStencilDTO>) => void;
        "onErrorEmitter"?: (event: SwAddonReminderFooterCustomEvent<boolean>) => void;
        "onReminderDoneEmitter"?: (event: SwAddonReminderFooterCustomEvent<boolean>) => void;
        "onUndoReminderEmitter"?: (event: SwAddonReminderFooterCustomEvent<boolean>) => void;
        "reminderAddonInfo"?: {name?: string, description?: string, hour?:string, minute?:string, duration?:string, date?: string};
        "reminderDoneProp"?: boolean;
        "state"?: StateOfReminder;
        "submitValidation"?: boolean;
    }
    interface SwAddonReminderHeader {
        "addonReminderTitle"?: string;
        "creationDate"?: string;
        "onAddonReminderInfoFromHeaderEmitter"?: (event: SwAddonReminderHeaderCustomEvent<string>) => void;
        "onChangeStatusToAddonReminder"?: (event: SwAddonReminderHeaderCustomEvent<string>) => void;
        "onCloseReminderEmitter"?: (event: SwAddonReminderHeaderCustomEvent<boolean>) => void;
        "state"?: StateOfReminder;
        "withoutFooter"?: boolean;
    }
    interface SwAvatar {
    }
    interface SwBadgeError {
    }
    interface SwContentWrapper {
    }
    interface SwDescriptionInput {
        "onTextEmitter"?: (event: SwDescriptionInputCustomEvent<{ inputType: string, text: string }>) => void;
        "state"?: StateOfReminder;
        "text"?: string;
    }
    interface SwInputButton {
        "dark"?: boolean;
        "icon"?: boolean;
        "onToggleReminderEmitter"?: (event: SwInputButtonCustomEvent<boolean>) => void;
        "size"?: string;
        "text"?: string;
    }
    interface SwInputSelect {
        "numberOfInputSelect"?: number;
        "onEmitOptionValue"?: (event: SwInputSelectCustomEvent<{ value:string, type:string }>) => void;
        "onIsOpenEmit"?: (event: SwInputSelectCustomEvent<{ inputNr: number, isOpen: boolean }>) => void;
        "optionLabels"?: string[];
        "text"?: string;
        "triggerIsOpen"?: boolean;
        "valueOfEdit"?: string;
    }
    interface SwObligatoryField {
    }
    interface SwOptionsMenu {
        "menuOpened"?: boolean;
        "onChangeStatusEmitter"?: (event: SwOptionsMenuCustomEvent<string>) => void;
        "state"?: StateOfReminder;
    }
    interface SwSearchbox {
        "label"?: string;
        "onSelectValueSearched"?: (event: SwSearchboxCustomEvent<string>) => void;
        "onStringSearched"?: (event: SwSearchboxCustomEvent<string>) => void;
        "onValueChanged"?: (event: SwSearchboxCustomEvent<string>) => void;
        "searchResult"?: string[];
        "type"?: string;
        "value"?: string;
    }
    interface IntrinsicElements {
        "sw-addon-reminder": SwAddonReminder;
        "sw-addon-reminder-body": SwAddonReminderBody;
        "sw-addon-reminder-footer": SwAddonReminderFooter;
        "sw-addon-reminder-header": SwAddonReminderHeader;
        "sw-avatar": SwAvatar;
        "sw-badge-error": SwBadgeError;
        "sw-content-wrapper": SwContentWrapper;
        "sw-description-input": SwDescriptionInput;
        "sw-input-button": SwInputButton;
        "sw-input-select": SwInputSelect;
        "sw-obligatory-field": SwObligatoryField;
        "sw-options-menu": SwOptionsMenu;
        "sw-searchbox": SwSearchbox;
    }
}
export { LocalJSX as JSX };
declare module "@stencil/core" {
    export namespace JSX {
        interface IntrinsicElements {
            "sw-addon-reminder": LocalJSX.SwAddonReminder & JSXBase.HTMLAttributes<HTMLSwAddonReminderElement>;
            "sw-addon-reminder-body": LocalJSX.SwAddonReminderBody & JSXBase.HTMLAttributes<HTMLSwAddonReminderBodyElement>;
            "sw-addon-reminder-footer": LocalJSX.SwAddonReminderFooter & JSXBase.HTMLAttributes<HTMLSwAddonReminderFooterElement>;
            "sw-addon-reminder-header": LocalJSX.SwAddonReminderHeader & JSXBase.HTMLAttributes<HTMLSwAddonReminderHeaderElement>;
            "sw-avatar": LocalJSX.SwAvatar & JSXBase.HTMLAttributes<HTMLSwAvatarElement>;
            "sw-badge-error": LocalJSX.SwBadgeError & JSXBase.HTMLAttributes<HTMLSwBadgeErrorElement>;
            "sw-content-wrapper": LocalJSX.SwContentWrapper & JSXBase.HTMLAttributes<HTMLSwContentWrapperElement>;
            "sw-description-input": LocalJSX.SwDescriptionInput & JSXBase.HTMLAttributes<HTMLSwDescriptionInputElement>;
            "sw-input-button": LocalJSX.SwInputButton & JSXBase.HTMLAttributes<HTMLSwInputButtonElement>;
            "sw-input-select": LocalJSX.SwInputSelect & JSXBase.HTMLAttributes<HTMLSwInputSelectElement>;
            "sw-obligatory-field": LocalJSX.SwObligatoryField & JSXBase.HTMLAttributes<HTMLSwObligatoryFieldElement>;
            "sw-options-menu": LocalJSX.SwOptionsMenu & JSXBase.HTMLAttributes<HTMLSwOptionsMenuElement>;
            "sw-searchbox": LocalJSX.SwSearchbox & JSXBase.HTMLAttributes<HTMLSwSearchboxElement>;
        }
    }
}
