import type { _NSEntityDescription } from "./NSEntityDescription.js";
import type { _NSManagedObject } from "./NSManagedObject.js";
import type { _NSPersistentStoreRequest } from "./NSPersistentStoreRequest.js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSMutableDictionary } from "../Foundation/NSMutableDictionary.js";
import type { _NSString } from "../Foundation/NSString.js";
import type { NSBatchInsertRequestResultType } from "./NSBatchInsertRequestResultType.js";
export declare class _NSBatchInsertRequest extends _NSPersistentStoreRequest {
    static alloc(): _NSBatchInsertRequest;
    static new(): _NSBatchInsertRequest;
    /** @deprecated initWithEntityName */
    static batchInsertRequestWithEntityName$objects$(entityName: _NSString, dictionaries: _NSArray): _NSBatchInsertRequest;
    /** @deprecated initWithEntityName */
    static batchInsertRequestWithEntityName$dictionaryHandler$(entityName: _NSString, handler: (obj: _NSMutableDictionary) => boolean): _NSBatchInsertRequest;
    /** @deprecated initWithEntityName */
    static batchInsertRequestWithEntityName$managedObjectHandler$(entityName: _NSString, handler: (obj: _NSManagedObject) => boolean): _NSBatchInsertRequest;
    /** @deprecated initWithEntityName */
    init(): _NSBatchInsertRequest;
    initWithEntityName$objects$(entityName: _NSString, dictionaries: _NSArray): _NSBatchInsertRequest;
    initWithEntity$objects$(entity: _NSEntityDescription, dictionaries: _NSArray): _NSBatchInsertRequest;
    initWithEntity$dictionaryHandler$(entity: _NSEntityDescription, handler: (obj: _NSMutableDictionary) => boolean): _NSBatchInsertRequest;
    initWithEntity$managedObjectHandler$(entity: _NSEntityDescription, handler: (obj: _NSManagedObject) => boolean): _NSBatchInsertRequest;
    initWithEntityName$dictionaryHandler$(entityName: _NSString, handler: (obj: _NSMutableDictionary) => boolean): _NSBatchInsertRequest;
    initWithEntityName$managedObjectHandler$(entityName: _NSString, handler: (obj: _NSManagedObject) => boolean): _NSBatchInsertRequest;
    entityName(): _NSString;
    entity(): _NSEntityDescription | null;
    objectsToInsert(): _NSArray | null;
    setObjectsToInsert$(value: _NSArray | null): void;
    dictionaryHandler(): ((arg0: _NSMutableDictionary) => boolean) | null;
    setDictionaryHandler$(value: ((arg0: _NSMutableDictionary) => boolean) | null): void;
    managedObjectHandler(): ((arg0: _NSManagedObject) => boolean) | null;
    setManagedObjectHandler$(value: ((arg0: _NSManagedObject) => boolean) | null): void;
    /**
     * The type of result that should be returned from this request. Defaults to NSBatchInsertRequestResultTypeStatusOnly
     */
    resultType(): NSBatchInsertRequestResultType;
    setResultType$(value: NSBatchInsertRequestResultType): void;
}
