1
0
mirror of https://github.com/toast-ts/Daggerbot-TS.git synced 2024-11-17 04:10:59 -05:00
Daggerbot-TS/src/interfaces.d.ts

189 lines
4.3 KiB
TypeScript
Raw Normal View History

2024-01-22 16:57:07 -05:00
import {ColorResolvable, PresenceData, APIUser} from 'discord.js';
export interface Punishment {
2023-12-24 10:21:40 -05:00
case_id: number;
2023-03-05 05:04:10 -05:00
type: string;
2024-02-03 21:09:33 -05:00
member_name: string;
2023-03-05 05:04:10 -05:00
member: string;
moderator: string;
expired?: boolean;
time: number;
reason: string;
endTime?: number;
cancels?: number;
duration?: number;
}
export interface FSData {
2023-05-20 03:17:23 -04:00
server: {
dayTime: number,
game: string,
mapName: string,
mapSize: number,
mapOverviewFilename: string,
money: number,
name: string,
server: string,
version: string
},
slots: {
capacity: number,
used: number,
2023-12-24 10:21:40 -05:00
players: FSPlayer[]
2023-09-30 13:44:38 -04:00
},
2023-12-24 10:21:40 -05:00
vehicles: FSVehicle[]
2023-09-30 13:44:38 -04:00
}
interface FSVehicle {
name: string,
category: string,
type: string,
x: number,
y: number,
z: number,
2023-12-24 10:21:40 -05:00
fills: FSVehicleFill[],
2023-09-30 13:44:38 -04:00
controller: string
}
interface FSVehicleFill {
type: string,
level: number
}
2023-05-07 04:41:20 -04:00
export interface FSPlayer {
2023-12-24 10:21:40 -05:00
isUsed?: boolean,
2023-03-05 05:04:10 -05:00
isAdmin: boolean,
uptime: number,
name: string
}
export interface FSCareerSavegame {
2023-05-20 03:17:23 -04:00
settings: {
2023-10-07 17:01:16 -04:00
savegameName: string,
creationDate: string,
mapId: string,
mapTitle: string,
saveDataFormatted: string,
saveDate: string,
resetVehicles: string,
trafficeEnabled: string,
stopAndGoBraking: string,
trailerFillLimit: string,
automaticMotorStartEnabled: string,
growthMode: string,
fixedSeasonalVisuals: string,
plannedDaysPerPeriod: string,
fruitDestruction: string,
plowingRequiredEnabled: string,
stonesEnabled: string,
weedsEnabled: string,
limeRequired: string,
isSnowEnabled: string,
fuelUsage: string,
helperBuyFuel: string,
helperBuySeeds: string,
helperSlurrySource: string,
helperManureSource: string,
densityMapRevision: string,
terrainTextureRevision: string,
terrainLodTextureRevision: string,
splitShapesRevision: string,
tipCollisionRevision: string,
placementCollisionRevision: string,
navigationCollisionRevision: string,
mapDensityMapRevision: string,
mapTerrainTextureRevision: string,
mapTerrainLodTextureRevision: string,
mapSplitShapesRevision: string,
mapTipCollisionRevision: string,
mapPlacementCollisionRevision: string,
mapNavigationCollisionRevision: string,
difficulty: string,
economicDifficulty: string,
dirtInterval: string,
timeScale: string,
autoSaveInterval: string
2023-05-20 03:17:23 -04:00
},
statistics: {
2023-10-07 17:01:16 -04:00
money: string,
playTime: string
2023-05-20 03:17:23 -04:00
},
slotSystem: {
2023-10-07 17:01:16 -04:00
slotUsage: string
2023-05-20 03:17:23 -04:00
}
}
2022-12-29 05:10:13 -05:00
export interface Config {
2023-10-07 17:01:16 -04:00
configName: string,
2023-12-24 10:21:40 -05:00
embedColor: ColorResolvable,
embedColorGreen: ColorResolvable,
embedColorYellow: ColorResolvable,
embedColorRed: ColorResolvable,
embedColorInvis: ColorResolvable,
embedColorBCA: ColorResolvable,
embedColorXmas: ColorResolvable,
2023-03-05 05:04:10 -05:00
LRSstart: number,
2023-12-24 10:21:40 -05:00
whitelistedServers: string[],
2023-05-20 03:17:23 -04:00
botSwitches: {
2023-08-14 04:33:49 -04:00
dailyMsgsBackup: boolean,
2023-05-20 03:17:23 -04:00
registerCommands: boolean,
commands: boolean,
logs: boolean,
2023-12-24 10:21:40 -05:00
mpSys: boolean,
2023-05-20 03:17:23 -04:00
buttonRoles: boolean,
automod: boolean,
autores: boolean
},
2023-12-24 10:21:40 -05:00
botPresence: PresenceData,
whitelist: string[],
contribList: string[],
dcServer: {
2023-05-20 03:17:23 -04:00
id: string,
2023-12-24 10:21:40 -05:00
staffRoles: string[],
2023-05-20 03:17:23 -04:00
roles: {
admin: string,
bottech: string,
dcmod: string,
mpmanager: string,
mpmod: string,
vtcmanager: string,
vtcstaff: string,
ytmod: string,
mphelper: string,
mpplayer: string,
vtcmember: string
},
channels: {
errors: string,
thismeanswar: string,
2023-08-24 19:15:56 -04:00
bot_suggestions: string,
2023-05-20 03:17:23 -04:00
bot_status: string,
logs: string,
welcome: string,
botcommands: string,
bankick_log: string,
punishment_log: string,
2023-10-07 04:48:39 -04:00
dcmod_chat: string,
2023-12-25 20:05:24 -05:00
mpmod_chat: string,
multifarm_chat: string
pw_list: string
2023-05-20 03:17:23 -04:00
}
}
2023-09-30 13:44:38 -04:00
}
// Credits to FlyingSixtySix/neurobot for inspiration.
// https://github.com/FlyingSixtySix/neurobot/blob/0dee4ea4f72872e2df240700eb56e1d38da1f8bb/src/interactions/jp.ts#L37-L85
export interface RawGatewayPacket<T> {
t: 'MESSAGE_DELETE'|'MESSAGE_UPDATE';
d: T;
}
export interface RawMessageDelete {
id: string,
channel_id: string,
guild_id: string
}
export interface RawMessageUpdate {
id: string,
channel_id: string,
guild_id: string,
content: string,
embeds: any[],
components: any[],
attachments: any[],
2024-01-22 16:57:07 -05:00
author: APIUser
member: { roles: any[] }
}