import * as React from 'react';
import { RouteComponentProps } from 'react-router';
import * as GQL from '../../backend/graphqlschema';
import { ErrorLike } from '../../util/errors';
import { UserAreaRouteContext } from '../area/UserArea';
interface Props extends UserAreaRouteContext, RouteComponentProps<{}> {
    /** Called when a new access token is created and should be temporarily displayed to the user. */
    onDidCreateAccessToken: (result: GQL.ICreateAccessTokenResult) => void;
}
interface State {
    /** The contents of the note input field. */
    note: string;
    /** The selected scopes checkboxes. */
    scopes: string[];
    creationOrError?: 'loading' | GQL.ICreateAccessTokenResult | ErrorLike;
}
/**
 * A page with a form to create an access token for a user.
 */
export declare class UserAccountCreateAccessTokenPage extends React.PureComponent<Props, State> {
    state: State;
    private submits;
    private componentUpdates;
    private subscriptions;
    componentDidMount(): void;
    componentWillReceiveProps(nextProps: Props): void;
    componentWillUnmount(): void;
    render(): JSX.Element | null;
    private onNoteChange;
    private onScopesChange;
    private onSubmit;
}
export {};
//# sourceMappingURL=UserAccountCreateAccessTokenPage.d.ts.map