mirror of
https://github.com/qwerinope/qweribot.git
synced 2025-12-19 08:41:39 +01:00
43 lines
1.1 KiB
TypeScript
43 lines
1.1 KiB
TypeScript
import PocketBase, { BaseModel, RecordService } from 'pocketbase'
|
|
import { inventory } from "./userHelper"
|
|
|
|
export interface User extends BaseModel {
|
|
twitchid: string,
|
|
firstname: string,
|
|
inventory: inventory,
|
|
itemuses: inventory,
|
|
balance: number,
|
|
lastlootbox: string
|
|
}
|
|
|
|
export interface TTVAuth extends BaseModel {
|
|
auth: JSON,
|
|
main: boolean
|
|
}
|
|
|
|
export interface Timeout extends BaseModel {
|
|
source: 'silverbullet' | 'grenade' | 'blaster' | 'tnt',
|
|
attacker: string,
|
|
target: string,
|
|
attackername: string,
|
|
targetname: string
|
|
}
|
|
|
|
export interface UsedItem extends BaseModel {
|
|
name: string,
|
|
user: string
|
|
}
|
|
|
|
interface TypedPocketBase extends PocketBase {
|
|
collection(idOrName: string): RecordService,
|
|
collection(idOrName: 'users'): RecordService<User>,
|
|
collection(idOrName: 'ttvauth'): RecordService<TTVAuth>
|
|
collection(idOrName: 'timeouts'): RecordService<Timeout>
|
|
collection(idOrName: 'itemuses'): RecordService<UsedItem>
|
|
}
|
|
|
|
|
|
const PBURL = process.env.PBURL ?? 'http://pocketbase:8090'
|
|
const pb = new PocketBase(PBURL) as TypedPocketBase
|
|
export default pb
|