export interface CopyToClipboardOptions { successDuration?: number; onSuccess?: (text: string) => void; onError?: (error: Error) => void; } export interface CopyToClipboardResult { copiedValue: string | null; copyToClipboard: (text: string) => Promise; isCopied: (text: string) => boolean; resetCopiedState: () => void; } /** * Hook for managing copy-to-clipboard functionality with feedback * * Features: * - Async clipboard API with fallback * - Visual feedback state management * - Automatic timeout for feedback reset * - Error handling * - Multiple copy tracking * * @param options - Configuration options * @returns Object with copy function and state * * @example * const { copyToClipboard, isCopied } = useCopyToClipboard({ * successDuration: 2000, * }); * * // In component * */ export declare const useCopyToClipboard: (options?: CopyToClipboardOptions) => CopyToClipboardResult; /** * Hook for managing multiple copy states simultaneously * * Useful when you have multiple copyable items on the same page * and want to track their individual copy states. * * @param options - Configuration options * @returns Object with copy function and state management * * @example * const { copyToClipboard, isCopied } = useMultipleCopyToClipboard(); * * // Each item has its own copy state * * */ export declare const useMultipleCopyToClipboard: (options?: CopyToClipboardOptions) => { copiedStates: Record; copyToClipboard: (text: string, key: string) => Promise; isCopied: (key: string) => boolean; resetCopiedState: (key?: string) => void; }; //# sourceMappingURL=useCopyToClipboard.d.ts.map