import { type ProviderInstanceListDto, type ProviderInstanceDetailDto, type CreateProviderInstanceRequest, type UpdateProviderInstanceRequest } from '@/services/api/aiApi';
export interface UseAiInstancesReturn {
    instances: ProviderInstanceListDto[];
    selectedInstance: ProviderInstanceDetailDto | null;
    loading: boolean;
    error: string | null;
    loadInstances: () => Promise<void>;
    loadInstanceDetail: (instanceId: string) => Promise<void>;
    refreshInstance: () => Promise<void>;
    createInstance: (data: CreateProviderInstanceRequest) => Promise<ProviderInstanceDetailDto | null>;
    updateInstance: (instanceId: string, data: UpdateProviderInstanceRequest) => Promise<ProviderInstanceDetailDto | null>;
    deleteInstance: (instanceId: string) => Promise<void>;
    toggleInstanceActive: (instanceId: string) => Promise<void>;
    setApiKey: (instanceId: string, apiKey: string) => Promise<void>;
    setAdminKey: (instanceId: string, adminKey: string) => Promise<void>;
    selectInstance: (instance: ProviderInstanceDetailDto | null) => void;
    clearError: () => void;
}
export declare function useAiInstances(): UseAiInstancesReturn;
//# sourceMappingURL=useAiInstances.d.ts.map