import { SvelteComponentTyped } from "svelte";
import type { OnCreateParticle, OnUpdateParticle, ParticleStyle, Position } from './utils/types';
declare const __propDef: {
props: {
/**
* The origin position of the confetti cannon.
* @required
* @example
* ```
*
* ```
*/ origin: Position;
/**
* A list of render styles to use for the confetti. Each confetti will be assigned a random value from the list.
* The values can either be valid HTML colors or an HTMLImageElement.
* @default ['hotpink','gold','dodgerblue','tomato','rebeccapurple','lightgreen','turquoise']
* @example
* ```
*
* ```
*/ styles?: ParticleStyle[] | undefined;
/**
* The number of particles to create.
* @default 50
* @example
* ```
*
* ```
*/ particleCount?: number | undefined;
/**
* The force of the burst. A larger number will shoot the confetti faster and further. Has no effect if origin isn't passed in.
* @default 15
* @example
* ```
*
* ```
*/ force?: number | undefined;
/**
* Angle in degrees of the burst. This can be used together with spread to create a directed burst. Has no effect if origin isn't passed in.
* @default 0
* @example
* ```
*
* ```
*/ angle?: number | undefined;
/**
* The spread in degrees of the burst. This can be used together with angle to create a directed burst. Has no effect if origin isn't passed in.
* @default 360
* @example
* ```
*
* ```
*/ spread?: number | undefined;
/**
* By default, each particle is created with some random variation. The initial values of each particle can be overriden using the onCreate callback.
* @default undefined
* @example
* ```
* {
* particle.style = 'blue';
* particle.x = window.innerWidth / 2;
* return particle;
* }}
* />
* ```
*/ onCreate?: OnCreateParticle | undefined;
/**
* The onUpdate callback can be used to modify the particle on each frame.
* @default undefined
* @example
* ```
* {
* if (particle.angle < 0 && particle.da < 0) {
* particle.da *= -1;
* }
* }}
* />
* ```
*/ onUpdate?: OnUpdateParticle | undefined;
};
events: {
completed: CustomEvent;
} & {
[evt: string]: CustomEvent;
};
slots: {};
};
export declare type ConfettiCannonProps = typeof __propDef.props;
export declare type ConfettiCannonEvents = typeof __propDef.events;
export declare type ConfettiCannonSlots = typeof __propDef.slots;
export default class ConfettiCannon extends SvelteComponentTyped {
}
export {};