-
Notifications
You must be signed in to change notification settings - Fork 21
Expand file tree
/
Copy pathtypes.ts
More file actions
27 lines (26 loc) · 1.08 KB
/
types.ts
File metadata and controls
27 lines (26 loc) · 1.08 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import { Client, Collection } from 'discord.js';
import ExpiringDocumentManager from './Classes/ExpiringDocumentManager.ts';
import type { IInfraction } from './Schemas/Infractions.ts';
import type { IGiveaway } from './Schemas/Giveaways.ts';
import type { IReminder } from './Schemas/Reminders.ts';
export interface GuardianClient extends Client {
commands: Collection<string, any>;
subCommands: Collection<string, any>;
expiringDocumentsManager: {
infractions: ExpiringDocumentManager<IInfraction>;
giveaways: ExpiringDocumentManager<IGiveaway>;
reminders: ExpiringDocumentManager<IReminder>;
};
shardInfo?: {
id: number;
count: number;
};
shardManager?: {
broadcastToAll: (event: string, ...args: any[]) => Promise<any[]>;
sendToShard: (shardId: number, event: string, ...args: any[]) => Promise<boolean>;
getGlobalStats: () => Promise<any>;
findUserGuilds: (userId: string) => Promise<string[]>;
restartShard: (shardId: number) => Promise<boolean>;
getShardHealth: () => any;
};
}