import type { ApplicationService } from '@adonisjs/core/types';
import { Vite } from '../src/vite.js';
declare module '@adonisjs/core/types' {
    interface ContainerBindings {
        vite: Vite;
    }
}
export default class ViteProvider {
    #private;
    protected app: ApplicationService;
    constructor(app: ApplicationService);
    /**
     * Registers edge plugin when edge is installed
     */
    protected registerEdgePlugin(): Promise<void>;
    /**
     * Registers CSP keywords when @adonisjs/shield is installed
     */
    protected registerShieldKeywords(): Promise<void>;
    /**
     * Register Vite bindings
     */
    register(): void;
    /**
     * - Register edge tags
     * - Start Vite server when running in development or test
     */
    boot(): Promise<void>;
    /**
     * Stop Vite server when running in development or test
     */
    shutdown(): Promise<void>;
}
