73 lines
1.4 KiB
TypeScript
73 lines
1.4 KiB
TypeScript
import { IUser } from './IUser';
|
|
import { IAttachmentTranslations } from './IMessage';
|
|
|
|
export interface IAttachment {
|
|
ts?: string | Date;
|
|
title?: string;
|
|
type?: string;
|
|
description?: string;
|
|
title_link?: string;
|
|
image_url?: string;
|
|
image_type?: string;
|
|
video_url?: string;
|
|
video_type?: string;
|
|
audio_url?: string;
|
|
title_link_download?: boolean;
|
|
attachments?: IAttachment[];
|
|
fields?: IAttachment[];
|
|
image_dimensions?: { width?: number; height?: number };
|
|
image_preview?: string;
|
|
image_size?: number;
|
|
author_name?: string;
|
|
author_icon?: string;
|
|
actions?: { type: string; msg: string; text: string }[];
|
|
message_link?: string;
|
|
text?: string;
|
|
short?: boolean;
|
|
value?: string;
|
|
author_link?: string;
|
|
color?: string;
|
|
thumb_url?: string;
|
|
collapsed?: boolean;
|
|
audio_type?: string;
|
|
translations?: IAttachmentTranslations;
|
|
}
|
|
|
|
export interface IServerAttachment {
|
|
_id: string;
|
|
name: string;
|
|
size: number;
|
|
type: string;
|
|
rid: string;
|
|
userId: string;
|
|
AmazonS3: { path: string };
|
|
store: string;
|
|
identify: {
|
|
format: string;
|
|
size: {
|
|
width: number;
|
|
height: number;
|
|
};
|
|
};
|
|
complete: boolean;
|
|
etag: string;
|
|
path: string;
|
|
progress: boolean;
|
|
token: string;
|
|
uploadedAt: string | Date;
|
|
uploading: boolean;
|
|
url: string;
|
|
user: Pick<IUser, '_id' | 'username' | 'name'>;
|
|
}
|
|
|
|
export interface IShareAttachment {
|
|
filename: string;
|
|
description?: string;
|
|
size: number;
|
|
mime?: string;
|
|
path: string;
|
|
canUpload: boolean;
|
|
error?: any;
|
|
uri: string;
|
|
}
|