import type { AddMediumByQRCodePageProps, InviteUsageMode, SharePlatform } from "./AddMediumByQRCodePage.types"; declare const useAddMediumByQRCodePage: (props: AddMediumByQRCodePageProps) => { data: { qrCodeUrl: string; safeShareUrl: string | undefined; shareMessage: string; isExpired: boolean; isConsumed: boolean; usagePercentage: number; isQRCodeVisible: boolean; shareDrawerOpen: boolean; settingsDrawerOpen: boolean; selectedTtlHours: number; pendingTtlHours: number; selectedUsageMode: InviteUsageMode; pendingUsageMode: InviteUsageMode; activeUsageMode: InviteUsageMode; usageStrategies: import("./inviteUsageModes").InviteUsageStrategy[]; settingsSummary: string; activeInviteSummary: string; expiryDescription: string; expiryPresets: import("./AddMediumByQRCodePage.types").ExpiryPreset[]; copiedLink: boolean; qrCodeSize: number; refreshing: boolean; formatExpiryTime: (date: Date) => string; canShare: boolean; hasClipboard: boolean; }; fns: { handleGenerateCode: () => void; handleRegenerateCode: () => void; handleRegenerateWithPendingOptions: () => void; handleCopyLink: () => Promise; handleShare: (platform: SharePlatform) => void; handleBack: () => void; handleViewRequests: () => void; handleSettings: () => void; handleSaveInvitePreferences: () => void; handleConfirmExpirySettings: () => void; handleDownloadQR: () => void; handleRefresh: () => void; setIsQRCodeVisible: import("react").Dispatch>; setShareDrawerOpen: import("react").Dispatch>; setSettingsDrawerOpen: import("react").Dispatch>; setSelectedTtlHours: import("react").Dispatch>; setPendingTtlHours: import("react").Dispatch>; setSelectedUsageMode: import("react").Dispatch>; setPendingUsageMode: import("react").Dispatch>; setQrCodeSize: import("react").Dispatch>; }; }; export default useAddMediumByQRCodePage;