/// <reference types="jquery" />
import { LookupCall, LookupFieldAdapter, LookupResult, RemoteLookupRequest } from '../index';
import Deferred = JQuery.Deferred;
export declare class RemoteLookupCall<TKey> extends LookupCall<TKey> {
    adapter: LookupFieldAdapter;
    deferred: Deferred<LookupResult<TKey>, {
        abort: boolean;
    }> & {
        requestParameter?: RemoteLookupRequest<string | TKey | void>;
    };
    constructor(adapter: LookupFieldAdapter);
    protected _getAll(): JQuery.Promise<LookupResult<TKey>>;
    protected _getByText(text: string): JQuery.Promise<LookupResult<TKey>>;
    protected _getByKey(key: TKey): JQuery.Promise<LookupResult<TKey>>;
    protected _getByRec(rec: TKey): JQuery.Promise<LookupResult<TKey>>;
    resolveLookup(lookupResult: LookupResult<TKey>): void;
    protected _belongsToLatestRequest(lookupResult: LookupResult<TKey>): boolean;
    /**
     * Creates a new deferred and rejects the previous one.
     */
    protected _newDeferred(requestParameter: RemoteLookupRequest<string | TKey | void>): void;
}
//# sourceMappingURL=RemoteLookupCall.d.ts.map