UNPKG

guilded.ts

Version:

A powerful NPM module that allows you to easily interact with the Guilded API.

100 lines 3.71 kB
import { APIServerMember, APIServerMemberSummary, APISocialLink } from 'guilded-api-typings'; import { Base } from '../Base'; import { Server } from './Server'; import { User } from '../User'; import { ServerMemberRoleManager } from '../../managers/server/ServerMemberRoleManager'; import { FetchOptions } from '../../managers/BaseManager'; import { Collection } from '@discordjs/collection'; /** * Represents a server member on Guilded. * @example new ServerMember(server, rawMember); */ export declare class ServerMember extends Base { readonly server: Server; readonly raw: APIServerMember | APIServerMemberSummary; /** The user the server member belongs to. */ readonly user: User; /** The IDs of roles the server member has. */ roleIds: number[]; /** The nickname of the server member. */ nickname?: string; /** The date the member joined the server. */ readonly joinedAt?: Date; /** Whether the server member is the server owner. */ readonly isOwner?: boolean; /** The social links of the server member. */ readonly socialLinks: Collection<string, APISocialLink>; /** The manager of roles that belong to the server member. */ readonly roles: ServerMemberRoleManager; /** * @param server The server the member belongs to. * @param raw The raw data of the server member. * @param cache Whether to cache the server member. */ constructor(server: Server, raw: APIServerMember | APIServerMemberSummary, cache?: boolean); /** Whether the server member is cached. */ get isCached(): boolean; /** The timestamp the member joined the server. */ get joinedTimestamp(): number | undefined; /** * Fetch the server member. * @param options The options to fetch the server member with. * @returns The fetched server member. * @example member.fetch(); */ fetch(options?: FetchOptions): Promise<this>; /** * Set the nickname of the server member. * @param nickname The nickname of the server member. * @returns The edited server member. * @example member.setNickname('new nickname'); */ setNickname(nickname: string): Promise<this>; /** * Remove the nickname of the server member. * @returns The edited server member. * @example member.removeNickname(); */ removeNickname(): Promise<this>; /** * Kick the server member. * @returns The kicked member. * @example member.kick(); */ kick(): Promise<this>; /** * Ban the server member. * @param reason The reason of the ban. * @returns The created server ban. * @example member.ban(); */ ban(reason?: string): Promise<import("./ServerBan").ServerBan>; /** * Unban the server member. * @returns The unbanned member. * @example member.unban(); */ unban(): Promise<this>; /** * Award XP to the server member. * @param amount The amount of XP to award. * @returns The total amount of XP the server member has. * @example member.awardXp(100); */ awardXp(amount: number): Promise<number>; /** * Set XP of the server member. * @param amount The total XP of the server member. * @returns The total amount of XP the server member has. * @example member.setXp(100); */ setXp(amount: number): Promise<number>; /** * Fetch a social link of the server member. * @param type The type of social link to fetch. * @returns The fetched social link. * @example member.fetchSocialLink('youtube'); */ fetchSocialLink(type: string): Promise<APISocialLink>; } //# sourceMappingURL=ServerMember.d.ts.map