/** * @file Internal utility functions/types */ import { Snowflake } from "discord.js"; /** */ export type Awaitable = T | Promise; export type WithRequiredProps = T & { [PK in K]-?: Exclude; }; export declare function get(obj: TObj, path: string, def?: any): unknown; export declare const userMentionRegex: RegExp; export declare const channelMentionRegex: RegExp; export declare const roleMentionRegex: RegExp; export declare const snowflakeRegex: RegExp; export declare function getUserId(str: string): Snowflake | null; export declare function getChannelId(str: string): Snowflake | null; export declare function getRoleId(str: string): Snowflake | null; export declare const noop: () => void; export declare const typedKeys: >(o: T) => (keyof T)[]; export type KeyOfMap> = M extends Map ? K : never; export declare function indexBy(arr: Obj[], key: Key): Map;