import { ServiceNowInstance } from "../ServiceNowInstance.js"; import { QueryUpdateOptions, QueryDeleteOptions, QueryUpdateResult, QueryDeleteResult } from './QueryBatchModels.js'; /** * QueryBatchOperations provides query-based bulk update and delete operations. * Records are found by encoded query, then updated or deleted in bulk. * Includes a dry-run mode (default) for safe previewing before execution. */ export declare class QueryBatchOperations { private static readonly DEFAULT_LIMIT; private static readonly MAX_LIMIT; private _logger; private _req; private _tableAPI; private _instance; private _headers; constructor(instance: ServiceNowInstance); /** * Find records matching a query and update them with the provided data. * Defaults to dry-run mode (confirm=false) which returns match count without executing. * * @param options Query update options * @returns QueryUpdateResult with match count, update count, and any errors * @throws Error if table, query, or data is empty */ queryUpdate(options: QueryUpdateOptions): Promise; /** * Find records matching a query and delete them. * Defaults to dry-run mode (confirm=false) which returns match count without executing. * * @param options Query delete options * @returns QueryDeleteResult with match count, delete count, and any errors * @throws Error if table or query is empty */ queryDelete(options: QueryDeleteOptions): Promise; /** * Find records matching a query and return their sys_ids. * Only fetches sys_id field for efficiency. * @private */ private _findMatchingRecords; }