import { AxioDB } from "../../Services/Indexation.operation";
export default class StatsController {
    private AxioDBInstance;
    constructor(AxioDBInstance: AxioDB);
    /**
     * Retrieves dashboard statistics for the AxioDB instance.
     *
     * This method gathers and compiles various statistics about the database system:
     * - Count of databases, collections, and documents
     * - Storage information (used storage and total machine storage)
     * - In-memory cache details
     *
     * All storage metrics are converted to MB for consistency.
     *
     * @returns {Promise<Object>} A formatted response object containing:
     *   - HTTP status code
     *   - Status message
     *   - Data payload with the following statistics:
     *     - totalDatabases: Number of databases in the instance
     *     - totalCollections: Total number of collections across all databases
     *     - totalDocuments: Total number of documents across all collections
     *     - storageInfo: Object containing storage metrics (total used, machine total, and units)
     *     - cacheStorage: Object containing cache storage metrics (current usage, maximum, and units)
     *
     * @throws Will return an error response with status 500 if the operation fails
     */
    getDashBoardStat(): Promise<object>;
}
