import type { OnCreateParticle, OnUpdateParticle, ParticleStyleEntry, Position } from './utils/types'; interface Props { styles?: readonly ParticleStyleEntry[]; particleCount?: number; origin?: Position; force?: number; angle?: number; spread?: number; onCreate?: OnCreateParticle; onUpdate?: OnUpdateParticle; onCompleted?: () => void; } /** * Full-screen canvas-based confetti renderer. Spawns particles on mount and animates them via `requestAnimationFrame` until all exit the viewport, then fires `onCompleted`. Used internally by `ConfettiBurst`, `ConfettiCannon`, and `FallingConfetti`. * * All style types can be mixed freely in the same `styles` array. `HTMLCanvasElement` styles (from `createTextStyle`) and `HTMLImageElement` styles are automatically sized to match their dimensions. Image sizes can be overridden via `onCreate` — setting only one dimension (w or h) auto-scales the other to preserve the aspect ratio. * *   * * @prop styles {readonly ParticleStyleEntry[]} [COLORS] - Render styles for confetti. Each particle gets a random value. Accepts plain styles (HTML colors, HTMLImageElement, CanvasImageSource) or config objects ({ style, w?, h? }) for per-style sizing. All types can be mixed. * @prop particleCount {number} [50] - Number of particles to create. * @prop origin {Position} [undefined] - Origin position [x, y]. If omitted, confetti falls from the top. * @prop force {number} [15] - Burst velocity. Higher = faster/further. No effect without origin. * @prop angle {number} [0] - Burst direction in degrees. Use with spread for directed bursts. No effect without origin. * @prop spread {number} [360] - Angular spread in degrees. Use with angle for directed bursts. No effect without origin. * @prop onCreate {OnCreateParticle} [undefined] - Callback to override initial particle values at creation time. * @prop onUpdate {OnUpdateParticle} [undefined] - Callback called each frame per particle for custom animation logic. * @prop onCompleted {() => void} [undefined] - Callback fired when all particles have exited the screen. */ declare const Confetti: import("svelte").Component; type Confetti = ReturnType; export default Confetti; //# sourceMappingURL=Confetti.svelte.d.ts.map