1
0
mirror of https://github.com/spacebarchat/server.git synced 2024-09-22 18:51:36 +02:00
server/dist/models/Message.d.ts
Flam3rboy 514afaca69 AuditLog
2021-03-04 21:59:49 +01:00

118 lines
2.8 KiB
TypeScript

/// <reference path="../util/MongoBigInt.d.ts" />
import { Schema, Document } from "mongoose";
export interface Message extends Document {
id: bigint;
channel_id: bigint;
guild_id?: bigint;
author_id?: bigint;
webhook_id?: bigint;
application_id: bigint;
content: string;
timestamp: number;
edited_timestamp: number;
tts: boolean;
mention_everyone: boolean;
mention_user_ids: bigint[];
mention_role_ids: bigint[];
mention_channels_ids: bigint[];
attachments: Attachment[];
embeds: Embed[];
reactions?: Reaction[];
nonce?: string | number;
pinned: boolean;
type: MessageType;
activity?: {
type: number;
party_id: string;
};
flags?: bigint;
stickers?: [];
message_reference?: {
message_id: bigint;
channel_id?: bigint;
guild_id?: bigint;
};
}
export declare enum MessageType {
DEFAULT = 0,
RECIPIENT_ADD = 1,
RECIPIENT_REMOVE = 2,
CALL = 3,
CHANNEL_NAME_CHANGE = 4,
CHANNEL_ICON_CHANGE = 5,
CHANNEL_PINNED_MESSAGE = 6,
GUILD_MEMBER_JOIN = 7,
USER_PREMIUM_GUILD_SUBSCRIPTION = 8,
USER_PREMIUM_GUILD_SUBSCRIPTION_TIER_1 = 9,
USER_PREMIUM_GUILD_SUBSCRIPTION_TIER_2 = 10,
USER_PREMIUM_GUILD_SUBSCRIPTION_TIER_3 = 11,
CHANNEL_FOLLOW_ADD = 12,
GUILD_DISCOVERY_DISQUALIFIED = 14,
GUILD_DISCOVERY_REQUALIFIED = 15,
REPLY = 19,
APPLICATION_COMMAND = 20
}
export interface Attachment {
id: bigint;
filename: string;
size: number;
url: string;
proxy_url: string;
height: number;
width: number;
}
export interface Embed {
title?: string;
type?: string;
description?: string;
url?: string;
timestamp?: number;
color?: number;
footer?: {
text: string;
icon_url?: string;
proxy_icon_url?: string;
};
image?: EmbedImage;
thumbnail?: EmbedImage;
video?: EmbedImage;
provider?: {
name?: string;
url?: string;
};
author?: {
name?: string;
url?: string;
icon_url?: string;
proxy_icon_url?: string;
};
fields?: {
name: string;
value: string;
inline?: boolean;
}[];
}
export interface EmbedImage {
url?: string;
proxy_url?: string;
height?: number;
width?: number;
}
export interface Reaction {
count: number;
emoji: PartialEmoji;
}
export interface PartialEmoji {
id?: bigint;
name: string;
animated?: boolean;
}
export interface AllowedMentions {
parse?: ("users" | "roles" | "everyone")[];
roles?: bigint[];
users?: bigint[];
replied_user?: boolean;
}
export declare const MessageSchema: Schema<Document<any>, import("mongoose").Model<Document<any>>, undefined>;
export declare const MessageModel: import("mongoose").Model<Message>;