import { IPv4 } from "./ip"; /** * ログモデル * * ログファイルの一行文のデータをモデル化したクラス */ export declare class Log { readonly timestamp: Date; readonly address: IPv4; readonly time: number | null; constructor(timestamp: Date, address: IPv4, time: number | null); static parse(rawLogText: string): Log; isSameAddress(target: Log): boolean; get isTimeout(): boolean; } declare type LogsFilterByFailureOptionType = { thresholds: { timeout: number; }; }; /** * ログコレクションモデル * * 複数のログモデルを取り扱うクラス * 特有のグルーピング関数やフィルタ関数などを実装 */ export declare class Logs extends Array { groupByAddress(): Map; groupByTimestamp(): Map; findNext(log: Log): Log | undefined; sortByTimestamp(direction?: "asc" | "desc"): Logs; filterByTimeout(flag?: boolean): Logs; filterByFailure(option?: LogsFilterByFailureOptionType): Logs; static get [Symbol.species](): ArrayConstructor; } export {};