///
///
export declare type DataCallback = (channelNames: Buffer, samples: Buffer, samplesPerChannel: number) => void;
export declare class Native {
constructor(path?: string);
enumerate_devices(downloadMissingDrivers?: boolean): Promise;
device_open(serial: string | undefined, downloadMissingDrivers: boolean): Promise;
device_free(devicePtr: Buffer): void;
device_get_variant(devicePtr: Buffer): Buffer;
device_get_serial(devicePtr: Buffer): Buffer;
device_get_channel_ranges(devicePtr: Buffer, channel: string): Buffer;
device_enable_channel(devicePtr: Buffer, channel: string, range: string, coupling: string): boolean;
device_disable_channel(devicePtr: Buffer, channel: string): boolean;
device_set_callback(devicePtr: Buffer, callback: DataCallback): boolean;
device_start_streaming(devicePtr: Buffer, samplesPerSecond: number): Promise;
device_stop_streaming(devicePtr: Buffer): boolean;
last_error(): Buffer;
string_free(stringPtr: Buffer): void;
}