{"version":3,"file":"SetLowDelayMode.cjs","names":["Request"],"sources":["../../generated/api/SetLowDelayMode.ts"],"sourcesContent":["import { encodeUIntLE, ErrorType, Request, Session } from '@novastar/codec';\nimport AddressMapping from '../AddressMapping';\nimport { LowDelayModeEnum } from '../LowDelayMode';\n\ndeclare module '@novastar/codec' {\n  interface API {\n    SetLowDelayMode(\n      addr: number,\n      bBroadcast: boolean,\n      lowDelayMode: LowDelayModeEnum\n    ): Promise<void>;\n    trySetLowDelayMode(addr: number, lowDelayMode: LowDelayModeEnum): Promise<ErrorType | null>;\n  }\n}\nexport default function createSetLowDelayMode<Broadcast extends boolean>(\n  addr: number,\n  bBroadcast: Broadcast,\n  lowDelayMode: LowDelayModeEnum\n): Request<Broadcast> {\n  const $data = encodeUIntLE(lowDelayMode, AddressMapping.LoadModeOccupancy);\n  const req = new Request($data, bBroadcast, 'SetLowDelayMode');\n  req.destination = addr;\n  req.address = AddressMapping.LowDelayAddr;\n  return req;\n}\nSession.prototype.SetLowDelayMode = async function SetLowDelayMode(\n  this: Session,\n  addr: number,\n  bBroadcast: boolean,\n  lowDelayMode: LowDelayModeEnum\n): Promise<void> {\n  const req = createSetLowDelayMode(addr, bBroadcast, lowDelayMode);\n  await this.connection.send(req);\n};\nSession.prototype.trySetLowDelayMode = async function trySetLowDelayMode(\n  this: Session,\n  addr: number,\n  lowDelayMode: LowDelayModeEnum\n): Promise<ErrorType | null> {\n  const req = createSetLowDelayMode(addr, false, lowDelayMode);\n  return (await this.connection.trySend(req))?.ack ?? null;\n};\n"],"mappings":";;;;;AAcA,SAAwB,sBACtB,MACA,YACA,cACoB;CAEpB,MAAM,MAAM,IAAIA,0DADW,eACC,GAAG,YAAY,iBAAiB;CAC5D,IAAI,cAAc;CAClB,IAAI;CACJ,OAAO;AACT;AACA,wBAAQ,UAAU,kBAAkB,eAAe,gBAEjD,MACA,YACA,cACe;CACf,MAAM,MAAM,sBAAsB,MAAM,YAAY,YAAY;CAChE,MAAM,KAAK,WAAW,KAAK,GAAG;AAChC;AACA,wBAAQ,UAAU,qBAAqB,eAAe,mBAEpD,MACA,cAC2B;CAC3B,MAAM,MAAM,sBAAsB,MAAM,OAAO,YAAY;CAC3D,QAAQ,MAAM,KAAK,WAAW,QAAQ,GAAG,IAAI,OAAO;AACtD"}