43 lines
1.2 KiB
TypeScript
43 lines
1.2 KiB
TypeScript
import {
|
|
checkPermissions as checkPermissions_,
|
|
invoke,
|
|
PermissionState,
|
|
requestPermissions as requestPermissions_,
|
|
} from "@tauri-apps/api/core";
|
|
|
|
export async function checkPermissions(): Promise<PermissionState> {
|
|
return await checkPermissions_<{ bluetooth: PermissionState }>(
|
|
"bluclas",
|
|
).then((e) => e.bluetooth);
|
|
}
|
|
|
|
export async function requestPermissions(): Promise<PermissionState> {
|
|
return await requestPermissions_<{ bluetooth: PermissionState }>(
|
|
"bluclas",
|
|
).then((e) => e.bluetooth);
|
|
}
|
|
|
|
export type SDaftarPerangkatBlueclasResponDaftarPerangkat = {
|
|
nama: string;
|
|
alamat: string;
|
|
};
|
|
|
|
export type SBlueclasResponDaftarPerangkat = {
|
|
data: SDaftarPerangkatBlueclasResponDaftarPerangkat[];
|
|
};
|
|
|
|
export async function daftarPerangkat(): Promise<SBlueclasResponDaftarPerangkat> {
|
|
return await invoke<SBlueclasResponDaftarPerangkat>(
|
|
"plugin:bluclas|daftar_perangkat",
|
|
).then((res: SBlueclasResponDaftarPerangkat) => res);
|
|
}
|
|
|
|
export type SBlueclasMuatanKirim = {
|
|
alamat: string;
|
|
data: number[];
|
|
};
|
|
|
|
export async function kirim(muatan: SBlueclasMuatanKirim): Promise<null> {
|
|
return await invoke<null>("plugin:bluclas|kirim", { muatan: muatan });
|
|
}
|