"use strict";
/**
 * Centralized query key factory
 * @generated by @constructive-io/graphql-codegen
 * DO NOT EDIT - changes will be overwritten
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.queryKeys = exports.namespaceEventKeys = exports.platformNamespaceEventKeys = exports.namespaceKeys = exports.platformNamespaceKeys = exports.dbPresetKeys = exports.infraCommitKeys = exports.infraObjectKeys = exports.infraStoreKeys = exports.infraRefKeys = exports.infraGetAllRecordKeys = void 0;
// ============================================================================
// This file provides a centralized, type-safe query key factory following
// the lukemorales query-key-factory pattern for React Query.
//
// Benefits:
// - Single source of truth for all query keys
// - Type-safe key access with autocomplete
// - Hierarchical invalidation (invalidate all 'user.*' queries)
// - Scoped keys for parent-child relationships
// ============================================================================
// ============================================================================
// Entity Query Keys
// ============================================================================
exports.infraGetAllRecordKeys = {
    /** All infraGetAllRecord queries */ all: ['infragetallrecord'],
    /** List query keys */ lists: () => [...exports.infraGetAllRecordKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.infraGetAllRecordKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.infraGetAllRecordKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.infraGetAllRecordKeys.details(), id],
};
exports.infraRefKeys = {
    /** All infraRef queries */ all: ['infraref'],
    /** List query keys */ lists: () => [...exports.infraRefKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.infraRefKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.infraRefKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.infraRefKeys.details(), id],
};
exports.infraStoreKeys = {
    /** All infraStore queries */ all: ['infrastore'],
    /** List query keys */ lists: () => [...exports.infraStoreKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.infraStoreKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.infraStoreKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.infraStoreKeys.details(), id],
};
exports.infraObjectKeys = {
    /** All infraObject queries */ all: ['infraobject'],
    /** List query keys */ lists: () => [...exports.infraObjectKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.infraObjectKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.infraObjectKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.infraObjectKeys.details(), id],
};
exports.infraCommitKeys = {
    /** All infraCommit queries */ all: ['infracommit'],
    /** List query keys */ lists: () => [...exports.infraCommitKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.infraCommitKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.infraCommitKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.infraCommitKeys.details(), id],
};
exports.dbPresetKeys = {
    /** All dbPreset queries */ all: ['dbpreset'],
    /** List query keys */ lists: () => [...exports.dbPresetKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.dbPresetKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.dbPresetKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.dbPresetKeys.details(), id],
};
exports.platformNamespaceKeys = {
    /** All platformNamespace queries */ all: ['platformnamespace'],
    /** List query keys */ lists: () => [...exports.platformNamespaceKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.platformNamespaceKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.platformNamespaceKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.platformNamespaceKeys.details(), id],
};
exports.namespaceKeys = {
    /** All namespace queries */ all: ['namespace'],
    /** List query keys */ lists: () => [...exports.namespaceKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.namespaceKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.namespaceKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.namespaceKeys.details(), id],
};
exports.platformNamespaceEventKeys = {
    /** All platformNamespaceEvent queries */ all: ['platformnamespaceevent'],
    /** List query keys */ lists: () => [...exports.platformNamespaceEventKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.platformNamespaceEventKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.platformNamespaceEventKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.platformNamespaceEventKeys.details(), id],
};
exports.namespaceEventKeys = {
    /** All namespaceEvent queries */ all: ['namespaceevent'],
    /** List query keys */ lists: () => [...exports.namespaceEventKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...exports.namespaceEventKeys.lists(), variables],
    /** Detail query keys */ details: () => [...exports.namespaceEventKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...exports.namespaceEventKeys.details(), id],
};
/**

// ============================================================================
// Unified Query Key Store
// ============================================================================

 * Unified query key store
 *
 * Use this for type-safe query key access across your application.
 *
 * @example
 * ```ts
 * // Invalidate all user queries
 * queryClient.invalidateQueries({ queryKey: queryKeys.user.all });
 *
 * // Invalidate user list queries
 * queryClient.invalidateQueries({ queryKey: queryKeys.user.lists() });
 *
 * // Invalidate specific user
 * queryClient.invalidateQueries({ queryKey: queryKeys.user.detail(userId) });
 * ```
 */
exports.queryKeys = {
    infraGetAllRecord: exports.infraGetAllRecordKeys,
    infraRef: exports.infraRefKeys,
    infraStore: exports.infraStoreKeys,
    infraObject: exports.infraObjectKeys,
    infraCommit: exports.infraCommitKeys,
    dbPreset: exports.dbPresetKeys,
    platformNamespace: exports.platformNamespaceKeys,
    namespace: exports.namespaceKeys,
    platformNamespaceEvent: exports.platformNamespaceEventKeys,
    namespaceEvent: exports.namespaceEventKeys,
};
