/// <reference types="svelte" />
import type { ModalComponentBaseResolved, ModalComponentBaseEvents, ModalStore } from './modal.types';
/**
 * Create a svelte store for handling modal
 * @example
 *
 * ```typescript
 * import { createModalStore } from '@svelte-put/modal';
 * const store = createModalStore();
 * ```
 * @returns {ModalStore} extended svelte {@link ModalStore}
 */
export declare function createModalStore(): ModalStore;
/**
 *Helper that wraps svelte `createEventDispatcher` for creating typesafe
 *event dispatcher from the `$$Events` type. See {@link ExtendedModalEvents}
 * @returns {ReturnType<typeof createEventDispatcher>} svelte event dispatcher
 */
export declare function createModalEventDispatcher<Events extends ModalComponentBaseEvents<ModalComponentBaseResolved<ExtendedResolved>> & Record<string, CustomEvent<any>>, ExtendedResolved extends Record<string, any> = Omit<Events['resolve']['detail'], 'trigger'>>(): import("svelte").EventDispatcher<{ [key in keyof Events]: Events[key]["detail"]; }>;
//# sourceMappingURL=modal.d.ts.map