import type { HIDDevice } from './hid-device.js';
import { DeviceModelId } from './id.js';
import type { BlackmagicController } from './types.js';
import type { OpenBlackmagicControllerOptionsInternal } from './models/base.js';
export * from './types.js';
export * from './id.js';
export * from './controlDefinition.js';
export { HIDDevice, HIDDeviceInfo, HIDDeviceEvents } from './hid-device.js';
export { OpenBlackmagicControllerOptions, OpenBlackmagicControllerOptionsInternal } from './models/base.js';
export { BlackmagicControllerProxy } from './proxy.js';
/** Blackmagic vendor id */
export declare const VENDOR_ID = 7899;
export interface DeviceModelSpec {
    id: DeviceModelId;
    productIds: number[];
    factory: (device: HIDDevice, options: Required<OpenBlackmagicControllerOptionsInternal>) => BlackmagicController;
    authenticate?: (device: HIDDevice) => Promise<number>;
}
/** List of all the known models, and the classes to use them */
export declare const DEVICE_MODELS2: {
    [key in DeviceModelId]: Omit<DeviceModelSpec, 'id'>;
};
/** @deprecated maybe? */
export declare const DEVICE_MODELS: DeviceModelSpec[];
//# sourceMappingURL=index.d.ts.map