import * as Express from "express";
import * as Mongoose from "mongoose";
import { ILog } from "./db/LogSchema";
interface MinimalyticsOpt {
    express: Express.Application;
    mongoose: Mongoose.Mongoose;
    username: string;
    password: string;
    collection: string;
    deltaMs?: number;
    validPaths?: Array<string | RegExp>;
    debug?: boolean;
}
declare class Minimalytics {
    private static readonly TAG;
    private static instance;
    private opt;
    readonly logModel: Mongoose.Model<ILog>;
    static init(opt: MinimalyticsOpt): Minimalytics;
    private constructor();
    private use;
    private handleBasicAuthRequests;
    private handleAnalyticsDashboardRequests;
    private getTodayViews;
    private getThisMonthViews;
    private getTotalViews;
    private getViewsGroupedByCountry;
    private log;
}
export default Minimalytics;
