import { Observable } from 'rxjs/Observable';
import { Subscriber } from 'rxjs/Subscriber';
import { Subscription } from 'rxjs/Subscription';
import { Operator } from 'rxjs/Operator';
import { ApolloQueryResult, ObservableQuery } from 'apollo-client';
import { ObservableQueryRef } from './utils/ObservableQueryRef';
export declare class RxObservableQuery<T> extends Observable<ApolloQueryResult<T>> {
    apollo: ObservableQuery<any> | ObservableQueryRef;
    constructor(apollo: ObservableQuery<any> | ObservableQueryRef, subscribe?: <R>(subscriber: Subscriber<R>) => Subscription | Function | void);
    lift<R>(operator: Operator<ApolloQueryResult<T>, R>): Observable<R>;
    refetch(variables?: any): Promise<ApolloQueryResult<T>>;
    stopPolling(): void;
    startPolling(p: number): void;
    fetchMore(options: any): Promise<ApolloQueryResult<T>>;
    updateQuery(mapFn: any): void;
    subscribeToMore(options: any): () => void;
    result(): Promise<ApolloQueryResult<T>>;
    currentResult(): any;
    readonly variables: {
        [key: string]: any;
    };
    setOptions(opts: any): Promise<ApolloQueryResult<T>>;
    setVariables(variables: any, tryFetch?: boolean): Promise<ApolloQueryResult<T>>;
    _subscribe(subscriber: Subscriber<T>): any;
    private getObservableQuery();
}
