/// import { FmtString } from './formatting'; import { Deunionize, UnionKeys } from './deunionize'; export declare const env: NodeJS.ProcessEnv; export type Any = {} | undefined | null; export type Expand = T extends object ? T extends infer O ? { [K in keyof O]: O[K]; } : never : T; export type MaybeArray = T | T[]; export type MaybePromise = T | Promise; export type NonemptyReadonlyArray = readonly [T, ...T[]]; export type ExclusiveKeys = keyof Omit; export declare function fmtCaption(extra?: Extra): Extra extends undefined ? undefined : Omit & { caption?: string; }; export type DistinctKeys = Exclude, keyof T>; export type KeyedDistinct> = Record & Deunionize, T>; export type Keyed> = Record & Deunionize, T>; /** Construct a generic type guard */ export type Guard = (x: X) => x is Y; /** Extract the guarded type from a type guard, defaults to never. */ export type Guarded = F extends (x: any) => x is infer T ? T : never; export declare function zip(xs: Iterable, ys: Iterable): Iterable; export declare function indexed(target: T, indexer: (index: number) => U): T; //# sourceMappingURL=util.d.ts.map