/// <reference types="node" />
import { Crazyflie } from '.';
import { TOC, TOCItem } from './toc';
import { TOCFetcher } from './toc-fetcher';
import { EventEmitter } from 'events';
export declare class Parameters extends EventEmitter {
    private crazyflie;
    tocFetcher: TOCFetcher;
    /**
     * Class for dealing with the 'parameters' port
     * (https://wiki.bitcraze.io/doc:crazyflie:crtp:commander)
     */
    constructor(crazyflie: Crazyflie);
    /**
     * Retrieve logging TOC from the Crazyflie.
     * Required before getting any logging data!
     */
    getTOC(): Promise<TOC>;
    /**
     * Fetch the value of a parameter from the Crazyflie
     */
    get(item: TOCItem): Promise<number>;
    /**
     * Set the value of a parameter on the Crazyflie
     */
    set(item: TOCItem, value: number): Promise<number>;
    /**
     * Handle parameter response. Identical for both getting and setting a parameter.
     * (https://wiki.bitcraze.io/doc:crazyflie:crtp:param#parameter_read)
     * (https://wiki.bitcraze.io/doc:crazyflie:crtp:param#parameter_write)
     */
    private handleParam(data, mode);
}
