import * as _graphiqlModule from 'graphiql';
import * as H from 'history';
import * as React from 'react';
import { ErrorLike } from '../util/errors';
interface Props {
    location: H.Location;
    history: H.History;
}
interface State {
    /** The dynamically imported graphiql module, undefined while loading. */
    graphiqlOrError?: typeof _graphiqlModule | ErrorLike;
    /** The URL parameters decoded from the location hash. */
    parameters: Parameters;
}
/** Represents URL parameters stored in the location.hash */
interface Parameters {
    /** The GraphQL query string. */
    query?: string;
    /** The GraphQL variables as a JSON encoded string. */
    variables?: string;
    /** The GraphQL operation name. */
    operationName?: string;
}
/**
 * Component to show the GraphQL API console.
 */
export declare class APIConsole extends React.PureComponent<Props, State> {
    state: State;
    private updates;
    private subscriptions;
    private graphiQLRef;
    constructor(props: Props);
    componentDidMount(): void;
    componentWillUnmount(): void;
    render(): JSX.Element | null;
    /**
     * Renders the API console once GraphiQL has loaded. This method should
     * only be invoked once this.state.graphiqlOrError is loaded successfully.
     */
    private renderGraphiQL;
    private onEditQuery;
    private onEditVariables;
    private onEditOperationName;
    private updateStateParameters;
    private setGraphiQLRef;
    private handlePrettifyQuery;
    private handleToggleHistory;
}
export {};
//# sourceMappingURL=APIConsole.d.ts.map