import type { DMChannelStructure, MessageStructure, UserStructure } from '../client'; import { type MessageCreateBodyRequest, type ObjectToLower } from '../common'; import type { ImageOptions } from '../common/types/options'; import type { APIUser } from '../types'; import { DiscordBase } from './extra/DiscordBase'; export interface User extends ObjectToLower { } export declare class User extends DiscordBase { get tag(): string; get name(): string; /** * Fetch user */ fetch(force?: boolean): Promise; /** * Open a DM with the user */ dm(force?: boolean): Promise; write(body: MessageCreateBodyRequest): Promise; defaultAvatarURL(): string; avatarURL(options?: ImageOptions): string; avatarDecorationURL(options?: ImageOptions): string | undefined; bannerURL(options?: ImageOptions): string | undefined; presence(): import("..").ReturnCache<(Omit & { id: string; user_id: string; } & { guild_id: string; }) | undefined>; toString(): `<@${string}>`; }