out-of-your-element/types.d.ts

130 lines
2.1 KiB
TypeScript
Raw Normal View History

2023-05-04 20:25:00 +00:00
export type AppServiceRegistrationConfig = {
id: string
as_token: string
hs_token: string
url: string
sender_localpart: string
2023-07-03 05:20:24 +00:00
namespaces: {
users: {
exclusive: boolean
regex: string
}[]
aliases: {
exclusive: boolean
regex: string
}[]
}
2023-05-04 20:25:00 +00:00
protocols: [string]
rate_limited: boolean
ooye: {
namespace_prefix: string
max_file_size: number
server_name: string
}
2023-05-04 20:25:00 +00:00
}
2023-06-30 03:15:34 +00:00
export type WebhookCreds = {
id: string
token: string
}
export namespace Event {
2023-07-02 13:06:05 +00:00
export type Outer<T> = {
type: string
room_id: string
sender: string
content: T
origin_server_ts: number
unsigned: any
event_id: string
}
export type StateOuter<T> = Outer<T> & {
state_key: string
}
2023-08-16 05:03:05 +00:00
export type ReplacementContent<T> = T & {
"m.new_content": T
"m.relates_to": {
rel_type: string // "m.replace"
event_id: string
}
}
export type BaseStateEvent = {
type: string
room_id: string
sender: string
content: any
state_key: string
origin_server_ts: number
unsigned: any
event_id: string
user_id: string
age: number
replaces_state: string
prev_content?: any
}
export type M_Room_Message = {
2023-08-25 13:43:17 +00:00
msgtype: "m.text" | "m.emote"
body: string
2023-08-25 11:27:44 +00:00
format?: "org.matrix.custom.html"
formatted_body?: string
}
2023-05-04 20:25:00 +00:00
export type M_Room_Member = {
membership: string
display_name?: string
avatar_url?: string
}
2023-07-04 05:19:17 +00:00
export type M_Room_Avatar = {
discord_path?: string
url?: string
}
2023-07-04 05:19:17 +00:00
export type M_Reaction = {
"m.relates_to": {
rel_type: "m.annotation"
event_id: string // the event that was reacted to
key: string // the unicode emoji, mxc uri, or reaction text
}
}
2023-05-04 20:25:00 +00:00
}
export namespace R {
export type RoomCreated = {
room_id: string
}
export type RoomJoined = {
room_id: string
}
export type RoomMember = {
avatar_url: string
display_name: string
}
export type FileUploaded = {
content_uri: string
}
2023-05-07 20:27:42 +00:00
export type Registered = {
/** "@localpart:domain.tld" */
user_id: string
home_server: string
access_token: string
device_id: string
}
export type EventSent = {
event_id: string
}
export type EventRedacted = {
event_id: string
}
2023-05-04 20:25:00 +00:00
}