syntax = "proto3"; package synapse; import "google/protobuf/empty.proto"; import "api/query.proto"; import "api/status.proto"; import "api/files.proto"; import "api/logging.proto"; import "api/app.proto"; import "api/device.proto"; service SynapseDevice { rpc Info(google.protobuf.Empty) returns (DeviceInfo) {} rpc Configure(DeviceConfiguration) returns (Status) {} rpc Start(google.protobuf.Empty) returns (Status) {} rpc Stop(google.protobuf.Empty) returns (Status) {} rpc Query(QueryRequest) returns (QueryResponse) {} rpc StreamQuery(StreamQueryRequest) returns (stream StreamQueryResponse) {} rpc DeployApp(stream AppPackageChunk) returns (stream AppDeployResponse) {} rpc ListApps(ListAppsRequest) returns (ListAppsResponse) {} rpc ListFiles(google.protobuf.Empty) returns (ListFilesResponse) {} rpc WriteFile(WriteFileRequest) returns (WriteFileResponse) {} rpc ReadFile(ReadFileRequest) returns (stream ReadFileResponse) {} rpc DeleteFile(DeleteFileRequest) returns (DeleteFileResponse) {} rpc GetLogs(LogQueryRequest) returns (LogQueryResponse) {} rpc TailLogs(TailLogsRequest) returns (stream LogEntry) {} rpc UpdateDeviceSettings(UpdateDeviceSettingsRequest) returns (UpdateDeviceSettingsResponse) {} }