import { AnyThreadChannel, Client, DMChannel, Guild, GuildChannel, GuildMember, Message, NewsChannel, Role, Snowflake, TextChannel, ThreadChannel, User } from "discord.js"; export declare function createMockClient(): Client; export declare function sleep(ms: number): Promise; export declare function createMockGuild(client: Client, data?: {}): Guild; export declare function createMockUser(client: Client, data?: {}): User; export declare function createMockMember(guild: Guild, user: User, data?: {}): GuildMember; export declare function createMockTextChannel(client: Client, guildId: Snowflake, data?: {}): TextChannel; export declare function createMockMessage(client: Client, channel: TextChannel | DMChannel | NewsChannel | ThreadChannel, author: User, data?: {}): Message; export declare function createMockRole(guild: Guild, data?: {}, overrideId?: string | null): Role; export declare function createMockThread(channel: NewsChannel | GuildChannel): AnyThreadChannel; export type AssertTypeEquals = TActual extends TExpected ? true : false; /** * Assertion "function" for types * 1. First type parameter (TExpected) is the expected type * 2. Second type parameter (TActual) is the actual, tested type * 3. Third type parameter (TAssert) is either true or false, based on whether the first and second type should match * * For example: * ``` * assertTypeEquals(); // passes: string and string match, and third parameter was true * assertTypeEquals(); // error: string and number do not match, but third parameter was true * assertTypeEquals(); // passses: string and number do not match, and third parameter was false * ``` */ export declare function assertTypeEquals(): void;