import type { ApplicationService } from '@adonisjs/core/types';
import { Datatables } from '../src/datatables.js';
import { DbQueryEventNode } from '@adonisjs/lucid/types/database';
declare module '@adonisjs/core/types' {
    interface EventsList {
        'db:query': DbQueryEventNode;
    }
}
export default class DatatablesProvider {
    protected app: ApplicationService;
    constructor(app: ApplicationService);
    /**
     * Register bindings to the container
     */
    register(): void;
    /**
     * The container bindings have booted
     */
    boot(): Promise<void>;
    /**
     * The application has been booted
     */
    start(): Promise<void>;
    /**
     * The process has been started
     */
    ready(): Promise<void>;
    /**
     * Preparing to shut down the app
     */
    shutdown(): Promise<void>;
}
declare module '@adonisjs/core/types' {
    interface ContainerBindings {
        datatables: Datatables;
    }
}
