import { type Container, type RecursivePartial } from "@tsparticles/engine";
import type { IFireworkOptions } from "./IFireworkOptions.js";
type FireworksFunc = ((idOrOptions: string | RecursivePartial<IFireworkOptions>, sourceOptions?: RecursivePartial<IFireworkOptions>) => Promise<FireworksInstance | undefined>) & {
    version: string;
};
declare global {
    interface Window {
        fireworks: FireworksFunc & {
            create: (canvas: HTMLCanvasElement, options: RecursivePartial<IFireworkOptions>) => Promise<FireworksInstance | undefined>;
            init: () => Promise<void>;
            version: string;
        };
    }
}
declare class FireworksInstance {
    private readonly _container;
    constructor(container: Container);
    pause(): void;
    play(): void;
    stop(): void;
}
export type { FireworksInstance };
export declare function fireworks(idOrOptions?: string | RecursivePartial<IFireworkOptions>, sourceOptions?: RecursivePartial<IFireworkOptions>): Promise<FireworksInstance | undefined>;
export declare namespace fireworks {
    var create: (canvas: HTMLCanvasElement, options?: RecursivePartial<IFireworkOptions>) => Promise<FireworksInstance | undefined>;
    var init: () => Promise<void>;
    var version: string;
}
