import { useConsentManager } from './use-consent-manager'; export type HeadlessIABPreferenceTab = 'purposes' | 'vendors'; export type HeadlessIABBannerAction = 'accept' | 'reject' | 'customize'; export type HeadlessIABDialogAction = 'accept' | 'reject' | 'customize'; export interface HeadlessIABBannerState { isVisible: boolean; isReady: boolean; vendorCount: number; displayItems: string[]; remainingCount: number; scrollLock?: boolean; } export interface HeadlessIABDialogState { isVisible: boolean; isLoading: boolean; activeTab: HeadlessIABPreferenceTab; scrollLock?: boolean; } export interface UseHeadlessIABConsentUIResult { activeUI: ReturnType['activeUI']; model: ReturnType['model']; iab: ReturnType['iab']; isIABEnabled: boolean; banner: HeadlessIABBannerState; dialog: HeadlessIABDialogState; openBanner: (options?: { force?: boolean; }) => void; openDialog: (options?: { tab?: HeadlessIABPreferenceTab; }) => void; openPurposesDialog: () => void; openVendorsDialog: () => void; closeUI: () => void; acceptAll: () => Promise | void; rejectAll: () => Promise | void; savePreferences: () => Promise | void; performBannerAction: (action: HeadlessIABBannerAction) => Promise | void; performDialogAction: (action: HeadlessIABDialogAction) => Promise | void; } export declare function useHeadlessIABConsentUI(): UseHeadlessIABConsentUIResult;