import AccountManager from "../account"; import User, { UserInfos } from "./user"; export type ServerInfos = { id: number; name: string; icon: string; description: string; permissions: number[]; balance: number; created: string; node: string; owner: UserInfos; }; export declare function convertRawToServer(accountManager: AccountManager, raw: S): S extends ServerInfos[] ? Server[] : Server; export default class Server { private accountManager; constructor(accountManager: AccountManager, infos: ServerInfos); /** * The Internal Id of the Server * @since 0.1.1 */ id: number; /** * The Name of the Server * @since 0.1.1 */ name: string; /** * The Icon URL of the Server, always a 512x512 webp file * @since 0.1.13 */ iconURL: string; /** * The Description of the Server * @since 0.1.1 */ description: string; /** * The avaiable Balance of the Server * @since 0.1.1 */ balance: number; /** * The Permissions you have access to (will always be the full array if you are the owner) * @since 0.2.0 */ permissions: number[]; /** * The Date when the Server was created * @since 0.1.1 */ created: Date; /** * The Owner of this Server * @since 0.1.1 */ owner: User; /** * Edit this Server * @since 0.1.1 */ edit(data: { name?: string; description?: string; }): import("../..").Response; /** * Delete this Server * @since 0.1.1 */ delete(): import("../..").Response; }