import { Cardinality as RawCardinality } from "../ifaces"; import { Cardinality } from "./enums"; export declare namespace util { export function assertNever(arg: never, error?: Error): never; export function splitName(name: string): { mod: string; name: string; }; export function toIdent(name: string): string; export const deduplicate: (args: string[]) => string[]; export const getFromArrayMap: (map: Record, id: string) => T[]; type PropertyDef = { configurable?: boolean; enumerable?: boolean; writable?: boolean; value?: any; set?: (v: any) => any; get?: () => any; }; export const defineProperty: (obj: T, name: string, def: PropertyDef & ThisType) => T; export const defineGetter: (obj: T, name: string, getter: (this: T) => any) => T; export const defineMethod: (obj: T, name: string, method: (this: T) => any) => T; export function flatMap(array: T[], callbackfn: (value: T, index: number, array: T[]) => U[]): U[]; type ExcludeDollarPrefixed = S extends `$${string}` ? never : S; export type OmitDollarPrefixed = { [K in ExcludeDollarPrefixed]: O[K]; }; export function omitDollarPrefixed(object: O): OmitDollarPrefixed; export const parseCardinality: (cardinality: RawCardinality) => Cardinality; export {}; }