/** Unix time, the number of seconds elapsed since January 1, 1970 UTC. */ export declare function unixTime(): number; /** `{ a: '1', b: null }` <-> `a=1&b` */ export type QueryParams = Record; /** 简易的 query parse 实现,也可用于简单的 application/x-www-form-urlencoded 反序列化 */ export declare function parseQuery(querystring: string): QueryParams; /** 简易的 query stringify 实现,也可用于简单的 application/x-www-form-urlencoded 序列化 */ export declare function stringifyQuery(params: QueryParams): string; export declare function uuid(length?: number): string; export declare function mapObj(obj: Record, mapper: (i: I) => O): Record; export type DeferedStatus = 'pending' | 'resolved' | 'rejected'; export type Resolve = (value: T | PromiseLike) => void; export type Reject = (reason?: unknown) => void; export type Defered = { resolve: Resolve; reject: Reject; promise: Promise; status: DeferedStatus; value: T | null; }; export declare function createDefered(): Defered; export declare function wait(ms: number): Promise; export declare class TimeoutError extends Error { name: string; } export declare function waitTimeout(timeout: number, operation: string): Promise; /** 被取消的操作会抛出的异常 */ export declare class AbortError extends Error { name: string; } /** 将任意类型的异常转换为用于上报的 `err_msg` & `err_desc` */ export declare function getErrInfo(err: unknown): { err_msg: string; err_desc: string; }; /** 将时间点相减,用于日志上报:1) 处理时间点缺失的逻辑 2) 单位 `ms` 转为上报需要的 `s` */ export declare function timeMinus(t1: number | undefined, t2: number | undefined): number; /** 毫秒转换为秒 */ export declare function formatMillisecondToSecond(time: number): number; /** hostname (`${host}:${port}`) -> host + port */ export declare function parseHost(hostname: string, defaultPort?: number): readonly [string, number]; export declare function getExt(pathname: string): string; export declare function isM3u8Url(url: string): boolean; export declare function isFlvUrl(url: string): boolean;