package vendor.samsung.hardware.radio@2.0;

import ISehRadioIndication;
import ISehRadioResponse;
import android.hardware.radio@1.0::CdmaSmsMessage;
import android.hardware.radio@1.0::GsmSmsMessage;
import android.hardware.radio@1.0::ImsSmsMessage;

interface ISehRadio {
  oneway setResponseFunctions(ISehRadioResponse radioResponse,
                             ISehRadioIndication radioIndication);
  oneway getIccCardStatus(int32_t serial);
  supplyNetworkDepersonalization(int32_t serial, string netpin,
                                 int32_t lockstate);
  dial(int32_t serial, SehDial dial);
  getCurrentCalls(int32_t serial);
  getImsRegistrationState();
  getAvailableNetworks(int32_t serial);
  setImsCallList(int32_t serial, vec<SehImsCall> imscalls);
  getPreferredNetworkList(int32_t serial);
  setPreferredNetworkList(int32_t serial, SehPreferredNetworkInfo info);
  sendEncodedUssd(int32_t serial, SehEncodedUssd ussd);
  getDisable2g(int32_t serial);
  setDisable2g(int32_t serial, int32_t mode);
  getCnap(int32_t serial);
  getPhonebookStorageInfo(int32_t serial, int32_t fileid);
  getUsimPhonebookCapability(int32_t serial);
  setSimOnOff(int32_t serial, int32_t mode);
  setSimInitEvent(int32_t serial);
  getSimLockInfo(int32_t serial, int32_t numLockType, int32_t lockType);
  supplyIccPersonalization(int32_t serial, string pin);
  changeIccPersonalization(int32_t serial, string oldpass, string newpass);
  sendCdmaSmsExpectMore(int32_t serial, CdmaSmsMessage msg);
  getPhonebookEntry(int32_t serial, int32_t fileid, int32_t index);
  accessPhonebookEntry(int32_t serial, int32_t command, int32_t fileid,
                       int32_t index, SehAdnRecord record, string pin);
  getCellBroadcastConfig(int32_t serial);
  emergencySearch(int32_t serial);
  emergencyControl(int32_t serial, int32_t control);
  getAtr(int32_t serial);
  sendSms(int32_t serial, GsmSmsMessage msg);
  sendSMSExpectMore(int32_t serial, GsmSmsMessage msg);
  sendCdmaSms(int32_t serial, CdmaSmsMessage msg);
  sendImsSms(int32_t serial, ImsSmsMessage msg);
  getStoredMsgCountFromSim(int32_t serial);
  readSmsFromSim(int32_t serial, int32_t index);
  writeSmsToSim(int32_t serial, SehSimMsgArgs args);
  getCsgList(int32_t serial);
  selectCsgManual(int32_t serial, SehCsgInfo info);
  setDataAllowed(int32_t serial, bool allowed, SehAllowDataParam ap);
  setMobileDataSetting(int32_t serial, bool enabled, bool roamingenabled);
  oneway sendRequestRaw(int32_t serial, vec<uint8_t> data);
  oneway sendRequestStrings(int32_t serial, vec<string> strings);
};
