import { Ref } from 'vue'; import { GraphQLClient } from '@propeller-commerce/propeller-sdk-v2'; export interface MenuCategory { categoryId: number; name: string; slug: string; children: MenuCategory[]; } export interface UseMenuOptions { graphqlClient: GraphQLClient; language?: Ref; /** Nesting depth for the category tree. Default: 3. */ depth?: number; /** Cache TTL in milliseconds. Default: 12h. */ cacheTtlMs?: number; } export interface UseMenuReturn { categories: Ref; loading: Ref; error: Ref; fetchMenu: (rootCategoryId: number, userKey?: string) => Promise; clearCache: (rootCategoryId: number, language: string, userKey?: string) => void; } export declare function useMenu(options: UseMenuOptions): UseMenuReturn;