import type { AgentInstance } from "@stigmer/protos/ai/stigmer/agentic/agentinstance/v1/api_pb";
import type { AgentInstanceInput } from "@stigmer/sdk";
/** Return value of {@link useUpdateAgentInstance}. */
export interface UseUpdateAgentInstanceReturn {
    /** Update an existing agent instance with a full input. Returns the updated resource. */
    readonly update: (input: AgentInstanceInput) => Promise<AgentInstance>;
    /** `true` while the update RPC is in flight. */
    readonly isUpdating: boolean;
    /** Error from the last failed update, or `null` when healthy. */
    readonly error: Error | null;
    /** Clear the error state. */
    readonly clearError: () => void;
}
/**
 * Mutation hook that updates an existing AgentInstance resource.
 *
 * Wraps `stigmer.agentInstance.update()` with loading/error state.
 * The caller is responsible for refreshing the instance after a
 * successful update (e.g., via `refetch` from `useAgentInstances` or
 * `useAgentInstance`).
 *
 * @example
 * ```tsx
 * const { update, isUpdating } = useUpdateAgentInstance();
 *
 * const handleSave = async () => {
 *   await update({
 *     ...agentInstanceToInput(instance),
 *     environmentRefs: newRefs,
 *   });
 *   refetch();
 * };
 * ```
 */
export declare function useUpdateAgentInstance(): UseUpdateAgentInstanceReturn;
//# sourceMappingURL=useUpdateAgentInstance.d.ts.map