/**
 * Centralized mutation key factory
 * @generated by @constructive-io/graphql-codegen
 * DO NOT EDIT - changes will be overwritten
 */
// ============================================================================
// Mutation keys for tracking in-flight mutations
//
// Benefits:
// - Track mutation state with useIsMutating
// - Implement optimistic updates with proper rollback
// - Deduplicate identical mutations
// - Coordinate related mutations
// ============================================================================
// ============================================================================
// Entity Mutation Keys
// ============================================================================
export const agentMutationKeys = {
    /** All agent mutation keys */ all: ['mutation', 'agent'],
    /** Create agent mutation key */ create: () => ['mutation', 'agent', 'create'],
    /** Update agent mutation key */ update: (id) => ['mutation', 'agent', 'update', id],
    /** Delete agent mutation key */ delete: (id) => ['mutation', 'agent', 'delete', id],
};
export const agentMessageMutationKeys = {
    /** All agentMessage mutation keys */ all: ['mutation', 'agentmessage'],
    /** Create agentMessage mutation key */ create: () => ['mutation', 'agentmessage', 'create'],
    /** Update agentMessage mutation key */ update: (id) => ['mutation', 'agentmessage', 'update', id],
    /** Delete agentMessage mutation key */ delete: (id) => ['mutation', 'agentmessage', 'delete', id],
};
export const agentPersonaMutationKeys = {
    /** All agentPersona mutation keys */ all: ['mutation', 'agentpersona'],
    /** Create agentPersona mutation key */ create: () => ['mutation', 'agentpersona', 'create'],
    /** Update agentPersona mutation key */ update: (id) => ['mutation', 'agentpersona', 'update', id],
    /** Delete agentPersona mutation key */ delete: (id) => ['mutation', 'agentpersona', 'delete', id],
};
export const agentPlanMutationKeys = {
    /** All agentPlan mutation keys */ all: ['mutation', 'agentplan'],
    /** Create agentPlan mutation key */ create: () => ['mutation', 'agentplan', 'create'],
    /** Update agentPlan mutation key */ update: (id) => ['mutation', 'agentplan', 'update', id],
    /** Delete agentPlan mutation key */ delete: (id) => ['mutation', 'agentplan', 'delete', id],
};
export const agentPromptMutationKeys = {
    /** All agentPrompt mutation keys */ all: ['mutation', 'agentprompt'],
    /** Create agentPrompt mutation key */ create: () => ['mutation', 'agentprompt', 'create'],
    /** Update agentPrompt mutation key */ update: (id) => ['mutation', 'agentprompt', 'update', id],
    /** Delete agentPrompt mutation key */ delete: (id) => ['mutation', 'agentprompt', 'delete', id],
};
export const agentResourceChunkMutationKeys = {
    /** All agentResourceChunk mutation keys */ all: ['mutation', 'agentresourcechunk'],
    /** Create agentResourceChunk mutation key */ create: () => ['mutation', 'agentresourcechunk', 'create'],
    /** Update agentResourceChunk mutation key */ update: (id) => ['mutation', 'agentresourcechunk', 'update', id],
    /** Delete agentResourceChunk mutation key */ delete: (id) => ['mutation', 'agentresourcechunk', 'delete', id],
};
export const agentResourceMutationKeys = {
    /** All agentResource mutation keys */ all: ['mutation', 'agentresource'],
    /** Create agentResource mutation key */ create: () => ['mutation', 'agentresource', 'create'],
    /** Update agentResource mutation key */ update: (id) => ['mutation', 'agentresource', 'update', id],
    /** Delete agentResource mutation key */ delete: (id) => ['mutation', 'agentresource', 'delete', id],
};
export const agentTaskMutationKeys = {
    /** All agentTask mutation keys */ all: ['mutation', 'agenttask'],
    /** Create agentTask mutation key */ create: () => ['mutation', 'agenttask', 'create'],
    /** Update agentTask mutation key */ update: (id) => ['mutation', 'agenttask', 'update', id],
    /** Delete agentTask mutation key */ delete: (id) => ['mutation', 'agenttask', 'delete', id],
};
export const agentThreadMutationKeys = {
    /** All agentThread mutation keys */ all: ['mutation', 'agentthread'],
    /** Create agentThread mutation key */ create: () => ['mutation', 'agentthread', 'create'],
    /** Update agentThread mutation key */ update: (id) => ['mutation', 'agentthread', 'update', id],
    /** Delete agentThread mutation key */ delete: (id) => ['mutation', 'agentthread', 'delete', id],
};
// ============================================================================
// Custom Mutation Keys
// ============================================================================
export const customMutationKeys = {
    /** Mutation key for provisionBucket */ provisionBucket: (identifier) => identifier
        ? ['mutation', 'provisionBucket', identifier]
        : ['mutation', 'provisionBucket'],
};
/**

// ============================================================================
// Unified Mutation Key Store
// ============================================================================

 * Unified mutation key store
 *
 * Use this for tracking in-flight mutations with useIsMutating.
 *
 * @example
 * ```ts
 * import { useIsMutating } from '@tanstack/react-query';
 * import { mutationKeys } from './generated';
 *
 * // Check if any user mutations are in progress
 * const isMutatingUser = useIsMutating({ mutationKey: mutationKeys.user.all });
 *
 * // Check if a specific user is being updated
 * const isUpdating = useIsMutating({ mutationKey: mutationKeys.user.update(userId) });
 * ```
 */
export const mutationKeys = {
    agent: agentMutationKeys,
    agentMessage: agentMessageMutationKeys,
    agentPersona: agentPersonaMutationKeys,
    agentPlan: agentPlanMutationKeys,
    agentPrompt: agentPromptMutationKeys,
    agentResourceChunk: agentResourceChunkMutationKeys,
    agentResource: agentResourceMutationKeys,
    agentTask: agentTaskMutationKeys,
    agentThread: agentThreadMutationKeys,
    custom: customMutationKeys,
};
