import { Observable } from 'rxjs'; import { ProcessedField } from '../components/forms/form.interfaces'; declare global { interface String { process(data: any): string; decamelify(): string; capitalizeFirstLetter(): string; } interface Math { randomInt(min: number, max: number): number; } } export declare function init(): void; export declare function processExpression(expression: string, data: any | ProcessedField[]): string; export declare function fieldsArrayToObject(fields: ProcessedField[]): any; export declare function downloadFile(content: any, fileName: any, contentType: any, beautify?: boolean): void; export declare function simpleClone(obj: any): any; declare global { interface Array { delete(elements: T[] | T): void; last(): T; nextTo(current: T): T; getUniqueByProperty(prop: string): T[]; } } export declare function Required(target: object, propertyKey: string): void; export declare function delay(duration?: number): Promise; export declare function wrapDataWithObservable(data: any, init_timeout?: number): Observable; export declare function wrapDataWithPromise(data: T, init_timeout?: number): Promise; export declare function errorToString(error: Error | string): string; export declare function blobToText(blob: Blob): Promise; export declare function makeResizable(el: HTMLElement, container: string | HTMLElement, resizer: HTMLElement, minimum_width?: number, maximum_width_gap?: number): void;