import type { _CKOperation } from "./CKOperation.js";
import type { _CKUserIdentity } from "./CKUserIdentity.js";
import type { _CKUserIdentityLookupInfo } from "./CKUserIdentityLookupInfo.js";
import type { _NSArray } from "../Foundation/NSArray.js";
import type { _NSError } from "../Foundation/NSError.js";
export declare class _CKDiscoverUserIdentitiesOperation extends _CKOperation {
    static alloc(): _CKDiscoverUserIdentitiesOperation;
    static new(): _CKDiscoverUserIdentitiesOperation;
    init(): _CKDiscoverUserIdentitiesOperation;
    initWithUserIdentityLookupInfos$(userIdentityLookupInfos: _NSArray): _CKDiscoverUserIdentitiesOperation;
    userIdentityLookupInfos(): _NSArray;
    setUserIdentityLookupInfos$(value: _NSArray): void;
    /**
     * Called once for each user identity lookup info that was successfully discovered on the server Each instance has a private serial queue. This queue is used for all callback block invocations. This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
     */
    userIdentityDiscoveredBlock(): ((arg0: _CKUserIdentity, arg1: _CKUserIdentityLookupInfo) => void) | null;
    setUserIdentityDiscoveredBlock$(value: ((arg0: _CKUserIdentity, arg1: _CKUserIdentityLookupInfo) => void) | null): void;
    /**
     * This block is called when the operation completes. The will also be called if both are set. Each instance has a private serial queue. This queue is used for all callback block invocations. This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
     */
    discoverUserIdentitiesCompletionBlock(): ((arg0: _NSError) => void) | null;
    setDiscoverUserIdentitiesCompletionBlock$(value: ((arg0: _NSError) => void) | null): void;
}
