// @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=ts" // @generated from file openstatus/notification/v1/service.proto (package openstatus.notification.v1, syntax proto3) /* eslint-disable */ import type { GenFile, GenMessage, GenService, } from "@bufbuild/protobuf/codegenv2"; import { fileDesc, messageDesc, serviceDesc, } from "@bufbuild/protobuf/codegenv2"; import { file_buf_validate_validate } from "../../../buf/validate/validate_pb.ts"; import type { Notification, NotificationSummary } from "./notification_pb.ts"; import { file_openstatus_notification_v1_notification } from "./notification_pb.ts"; import type { NotificationData, NotificationProvider } from "./providers_pb.ts"; import { file_openstatus_notification_v1_providers } from "./providers_pb.ts"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file openstatus/notification/v1/service.proto. */ export const file_openstatus_notification_v1_service: GenFile = /*@__PURE__*/ fileDesc( "CihvcGVuc3RhdHVzL25vdGlmaWNhdGlvbi92MS9zZXJ2aWNlLnByb3RvEhpvcGVuc3RhdHVzLm5vdGlmaWNhdGlvbi52MSLbAQoZQ3JlYXRlTm90aWZpY2F0aW9uUmVxdWVzdBIVCgRuYW1lGAEgASgJQge6SARyAhABEk4KCHByb3ZpZGVyGAIgASgOMjAub3BlbnN0YXR1cy5ub3RpZmljYXRpb24udjEuTm90aWZpY2F0aW9uUHJvdmlkZXJCCrpIB4IBBBABIAASQgoEZGF0YRgDIAEoCzIsLm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLk5vdGlmaWNhdGlvbkRhdGFCBrpIA8gBARITCgttb25pdG9yX2lkcxgEIAMoCSJcChpDcmVhdGVOb3RpZmljYXRpb25SZXNwb25zZRI+Cgxub3RpZmljYXRpb24YASABKAsyKC5vcGVuc3RhdHVzLm5vdGlmaWNhdGlvbi52MS5Ob3RpZmljYXRpb24iLQoWR2V0Tm90aWZpY2F0aW9uUmVxdWVzdBITCgJpZBgBIAEoCUIHukgEcgIQASJZChdHZXROb3RpZmljYXRpb25SZXNwb25zZRI+Cgxub3RpZmljYXRpb24YASABKAsyKC5vcGVuc3RhdHVzLm5vdGlmaWNhdGlvbi52MS5Ob3RpZmljYXRpb24ibAoYTGlzdE5vdGlmaWNhdGlvbnNSZXF1ZXN0Eh0KBWxpbWl0GAEgASgFQgm6SAYaBBhkKAFIAIgBARIcCgZvZmZzZXQYAiABKAVCB7pIBBoCKABIAYgBAUIICgZfbGltaXRCCQoHX29mZnNldCJ3ChlMaXN0Tm90aWZpY2F0aW9uc1Jlc3BvbnNlEkYKDW5vdGlmaWNhdGlvbnMYASADKAsyLy5vcGVuc3RhdHVzLm5vdGlmaWNhdGlvbi52MS5Ob3RpZmljYXRpb25TdW1tYXJ5EhIKCnRvdGFsX3NpemUYAiABKAUiqwEKGVVwZGF0ZU5vdGlmaWNhdGlvblJlcXVlc3QSEwoCaWQYASABKAlCB7pIBHICEAESEQoEbmFtZRgCIAEoCUgAiAEBEj8KBGRhdGEYAyABKAsyLC5vcGVuc3RhdHVzLm5vdGlmaWNhdGlvbi52MS5Ob3RpZmljYXRpb25EYXRhSAGIAQESEwoLbW9uaXRvcl9pZHMYBCADKAlCBwoFX25hbWVCBwoFX2RhdGEiXAoaVXBkYXRlTm90aWZpY2F0aW9uUmVzcG9uc2USPgoMbm90aWZpY2F0aW9uGAEgASgLMigub3BlbnN0YXR1cy5ub3RpZmljYXRpb24udjEuTm90aWZpY2F0aW9uIjAKGURlbGV0ZU5vdGlmaWNhdGlvblJlcXVlc3QSEwoCaWQYASABKAlCB7pIBHICEAEiLQoaRGVsZXRlTm90aWZpY2F0aW9uUmVzcG9uc2USDwoHc3VjY2VzcxgBIAEoCCKxAQobU2VuZFRlc3ROb3RpZmljYXRpb25SZXF1ZXN0Ek4KCHByb3ZpZGVyGAEgASgOMjAub3BlbnN0YXR1cy5ub3RpZmljYXRpb24udjEuTm90aWZpY2F0aW9uUHJvdmlkZXJCCrpIB4IBBBABIAASQgoEZGF0YRgCIAEoCzIsLm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLk5vdGlmaWNhdGlvbkRhdGFCBrpIA8gBASJdChxTZW5kVGVzdE5vdGlmaWNhdGlvblJlc3BvbnNlEg8KB3N1Y2Nlc3MYASABKAgSGgoNZXJyb3JfbWVzc2FnZRgCIAEoCUgAiAEBQhAKDl9lcnJvcl9tZXNzYWdlIh8KHUNoZWNrTm90aWZpY2F0aW9uTGltaXRSZXF1ZXN0ImEKHkNoZWNrTm90aWZpY2F0aW9uTGltaXRSZXNwb25zZRIVCg1saW1pdF9yZWFjaGVkGAEgASgIEhUKDWN1cnJlbnRfY291bnQYAiABKAUSEQoJbWF4X2NvdW50GAMgASgFMsQHChNOb3RpZmljYXRpb25TZXJ2aWNlEoMBChJDcmVhdGVOb3RpZmljYXRpb24SNS5vcGVuc3RhdHVzLm5vdGlmaWNhdGlvbi52MS5DcmVhdGVOb3RpZmljYXRpb25SZXF1ZXN0GjYub3BlbnN0YXR1cy5ub3RpZmljYXRpb24udjEuQ3JlYXRlTm90aWZpY2F0aW9uUmVzcG9uc2USegoPR2V0Tm90aWZpY2F0aW9uEjIub3BlbnN0YXR1cy5ub3RpZmljYXRpb24udjEuR2V0Tm90aWZpY2F0aW9uUmVxdWVzdBozLm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLkdldE5vdGlmaWNhdGlvblJlc3BvbnNlEoABChFMaXN0Tm90aWZpY2F0aW9ucxI0Lm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLkxpc3ROb3RpZmljYXRpb25zUmVxdWVzdBo1Lm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLkxpc3ROb3RpZmljYXRpb25zUmVzcG9uc2USgwEKElVwZGF0ZU5vdGlmaWNhdGlvbhI1Lm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLlVwZGF0ZU5vdGlmaWNhdGlvblJlcXVlc3QaNi5vcGVuc3RhdHVzLm5vdGlmaWNhdGlvbi52MS5VcGRhdGVOb3RpZmljYXRpb25SZXNwb25zZRKDAQoSRGVsZXRlTm90aWZpY2F0aW9uEjUub3BlbnN0YXR1cy5ub3RpZmljYXRpb24udjEuRGVsZXRlTm90aWZpY2F0aW9uUmVxdWVzdBo2Lm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLkRlbGV0ZU5vdGlmaWNhdGlvblJlc3BvbnNlEokBChRTZW5kVGVzdE5vdGlmaWNhdGlvbhI3Lm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLlNlbmRUZXN0Tm90aWZpY2F0aW9uUmVxdWVzdBo4Lm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLlNlbmRUZXN0Tm90aWZpY2F0aW9uUmVzcG9uc2USjwEKFkNoZWNrTm90aWZpY2F0aW9uTGltaXQSOS5vcGVuc3RhdHVzLm5vdGlmaWNhdGlvbi52MS5DaGVja05vdGlmaWNhdGlvbkxpbWl0UmVxdWVzdBo6Lm9wZW5zdGF0dXMubm90aWZpY2F0aW9uLnYxLkNoZWNrTm90aWZpY2F0aW9uTGltaXRSZXNwb25zZUJdWltnaXRodWIuY29tL29wZW5zdGF0dXNocS9vcGVuc3RhdHVzL3BhY2thZ2VzL3Byb3RvL29wZW5zdGF0dXMvbm90aWZpY2F0aW9uL3YxO25vdGlmaWNhdGlvbnYxYgZwcm90bzM", [ file_buf_validate_validate, file_openstatus_notification_v1_notification, file_openstatus_notification_v1_providers, ], ); /** * CreateNotificationRequest is the request to create a new notification channel. * * @generated from message openstatus.notification.v1.CreateNotificationRequest */ export type CreateNotificationRequest = & Message<"openstatus.notification.v1.CreateNotificationRequest"> & { /** * Display name for the notification channel. * * @generated from field: string name = 1; */ name: string; /** * Provider type. * * @generated from field: openstatus.notification.v1.NotificationProvider provider = 2; */ provider: NotificationProvider; /** * Provider-specific configuration. * * @generated from field: openstatus.notification.v1.NotificationData data = 3; */ data?: NotificationData; /** * IDs of monitors to associate with this notification. * * @generated from field: repeated string monitor_ids = 4; */ monitorIds: string[]; }; /** * Describes the message openstatus.notification.v1.CreateNotificationRequest. * Use `create(CreateNotificationRequestSchema)` to create a new message. */ export const CreateNotificationRequestSchema: GenMessage< CreateNotificationRequest > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 0); /** * CreateNotificationResponse is the response after creating a notification channel. * * @generated from message openstatus.notification.v1.CreateNotificationResponse */ export type CreateNotificationResponse = & Message<"openstatus.notification.v1.CreateNotificationResponse"> & { /** * The created notification channel. * * @generated from field: openstatus.notification.v1.Notification notification = 1; */ notification?: Notification; }; /** * Describes the message openstatus.notification.v1.CreateNotificationResponse. * Use `create(CreateNotificationResponseSchema)` to create a new message. */ export const CreateNotificationResponseSchema: GenMessage< CreateNotificationResponse > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 1); /** * GetNotificationRequest is the request to get a notification channel. * * @generated from message openstatus.notification.v1.GetNotificationRequest */ export type GetNotificationRequest = & Message<"openstatus.notification.v1.GetNotificationRequest"> & { /** * Notification ID to retrieve (required). * * @generated from field: string id = 1; */ id: string; }; /** * Describes the message openstatus.notification.v1.GetNotificationRequest. * Use `create(GetNotificationRequestSchema)` to create a new message. */ export const GetNotificationRequestSchema: GenMessage< GetNotificationRequest > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 2); /** * GetNotificationResponse is the response containing the notification channel. * * @generated from message openstatus.notification.v1.GetNotificationResponse */ export type GetNotificationResponse = & Message<"openstatus.notification.v1.GetNotificationResponse"> & { /** * The notification channel. * * @generated from field: openstatus.notification.v1.Notification notification = 1; */ notification?: Notification; }; /** * Describes the message openstatus.notification.v1.GetNotificationResponse. * Use `create(GetNotificationResponseSchema)` to create a new message. */ export const GetNotificationResponseSchema: GenMessage< GetNotificationResponse > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 3); /** * ListNotificationsRequest is the request to list notification channels. * * @generated from message openstatus.notification.v1.ListNotificationsRequest */ export type ListNotificationsRequest = & Message<"openstatus.notification.v1.ListNotificationsRequest"> & { /** * Maximum number of notifications to return (1-100, defaults to 50). * * @generated from field: optional int32 limit = 1; */ limit?: number; /** * Number of notifications to skip for pagination (defaults to 0). * * @generated from field: optional int32 offset = 2; */ offset?: number; }; /** * Describes the message openstatus.notification.v1.ListNotificationsRequest. * Use `create(ListNotificationsRequestSchema)` to create a new message. */ export const ListNotificationsRequestSchema: GenMessage< ListNotificationsRequest > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 4); /** * ListNotificationsResponse is the response containing notification channels. * * @generated from message openstatus.notification.v1.ListNotificationsResponse */ export type ListNotificationsResponse = & Message<"openstatus.notification.v1.ListNotificationsResponse"> & { /** * Notification channel summaries. * * @generated from field: repeated openstatus.notification.v1.NotificationSummary notifications = 1; */ notifications: NotificationSummary[]; /** * Total number of notification channels. * * @generated from field: int32 total_size = 2; */ totalSize: number; }; /** * Describes the message openstatus.notification.v1.ListNotificationsResponse. * Use `create(ListNotificationsResponseSchema)` to create a new message. */ export const ListNotificationsResponseSchema: GenMessage< ListNotificationsResponse > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 5); /** * UpdateNotificationRequest is the request to update a notification channel. * * @generated from message openstatus.notification.v1.UpdateNotificationRequest */ export type UpdateNotificationRequest = & Message<"openstatus.notification.v1.UpdateNotificationRequest"> & { /** * Notification ID to update (required). * * @generated from field: string id = 1; */ id: string; /** * Updated display name. * * @generated from field: optional string name = 2; */ name?: string; /** * Updated provider-specific configuration. * * @generated from field: optional openstatus.notification.v1.NotificationData data = 3; */ data?: NotificationData; /** * Updated monitor IDs to associate. * * @generated from field: repeated string monitor_ids = 4; */ monitorIds: string[]; }; /** * Describes the message openstatus.notification.v1.UpdateNotificationRequest. * Use `create(UpdateNotificationRequestSchema)` to create a new message. */ export const UpdateNotificationRequestSchema: GenMessage< UpdateNotificationRequest > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 6); /** * UpdateNotificationResponse is the response after updating a notification channel. * * @generated from message openstatus.notification.v1.UpdateNotificationResponse */ export type UpdateNotificationResponse = & Message<"openstatus.notification.v1.UpdateNotificationResponse"> & { /** * The updated notification channel. * * @generated from field: openstatus.notification.v1.Notification notification = 1; */ notification?: Notification; }; /** * Describes the message openstatus.notification.v1.UpdateNotificationResponse. * Use `create(UpdateNotificationResponseSchema)` to create a new message. */ export const UpdateNotificationResponseSchema: GenMessage< UpdateNotificationResponse > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 7); /** * DeleteNotificationRequest is the request to delete a notification channel. * * @generated from message openstatus.notification.v1.DeleteNotificationRequest */ export type DeleteNotificationRequest = & Message<"openstatus.notification.v1.DeleteNotificationRequest"> & { /** * Notification ID to delete (required). * * @generated from field: string id = 1; */ id: string; }; /** * Describes the message openstatus.notification.v1.DeleteNotificationRequest. * Use `create(DeleteNotificationRequestSchema)` to create a new message. */ export const DeleteNotificationRequestSchema: GenMessage< DeleteNotificationRequest > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 8); /** * DeleteNotificationResponse is the response after deleting a notification channel. * * @generated from message openstatus.notification.v1.DeleteNotificationResponse */ export type DeleteNotificationResponse = & Message<"openstatus.notification.v1.DeleteNotificationResponse"> & { /** * Whether the deletion was successful. * * @generated from field: bool success = 1; */ success: boolean; }; /** * Describes the message openstatus.notification.v1.DeleteNotificationResponse. * Use `create(DeleteNotificationResponseSchema)` to create a new message. */ export const DeleteNotificationResponseSchema: GenMessage< DeleteNotificationResponse > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 9); /** * SendTestNotificationRequest is the request to send a test notification. * * @generated from message openstatus.notification.v1.SendTestNotificationRequest */ export type SendTestNotificationRequest = & Message<"openstatus.notification.v1.SendTestNotificationRequest"> & { /** * Provider type. * * @generated from field: openstatus.notification.v1.NotificationProvider provider = 1; */ provider: NotificationProvider; /** * Provider-specific configuration. * * @generated from field: openstatus.notification.v1.NotificationData data = 2; */ data?: NotificationData; }; /** * Describes the message openstatus.notification.v1.SendTestNotificationRequest. * Use `create(SendTestNotificationRequestSchema)` to create a new message. */ export const SendTestNotificationRequestSchema: GenMessage< SendTestNotificationRequest > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 10); /** * SendTestNotificationResponse is the response after sending a test notification. * * @generated from message openstatus.notification.v1.SendTestNotificationResponse */ export type SendTestNotificationResponse = & Message<"openstatus.notification.v1.SendTestNotificationResponse"> & { /** * Whether the test was successful. * * @generated from field: bool success = 1; */ success: boolean; /** * Optional error message if the test failed. * * @generated from field: optional string error_message = 2; */ errorMessage?: string; }; /** * Describes the message openstatus.notification.v1.SendTestNotificationResponse. * Use `create(SendTestNotificationResponseSchema)` to create a new message. */ export const SendTestNotificationResponseSchema: GenMessage< SendTestNotificationResponse > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 11); /** * CheckNotificationLimitRequest is the request to check notification limits. * * @generated from message openstatus.notification.v1.CheckNotificationLimitRequest */ export type CheckNotificationLimitRequest = & Message<"openstatus.notification.v1.CheckNotificationLimitRequest"> & {}; /** * Describes the message openstatus.notification.v1.CheckNotificationLimitRequest. * Use `create(CheckNotificationLimitRequestSchema)` to create a new message. */ export const CheckNotificationLimitRequestSchema: GenMessage< CheckNotificationLimitRequest > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 12); /** * CheckNotificationLimitResponse is the response containing limit information. * * @generated from message openstatus.notification.v1.CheckNotificationLimitResponse */ export type CheckNotificationLimitResponse = & Message<"openstatus.notification.v1.CheckNotificationLimitResponse"> & { /** * Whether the workspace has reached its notification limit. * * @generated from field: bool limit_reached = 1; */ limitReached: boolean; /** * Current number of notification channels. * * @generated from field: int32 current_count = 2; */ currentCount: number; /** * Maximum allowed notification channels. * * @generated from field: int32 max_count = 3; */ maxCount: number; }; /** * Describes the message openstatus.notification.v1.CheckNotificationLimitResponse. * Use `create(CheckNotificationLimitResponseSchema)` to create a new message. */ export const CheckNotificationLimitResponseSchema: GenMessage< CheckNotificationLimitResponse > = /*@__PURE__*/ messageDesc(file_openstatus_notification_v1_service, 13); /** * NotificationService provides CRUD operations for notification channels. * * @generated from service openstatus.notification.v1.NotificationService */ export const NotificationService: GenService<{ /** * CreateNotification creates a new notification channel. * * @generated from rpc openstatus.notification.v1.NotificationService.CreateNotification */ createNotification: { methodKind: "unary"; input: typeof CreateNotificationRequestSchema; output: typeof CreateNotificationResponseSchema; }; /** * GetNotification retrieves a notification channel by ID. * * @generated from rpc openstatus.notification.v1.NotificationService.GetNotification */ getNotification: { methodKind: "unary"; input: typeof GetNotificationRequestSchema; output: typeof GetNotificationResponseSchema; }; /** * ListNotifications returns a list of notification channels. * * @generated from rpc openstatus.notification.v1.NotificationService.ListNotifications */ listNotifications: { methodKind: "unary"; input: typeof ListNotificationsRequestSchema; output: typeof ListNotificationsResponseSchema; }; /** * UpdateNotification updates an existing notification channel. * * @generated from rpc openstatus.notification.v1.NotificationService.UpdateNotification */ updateNotification: { methodKind: "unary"; input: typeof UpdateNotificationRequestSchema; output: typeof UpdateNotificationResponseSchema; }; /** * DeleteNotification removes a notification channel. * * @generated from rpc openstatus.notification.v1.NotificationService.DeleteNotification */ deleteNotification: { methodKind: "unary"; input: typeof DeleteNotificationRequestSchema; output: typeof DeleteNotificationResponseSchema; }; /** * SendTestNotification sends a test notification to verify configuration. * * @generated from rpc openstatus.notification.v1.NotificationService.SendTestNotification */ sendTestNotification: { methodKind: "unary"; input: typeof SendTestNotificationRequestSchema; output: typeof SendTestNotificationResponseSchema; }; /** * CheckNotificationLimit checks if the workspace has reached its notification limit. * * @generated from rpc openstatus.notification.v1.NotificationService.CheckNotificationLimit */ checkNotificationLimit: { methodKind: "unary"; input: typeof CheckNotificationLimitRequestSchema; output: typeof CheckNotificationLimitResponseSchema; }; }> = /*@__PURE__*/ serviceDesc(file_openstatus_notification_v1_service, 0);