/**
 * Centralized query key factory
 * @generated by @constructive-io/graphql-codegen
 * DO NOT EDIT - changes will be overwritten
 */
// ============================================================================
// 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
// ============================================================================
export const getAllRecordKeys = {
    /** All getAllRecord queries */ all: ['getallrecord'],
    /** List query keys */ lists: () => [...getAllRecordKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...getAllRecordKeys.lists(), variables],
    /** Detail query keys */ details: () => [...getAllRecordKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...getAllRecordKeys.details(), id],
};
export const functionApiBindingKeys = {
    /** All functionApiBinding queries */ all: ['functionapibinding'],
    /** List query keys */ lists: () => [...functionApiBindingKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionApiBindingKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionApiBindingKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionApiBindingKeys.details(), id],
};
export const functionDeploymentKeys = {
    /** All functionDeployment queries */ all: ['functiondeployment'],
    /** List query keys */ lists: () => [...functionDeploymentKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionDeploymentKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionDeploymentKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionDeploymentKeys.details(), id],
};
export const resourceKeys = {
    /** All resource queries */ all: ['resource'],
    /** List query keys */ lists: () => [...resourceKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...resourceKeys.lists(), variables],
    /** Detail query keys */ details: () => [...resourceKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...resourceKeys.details(), id],
};
export const functionGraphRefKeys = {
    /** All functionGraphRef queries */ all: ['functiongraphref'],
    /** List query keys */ lists: () => [...functionGraphRefKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionGraphRefKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionGraphRefKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionGraphRefKeys.details(), id],
};
export const functionGraphStoreKeys = {
    /** All functionGraphStore queries */ all: ['functiongraphstore'],
    /** List query keys */ lists: () => [...functionGraphStoreKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionGraphStoreKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionGraphStoreKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionGraphStoreKeys.details(), id],
};
export const functionGraphObjectKeys = {
    /** All functionGraphObject queries */ all: ['functiongraphobject'],
    /** List query keys */ lists: () => [...functionGraphObjectKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionGraphObjectKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionGraphObjectKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionGraphObjectKeys.details(), id],
};
export const functionDeploymentEventKeys = {
    /** All functionDeploymentEvent queries */ all: ['functiondeploymentevent'],
    /** List query keys */ lists: () => [...functionDeploymentEventKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionDeploymentEventKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionDeploymentEventKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionDeploymentEventKeys.details(), id],
};
export const orgFunctionExecutionLogKeys = {
    /** All orgFunctionExecutionLog queries */ all: ['orgfunctionexecutionlog'],
    /** List query keys */ lists: () => [...orgFunctionExecutionLogKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...orgFunctionExecutionLogKeys.lists(), variables],
    /** Detail query keys */ details: () => [...orgFunctionExecutionLogKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...orgFunctionExecutionLogKeys.details(), id],
};
export const resourceEventKeys = {
    /** All resourceEvent queries */ all: ['resourceevent'],
    /** List query keys */ lists: () => [...resourceEventKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...resourceEventKeys.lists(), variables],
    /** Detail query keys */ details: () => [...resourceEventKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...resourceEventKeys.details(), id],
};
export const functionGraphExecutionOutputKeys = {
    /** All functionGraphExecutionOutput queries */ all: ['functiongraphexecutionoutput'],
    /** List query keys */ lists: () => [...functionGraphExecutionOutputKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionGraphExecutionOutputKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionGraphExecutionOutputKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionGraphExecutionOutputKeys.details(), id],
};
export const functionGraphCommitKeys = {
    /** All functionGraphCommit queries */ all: ['functiongraphcommit'],
    /** List query keys */ lists: () => [...functionGraphCommitKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionGraphCommitKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionGraphCommitKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionGraphCommitKeys.details(), id],
};
export const secretDefinitionKeys = {
    /** All secretDefinition queries */ all: ['secretdefinition'],
    /** List query keys */ lists: () => [...secretDefinitionKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...secretDefinitionKeys.lists(), variables],
    /** Detail query keys */ details: () => [...secretDefinitionKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...secretDefinitionKeys.details(), id],
};
export const functionExecutionLogKeys = {
    /** All functionExecutionLog queries */ all: ['functionexecutionlog'],
    /** List query keys */ lists: () => [...functionExecutionLogKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionExecutionLogKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionExecutionLogKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionExecutionLogKeys.details(), id],
};
export const functionGraphKeys = {
    /** All functionGraph queries */ all: ['functiongraph'],
    /** List query keys */ lists: () => [...functionGraphKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionGraphKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionGraphKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionGraphKeys.details(), id],
};
export const functionGraphExecutionNodeStateKeys = {
    /** All functionGraphExecutionNodeState queries */ all: [
        'functiongraphexecutionnodestate',
    ],
    /** List query keys */ lists: () => [...functionGraphExecutionNodeStateKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionGraphExecutionNodeStateKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionGraphExecutionNodeStateKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionGraphExecutionNodeStateKeys.details(), id],
};
export const platformNamespaceKeys = {
    /** All platformNamespace queries */ all: ['platformnamespace'],
    /** List query keys */ lists: () => [...platformNamespaceKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...platformNamespaceKeys.lists(), variables],
    /** Detail query keys */ details: () => [...platformNamespaceKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...platformNamespaceKeys.details(), id],
};
export const orgFunctionInvocationKeys = {
    /** All orgFunctionInvocation queries */ all: ['orgfunctioninvocation'],
    /** List query keys */ lists: () => [...orgFunctionInvocationKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...orgFunctionInvocationKeys.lists(), variables],
    /** Detail query keys */ details: () => [...orgFunctionInvocationKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...orgFunctionInvocationKeys.details(), id],
};
export const functionInvocationKeys = {
    /** All functionInvocation queries */ all: ['functioninvocation'],
    /** List query keys */ lists: () => [...functionInvocationKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionInvocationKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionInvocationKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionInvocationKeys.details(), id],
};
export const platformNamespaceEventKeys = {
    /** All platformNamespaceEvent queries */ all: ['platformnamespaceevent'],
    /** List query keys */ lists: () => [...platformNamespaceEventKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...platformNamespaceEventKeys.lists(), variables],
    /** Detail query keys */ details: () => [...platformNamespaceEventKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...platformNamespaceEventKeys.details(), id],
};
export const functionGraphExecutionKeys = {
    /** All functionGraphExecution queries */ all: ['functiongraphexecution'],
    /** List query keys */ lists: () => [...functionGraphExecutionKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionGraphExecutionKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionGraphExecutionKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionGraphExecutionKeys.details(), id],
};
export const functionDefinitionKeys = {
    /** All functionDefinition queries */ all: ['functiondefinition'],
    /** List query keys */ lists: () => [...functionDefinitionKeys.all, 'list'],
    /** List query key with variables */ list: (variables) => [...functionDefinitionKeys.lists(), variables],
    /** Detail query keys */ details: () => [...functionDefinitionKeys.all, 'detail'],
    /** Detail query key for specific item */ detail: (id) => [...functionDefinitionKeys.details(), id],
};
// ============================================================================
// Custom Query Keys
// ============================================================================
export const customQueryKeys = {
    /** Query key for readFunctionGraph */ readFunctionGraph: (variables) => ['readFunctionGraph', variables],
};
/**

// ============================================================================
// 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) });
 * ```
 */
export const queryKeys = {
    getAllRecord: getAllRecordKeys,
    functionApiBinding: functionApiBindingKeys,
    functionDeployment: functionDeploymentKeys,
    resource: resourceKeys,
    functionGraphRef: functionGraphRefKeys,
    functionGraphStore: functionGraphStoreKeys,
    functionGraphObject: functionGraphObjectKeys,
    functionDeploymentEvent: functionDeploymentEventKeys,
    orgFunctionExecutionLog: orgFunctionExecutionLogKeys,
    resourceEvent: resourceEventKeys,
    functionGraphExecutionOutput: functionGraphExecutionOutputKeys,
    functionGraphCommit: functionGraphCommitKeys,
    secretDefinition: secretDefinitionKeys,
    functionExecutionLog: functionExecutionLogKeys,
    functionGraph: functionGraphKeys,
    functionGraphExecutionNodeState: functionGraphExecutionNodeStateKeys,
    platformNamespace: platformNamespaceKeys,
    orgFunctionInvocation: orgFunctionInvocationKeys,
    functionInvocation: functionInvocationKeys,
    platformNamespaceEvent: platformNamespaceEventKeys,
    functionGraphExecution: functionGraphExecutionKeys,
    functionDefinition: functionDefinitionKeys,
    custom: customQueryKeys,
};
