import type { MaybeGetter } from '../../types'; import type { ConfigurableNavigator } from '../_configurable'; import { type Readable } from 'svelte/store'; export interface UseClipboardOptions extends ConfigurableNavigator { /** * Enabled reading for clipboard * * @default false */ read?: boolean; /** * Copy source */ source?: Source; /** * Milliseconds to reset state of `copied` ref * * @default 1500 */ copiedDuring?: number; /** * Whether fallback to document.execCommand('copy') if clipboard is undefined. * * @default false */ legacy?: boolean; } export interface UseClipboardReturn { isSupported: Readable; text: Readable; copied: Readable; copy: Optional extends true ? (text?: string) => Promise : (text: string) => Promise; } /** * Reactive Clipboard API. * * @see https://sveltuse.pages.dev/docs/functions/useClipboard * @param options */ export declare function useClipboard(options?: UseClipboardOptions): UseClipboardReturn; export declare function useClipboard(options: UseClipboardOptions>): UseClipboardReturn;