import * as i0 from '@angular/core'; import { InjectionToken, OnInit, EventEmitter, OnDestroy, ModuleWithProviders } from '@angular/core'; import * as _angular_forms from '@angular/forms'; import { FormGroup, ValidatorFn } from '@angular/forms'; import { ReCaptchaV3Service } from 'ng-recaptcha-2'; import * as i12 from '@ngx-translate/core'; import { TranslateService } from '@ngx-translate/core'; import * as libphonenumber from 'google-libphonenumber'; import * as i8 from '@angular/common'; import * as i10 from '@angular-slider/ngx-slider'; import * as i11 from '@ng-bootstrap/ng-bootstrap'; import * as i13 from 'ng-otp-input'; import * as i14 from '@angular/router'; declare const GOOGLE_CLIENT_ID_KEY: InjectionToken; declare class DynamicFormService { constructor(); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } interface DynamicFormScheme { formId: string; title: string; description?: string; active_page?: boolean; fields: FieldScheme[]; buttons: ButtonScheme[]; addons: AddonScheme[]; custom_validators: CustomValidatorScheme[]; } interface FieldScheme { type: FieldType; name?: string; name_?: string; src?: string; options?: any; length?: number; minDate: { year: number; month: number; day: number; }; maxDate: { year: number; month: number; day: number; }; disabledDates?: { year: number; month: number; day: number; }[]; enabledDates?: { year: number; month: number; day: number; }[]; autocomplete?: string; multiple?: boolean; accept?: string; width?: string; controls?: string; disabled?: boolean; visible?: boolean; formControlName?: string; version?: string; default_value?: string | number | boolean | { year: number; month: number; day: number; } | { hour: number; minute: number; }; values?: SelectValueScheme[]; top_label?: string; seconds?: boolean; meridian?: boolean; validators?: ValidatorScheme[]; errors?: ErrorScheme[]; } interface SelectValueScheme { name: string; value: string; } interface AddonScheme { name: AddonType; style?: number; upper_text?: string; size?: string; type?: string; theme?: string; href?: string; normal_text?: string; highlight_text?: string; href_type?: HrefTypes; text?: string; shape?: string; auto_prompt?: string; logo_alignment?: string; } declare enum HrefTypes { MODAL = "modal", URL = "url", EMITTER = "emitter" } interface ButtonScheme { type: ButtonType; name: string; text_color: string; button_color: string; margin?: boolean; page?: number; } interface CustomValidatorScheme { name: string; error_name: string; text: string; } interface ErrorScheme { name: Errors; text: string; } interface ValidatorScheme { name: Errors; value: string; } declare enum AddonType { highlight = "highlight", google_login = "google-login" } declare enum FieldType { text = "text", switch = "switch", number = "number", date = "date", radio = "radio", otp = "otp", time = "time", select = "select", password = "password", textarea = "textarea", checkbox = "checkbox", checkbox_group = "checkbox-group", g_recaptcha = "g-recaptcha", section_info = "section-info", slider = "slider", telephone = "telephone", add_image = "add-image", show_image = "show-image", add_video = "add-video", show_video = "show-video", drag_and_drop = "drag-and-drop" } declare enum Errors { required = "required", telephone = "telephone", email = "email", maxlength = "maxlength", minlength = "minlength", max = "max", min = "min", pattern = "pattern" } declare enum ButtonType { submit = "submit", close = "close", back = "back", test = "test" } declare enum ButtonType { SQUARE = "rounded-0", ROUNDED = "", ROUNDER = "rounded-xl", PILL = "rounded-pill", CIRCLE = "btn-circle" } interface DynamicSubmitEvent { forms: Partial[]; files: { images: any[]; videos: any[]; drag_and_drop: any[]; }; formEmittingIndex: number; emittedForms: Partial[]; } declare class DynamicFormComponent implements OnInit { private platformId; private recaptchaV3Service; private translate; formSchemes: DynamicFormScheme[]; loadSpinner: boolean; isSubmitFailed: boolean; errorMessage: string; isOnModal: boolean; disableSubmit: boolean; onSubmit: EventEmitter; onCloseForm: EventEmitter; loginWithGoogle: EventEmitter; onBack: EventEmitter; formValueChanges: EventEmitter; addonSubmit: EventEmitter; formInit: EventEmitter<{ id: string; form: FormGroup; }>; protected FieldTypesEnum: typeof FieldType; protected AddonsEnum: typeof AddonType; protected ButtonsEnum: typeof ButtonType; protected hrefTypes: typeof HrefTypes; protected addTree: any; protected addVideoTree: any; protected addDragAndDropTree: any; protected formGroup: FormGroup[]; protected emittedForms: any[]; constructor(platformId: Object, recaptchaV3Service: ReCaptchaV3Service, translate: TranslateService); ngOnInit(): void; private addFormControl; updateForm(formGroup: number, values: any): void; onSubmitForm(idx: number): { success: boolean; }; protected onTestSubmit(): void; protected onBackPage(page: number): void; protected onClose(): void; resetAndGoToPage(page: number): void; protected handleGoogleLoginV2(response: any): void; goToPage(page: number): void; isFormValid(idx: number): boolean; closeModal(): void; protected submitAddon(addon: AddonScheme): void; protected getTranslatedName(field: any, key?: string): string; protected onChooseMedia(event: any, id: string): void; protected getHighlightAddontext(addon: any, position: string): string; changeDescription(idx: number, description: string): void; changeDefaultValue(idx: number, formControlName: string, value: any): void; changeVisibility(idx: number, formControlName: string, visible: boolean): void; fillSelects(idx: number, formControlName: string, values: SelectValueScheme[]): void; changeRangeDate(idx: number, formControlName: string, minDate: { year: number; month: number; day: number; }, maxDate: { year: number; month: number; day: number; }): void; enableDates(idx: number, formControlName: string, values: any): void; disableDates(idx: number, formControlName: string, values: any): void; private updateField; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class DropFilesComponent { private translate; protected files: File[]; protected isDragOver: boolean; id: string; accept: string; maxFiles: number; fileSelected: EventEmitter; constructor(translate: TranslateService); protected onDragOver(event: DragEvent): void; protected onDragLeave(event: DragEvent): void; protected onDrop(event: DragEvent): void; protected onFileSelected(event: Event): void; protected bytesToMb(bytes: number): string; protected removeFile(index: number): void; protected get translateTitle(): "Trascina qui i file o clicca per selezionare" | "Drag and drop files or click to select"; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class ButtonLoaderComponent { loadSpinner: boolean; loadCheck: boolean; isFormValid: boolean; text: string; icon: string; circular: boolean; icon_position: string; type: string; color: string; text_color: string; margin: boolean; button_type: ButtonType; large: boolean; expand: boolean; pulse: boolean; onSubmit: EventEmitter; protected getClassFromIcon(): string; protected getTextColor(): string; protected onClick(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class FormElementComponent implements OnInit { private translate; id: string; type: FieldType; label: string; form: FormGroup; formName: string; disabled: boolean; autocomplete: string; default_value: any; values: SelectValueScheme[]; options: any; length: number; controls: string; width: string; src: string; displayMedia: string; multiple: boolean; accept: string; onChooseMedia: EventEmitter; minDate: any; maxDate: any; disabledDates: { year: number; month: number; day: number; }[]; enabledDates: { year: number; month: number; day: number; }[]; protected defMinDate: { year: number; month: number; day: number; }; protected defMaxDate: { year: number; month: number; day: number; }; version: string; meridian: boolean; seconds: boolean; errors: any[]; onChange: EventEmitter; protected showPassword: boolean; protected isDisabled: any; protected loadedFunc: boolean; protected FieldTypesEnum: typeof FieldType; constructor(translate: TranslateService); ngOnInit(): void; protected flushDates(): void; protected get formControl(): _angular_forms.AbstractControl | null; protected sanitizeInput(formControlName: string): void; protected getRealFieldType(fieldType: string): string; protected getSliderOptions(options: any): any; protected onOtpChange(event: any, formControlName: string): void; protected openSelectorFiles(id: string): void; protected toAdd(event: any, mode?: string): void; protected handleFiles(files: File[]): void; protected getTranslatedName(field: any, key?: string): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare global { interface Window { google: any; } } declare class GoogleLoginComponent implements OnInit, OnDestroy { googleClientId: string; loginWithGoogle: EventEmitter; gStyle: number; type: string; size: string; theme: string; text: string; shape: string; logo_alignment: string; auto_prompt: string; protected script?: HTMLScriptElement; constructor(googleClientId: string); ngOnInit(): void; ngOnDestroy(): void; protected handleGoogleLoginV2(response: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class DynamicModalComponent implements OnInit { dynForm: DynamicFormComponent | undefined; modalId: string; modalPopup: boolean; modalCloseButton: boolean; formSchemes: DynamicFormScheme[]; loadSpinner: boolean; isSubmitFailed: boolean; errorMessage: string; modalBackdrop: string | boolean; disableSubmit: boolean; onSubmit: EventEmitter; onCloseModal: EventEmitter; loginWithGoogle: EventEmitter; onBack: EventEmitter; formValueChanges: EventEmitter; formInit: EventEmitter<{ id: string; form: FormGroup; }>; protected isLoaded: boolean; constructor(); ngOnInit(): void; protected onClose(): void; protected onFormInit(event: any): void; isFormValid(idx: number): boolean; updateForm(idx: number, values: any): void; goToPage(page: number): void; protected onSubmitForm(event: any): void; protected onFormValueChanges(event: any): void; submitDynamicForm(idx: number): void; closeModal(): void; protected handleGoogleLoginV2(response: any): void; openModal(): void; changeDescription(idx: number, description: string): void; changeDefaultValue(idx: number, formControlName: string, value: any): void; changeVisibility(idx: number, formControlName: string, visible: boolean): void; fillSelects(idx: number, formControlName: string, values: SelectValueScheme[]): void; changeRangeDate(idx: number, formControlName: string, minDate: { year: number; month: number; day: number; }, maxDate: { year: number; month: number; day: number; }): void; enableDates(idx: number, formControlName: string, values: any): void; disableDates(idx: number, formControlName: string, values: any): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class Country { text?: string; code: string; country: string; } declare class PhoneFieldComponent implements OnInit { private translate; id: string; label: string; form: FormGroup | undefined; formName: string; onPhoneSelected: EventEmitter; protected countries: Country[]; protected selectedCountry: Country; protected phoneUtil: libphonenumber.PhoneNumberUtil; protected searchText: string; protected filteredPhoneNumbers: Country[]; constructor(translate: TranslateService); ngOnInit(): void; protected onSearchCountriesInput(): void; protected selectPhoneItem(phone: any): void; protected isValidField(phone: string): boolean; get phoneValue(): string; protected onTypeNumber(event: any): void; protected openPhoneSelect(): void; protected get translatePrefix(): "Seleziona Prefisso" | "Select Prefix"; protected get translateDescription(): "Inserisci il suffisso del tuo paese" | "Enter the suffix of your country"; protected get translateSearch(): "Cerca" | "Search"; protected get translateNoResults(): "Nessun risultato trovato" | "No results found"; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class GoogleRecaptchaComponent { id: string; form: FormGroup; formName: string; version: string; protected get formControl(): _angular_forms.AbstractControl | null; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class DynamicFormModule { static forRoot(sitegRecaptchaKey: string, googleClientId: string): ModuleWithProviders; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } declare const countries: Country[]; declare const linkValidator: ValidatorFn; declare const confirmPasswordValidator: ValidatorFn; export { AddonType, ButtonLoaderComponent, ButtonType, Country, DropFilesComponent, DynamicFormComponent, DynamicFormModule, DynamicFormService, DynamicModalComponent, Errors, FieldType, FormElementComponent, GOOGLE_CLIENT_ID_KEY, GoogleLoginComponent, HrefTypes, PhoneFieldComponent, confirmPasswordValidator, countries, linkValidator }; export type { AddonScheme, ButtonScheme, CustomValidatorScheme, DynamicFormScheme, DynamicSubmitEvent, ErrorScheme, FieldScheme, SelectValueScheme, ValidatorScheme };