import { type PlatformTag, type StackAbbr } from '../models/game.interface.js'; /** Waits a specified number of `ms`. */ export declare function sleep(ms: number): Promise; export declare function extractKeys(keysObj: T): Array; /** Mapped type that removes optional properties. */ export type OnlyRequiredPropertiesOf = { [K in keyof T as T[K] extends Required[K] ? K : never]: T[K]; }; /** Creates a new type based on `T` with properties specified by `K` made required. * * @template T - The original object type. * @template K - A union of keys from the object type `T` that should be made required. */ export type MakeRequired = Omit & Required>; /** Creates a new type based on `T` with properties specified by `K` made optional. * * @template T - The original object type. * @template K - A union of keys from the object type `T` that should be made optional. */ export type MakeOptional = Omit & Partial>; /** * Parses a numerical value from a string or DOM Node, returning said value or `NaN`. * * Prior to parsing, strings are trimmed and occurrences of `,`, `%`, and `\s.+` are removed. * * @example * parseNumber("5,001.5% (25.99%)") // 5001.5 */ export declare function parseNumber(input: string | Node | null | undefined): number; export declare function isStackAbbr(value: string | null | undefined): value is StackAbbr; export declare function getStackAbbr(fullRegionName: string): StackAbbr | null; export declare function isPlatformTag(value: string | null | undefined): value is PlatformTag; export declare function parsePlatformTags(parent: ParentNode): PlatformTag[];