/** * Stable query key factory for font-related queries. * Ensures consistent serialization for batch requests by sorting IDs. */ export const fontKeys = { /** * Base key for all font queries */ all: ['fonts'] as const, /** * Keys for font list queries */ lists: () => [...fontKeys.all, 'list'] as const, /** * Specific font list key with filter parameters */ list: (params: object) => [...fontKeys.lists(), params] as const, /** * Keys for font batch queries */ batches: () => [...fontKeys.all, 'batch'] as const, /** * Specific batch key, sorted for stability */ batch: (ids: string[]) => [...fontKeys.batches(), [...ids].sort()] as const, /** * Keys for font detail queries */ details: () => [...fontKeys.all, 'detail'] as const, /** * Specific font detail key by ID */ detail: (id: string) => [...fontKeys.details(), id] as const, } as const;