@cull/pore
Version:
An email data analysis library.
46 lines (45 loc) • 1.36 kB
TypeScript
import { Moment } from 'moment';
import Datum from './datum';
import Data from './data';
export declare const dateKeyFormat: string;
/**
* Datum collection analyzing the chronology of email.
*/
export default class Chronology extends Data {
/**
* The minimum and maximum date of the data
*
* [min, max]
*/
extent: [Moment, Moment];
/**
* Data grouped by date
*
* Keyed by date as `dateKeyFormat` string value
*/
byDate: Map<string, Datum[]>;
/**
* Data grouped by hour.
*
* Keyed by hour `0-23`
*/
byHour: Map<number, Datum[]>;
/**
* Data grouped by day of the week.
*
* Keyed for Mon-Sun as `0-6`
* @link https://en.wikipedia.org/wiki/ISO_week_date
*/
byWeekday: Map<number, Datum[]>;
/**
* Volume of messages received by hour, by day of week.
*
* Keyed first by day of week, Mon-Sun as `0-6`, then hour `0-23`
*/
byHourByWeekday: Map<number, Map<number, Datum[]>>;
protected compute(): void;
}
export declare let chronologyByDate: (extent: [Moment, Moment]) => Map<string, Datum[]>;
export declare let chronologyByHour: () => Map<number, Datum[]>;
export declare let chronologyByWeekday: () => Map<number, Datum[]>;
export declare let chronologyByHourByWeekday: () => Map<number, Map<number, Datum[]>>;