59 lines
1.3 KiB
TypeScript
59 lines
1.3 KiB
TypeScript
import dotenv from "dotenv"
|
|
dotenv.config()
|
|
|
|
interface options {
|
|
[k: string]: boolean | number | string | undefined
|
|
}
|
|
interface bodyParserOptions {
|
|
urlEncodedOptions: options,
|
|
jsonOptions: options
|
|
}
|
|
export interface Config {
|
|
server: { bodyParser: bodyParserOptions },
|
|
bot: {
|
|
debug: boolean
|
|
silent: boolean
|
|
token: string
|
|
guild_id: string
|
|
client_id: string
|
|
jellfin_token: string
|
|
jellyfin_url: string
|
|
port: number
|
|
workaround_token: string
|
|
watcher_role: string
|
|
jf_admin_role: string
|
|
}
|
|
}
|
|
export const config: Config = {
|
|
server: {
|
|
bodyParser: {
|
|
urlEncodedOptions: {
|
|
inflate: true,
|
|
limit: '5mb',
|
|
type: 'application/x-www-form-urlencoded',
|
|
extended: true,
|
|
parameterLimit: 1000
|
|
},
|
|
jsonOptions: {
|
|
inflate: true,
|
|
limit: '5mb',
|
|
type: 'application/json',
|
|
strict: true
|
|
}
|
|
}
|
|
},
|
|
bot: {
|
|
debug: true,
|
|
silent: false,
|
|
port: 1234,
|
|
token: process.env.BOT_TOKEN ?? "",
|
|
guild_id: process.env.GUILD_ID ?? "",
|
|
client_id: process.env.CLIENT_ID ?? "",
|
|
jellfin_token: process.env.JELLYFIN_TOKEN ?? "",
|
|
jellyfin_url: process.env.JELLYFIN_URL ?? "",
|
|
workaround_token: process.env.TOKEN ?? "",
|
|
watcher_role: process.env.WATCHER_ROLE ?? "",
|
|
jf_admin_role: process.env.ADMIN_ROLE ?? ""
|
|
}
|
|
}
|