import { defineTapPropertyExtension } from '@iotize/tap';
import { TapNLinkUpdater } from '@iotize/tap/firmware-update';

const ɵ0 = (context) => new TapFirmwareUpdateExtension(context);
const _TAP_EXTENSION_FIRMWARE_UPDATE_ = defineTapPropertyExtension('firmwareUpdater', ɵ0);
/**
 * @deprecated use _TAP_EXTENSION_FIRMWARE_UPDATE_ instead
 */
const __DEFINED_PROPERTY_GETTER_FIRMWARE_UPDATE_ = _TAP_EXTENSION_FIRMWARE_UPDATE_;
class TapFirmwareUpdateExtension {
    constructor(context) {
        this.context = context;
    }
    createLoader(packet, options) {
        return TapNLinkUpdater.create(this.context.tap, packet, options);
    }
    apply(packet, options) {
        return this.createLoader(packet, options).asObservable();
    }
}
// export function firmwareUpdater(
//     this: Tap,
//     options?: TapNLinkUpdater.Options
// ): TapNLinkUpdater {
//     return new TapNLinkUpdater(this, options);
// }
// Tap.prototype.firmwareUpdater = firmwareUpdater;

/**
 * Generated bundle index. Do not edit.
 */

export { _TAP_EXTENSION_FIRMWARE_UPDATE_, __DEFINED_PROPERTY_GETTER_FIRMWARE_UPDATE_ };
//# sourceMappingURL=iotize-tap-ext-firmware-update.js.map
