from __future__ import annotations from openstatus._gen.openstatus.status_report.v1.service_pb2 import ( AddStatusReportUpdateRequest, AddStatusReportUpdateResponse, CreateStatusReportRequest, CreateStatusReportResponse, DeleteStatusReportRequest, DeleteStatusReportResponse, GetStatusReportRequest, GetStatusReportResponse, ListStatusReportsRequest, ListStatusReportsResponse, UpdateStatusReportRequest, UpdateStatusReportResponse, ) from openstatus._transport import _AsyncJsonTransport, _JsonTransport __all__ = ["AsyncStatusReportServiceClient", "StatusReportServiceClient"] _FQN = "openstatus.status_report.v1.StatusReportService" class StatusReportServiceClient: def __init__(self, transport: _JsonTransport) -> None: self._t = transport def create_status_report( self, request: CreateStatusReportRequest, *, headers: dict[str, str] | None = None, ) -> CreateStatusReportResponse: return self._t.call( _FQN, "CreateStatusReport", request, CreateStatusReportResponse, headers ) def get_status_report( self, request: GetStatusReportRequest, *, headers: dict[str, str] | None = None, ) -> GetStatusReportResponse: return self._t.call(_FQN, "GetStatusReport", request, GetStatusReportResponse, headers) def list_status_reports( self, request: ListStatusReportsRequest, *, headers: dict[str, str] | None = None, ) -> ListStatusReportsResponse: return self._t.call(_FQN, "ListStatusReports", request, ListStatusReportsResponse, headers) def update_status_report( self, request: UpdateStatusReportRequest, *, headers: dict[str, str] | None = None, ) -> UpdateStatusReportResponse: return self._t.call( _FQN, "UpdateStatusReport", request, UpdateStatusReportResponse, headers ) def delete_status_report( self, request: DeleteStatusReportRequest, *, headers: dict[str, str] | None = None, ) -> DeleteStatusReportResponse: return self._t.call( _FQN, "DeleteStatusReport", request, DeleteStatusReportResponse, headers ) def add_status_report_update( self, request: AddStatusReportUpdateRequest, *, headers: dict[str, str] | None = None, ) -> AddStatusReportUpdateResponse: return self._t.call( _FQN, "AddStatusReportUpdate", request, AddStatusReportUpdateResponse, headers ) class AsyncStatusReportServiceClient: def __init__(self, transport: _AsyncJsonTransport) -> None: self._t = transport async def create_status_report( self, request: CreateStatusReportRequest, *, headers: dict[str, str] | None = None, ) -> CreateStatusReportResponse: return await self._t.call( _FQN, "CreateStatusReport", request, CreateStatusReportResponse, headers ) async def get_status_report( self, request: GetStatusReportRequest, *, headers: dict[str, str] | None = None, ) -> GetStatusReportResponse: return await self._t.call( _FQN, "GetStatusReport", request, GetStatusReportResponse, headers ) async def list_status_reports( self, request: ListStatusReportsRequest, *, headers: dict[str, str] | None = None, ) -> ListStatusReportsResponse: return await self._t.call( _FQN, "ListStatusReports", request, ListStatusReportsResponse, headers ) async def update_status_report( self, request: UpdateStatusReportRequest, *, headers: dict[str, str] | None = None, ) -> UpdateStatusReportResponse: return await self._t.call( _FQN, "UpdateStatusReport", request, UpdateStatusReportResponse, headers ) async def delete_status_report( self, request: DeleteStatusReportRequest, *, headers: dict[str, str] | None = None, ) -> DeleteStatusReportResponse: return await self._t.call( _FQN, "DeleteStatusReport", request, DeleteStatusReportResponse, headers ) async def add_status_report_update( self, request: AddStatusReportUpdateRequest, *, headers: dict[str, str] | None = None, ) -> AddStatusReportUpdateResponse: return await self._t.call( _FQN, "AddStatusReportUpdate", request, AddStatusReportUpdateResponse, headers )