import { Source } from './state/app-state.ts'; export declare function mapObject(o: any, f: (key: string, value: any) => any, ifPred: (key: string) => boolean): any[]; type Killer = () => void; export type AbortablePromise = Promise & { kill: Killer; }; export declare function AbortablePromise(f: (resolve: (result: T) => void, reject: (error: any) => void) => Killer): AbortablePromise; export declare function turnIntoDelayableExecution(delay: number, job: (...args: T) => AbortablePromise): (...args: T) => ({ now }: { now: boolean; }) => AbortablePromise; export declare function validateStringEnum(s: T, values: T[], orElse?: (s: string) => T): T; export declare const validateBoolean: (s: boolean, orElse?: () => boolean) => boolean; export declare const validateString: (s: string, orElse?: () => string) => string; export declare const validateArray: (a: Array, validateElement: (e: T) => T, orElse?: () => T[]) => T[]; export declare function formatBytes(n: number): string; export declare function formatMillis(n: number): string; export declare function registerCustomAppHeightCSSProperty(): void; export declare function isInStandaloneMode(): boolean; export declare function downloadUrl(url: string, filename: string): void; export declare function fetchSource(fs: FS, { content, path, url }: Source): Promise; export declare function readFileAsDataURL(file: File): Promise; export {}; //# sourceMappingURL=utils.d.ts.map