UNPKG

db-discord

Version:

db-discord is a library that uses discord guilds and text channels as databases. db-discord relies on discord.js

38 lines (37 loc) 1.63 kB
import * as Discord from "db-discord-discord.js"; import { Table } from "./Table"; import { LongTable } from "./LongTable"; import { FileTable } from "./FileTable"; import { ShortTable } from "./ShortTable"; import { KeyPairValue } from "./utilities"; export declare type TableType = "long" | "short" | "file"; export interface MetaTableData { name: string; id: string; objectTypes: { [property: string]: string; } | null; type: TableType; } export declare class discordDB { private guild; private channels; metatable: ShortTable<MetaTableData>; tables: KeyPairValue<MetaTableData, Table<any>>[]; private constructor(); static init(guild: Discord.Guild): Promise<discordDB>; getShortTableFromName<T>(name: string): ShortTable<T> | null; getLongTableFromName<T>(name: string): LongTable<T> | null; getFileTableFromName(id: string): FileTable | null; getShortTableFromID<T>(id: string): ShortTable<T> | null; getLongTableFromID<T>(id: string): LongTable<T> | null; getFileTableFromID(id: string): FileTable | null; createNewShortTable<T>(name: string): Promise<ShortTable<T>>; createNewLongTable<T>(name: string): Promise<LongTable<T>>; createNewFileTable(name: string): Promise<FileTable>; getOrCreateShortTable<T>(name: string): Promise<ShortTable<T>>; getOrCreateLongTable<T>(name: string): Promise<LongTable<T>>; getOrCreateFileTable(name: string): Promise<FileTable>; deleteTable(table: Table<any>): Promise<{}>; protected addToMetatable(table: Table<any>): Promise<string>; }