import { AttachmentType } from "../../../Attachments"; import { Datetime } from "../../../Time"; import { BlockDescription } from "../../../aggregate/Blocks"; import { WeekdayHourEntry } from "../../../aggregate/Common"; interface MostActiveEntry { messages: number; at?: Datetime; } export interface MessagesStats { /** Total number of messages sent */ total: number; /** Total number of messages edited */ edited: number; /** Number of active days given the time filter */ numActiveDays: number; /** Number of messages that contain attachments of each type */ withAttachmentsCount: { [type in AttachmentType]: number; }; /** Number of messages that contain text */ withText: number; /** Number of messages that contain links */ withLinks: number; counts: { /** Number of messages edited by each author */ authors: number[]; /** Number of messages edited in each channel */ channels: number[]; }; weekdayHourActivity: WeekdayHourEntry[]; mostActive: { hour: MostActiveEntry; day: MostActiveEntry; month: MostActiveEntry; year: MostActiveEntry; }; } declare const _default: BlockDescription<"messages/stats", MessagesStats, undefined>; export default _default;