import { type ComputedRef, type Ref } from 'vue';
/**
 * Tracks the currently-active tab id for a tabs block.
 *
 * - Initial value is `tabIds.value[0]` so SSR and first client render agree
 *   (no hydration mismatch). The stored id from `sessionStorage` is applied
 *   in `onMounted`, after hydration completes.
 * - When `tabIds` changes and the active id is no longer present, fall back
 *   to the first tab and clear the stored value — otherwise a later re-add
 *   of the same id would silently re-stick the old selection.
 * - All writes are guarded against unavailable storage (privacy modes, SSR).
 */
export declare function useActiveTabId(blockId: string, tabIds: ComputedRef<string[]>): Ref<string>;
