// @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=ts" // @generated from file openstatus/monitor/v1/dns_monitor.proto (package openstatus.monitor.v1, syntax proto3) /* eslint-disable */ import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; import { file_buf_validate_validate } from "../../../buf/validate/validate_pb.ts"; import { file_gnostic_openapi_v3_annotations } from "../../../gnostic/openapi/v3/annotations_pb.ts"; import type { RecordAssertion } from "./assertions_pb.ts"; import { file_openstatus_monitor_v1_assertions } from "./assertions_pb.ts"; import type { OpenTelemetryConfig } from "./http_monitor_pb.ts"; import { file_openstatus_monitor_v1_http_monitor } from "./http_monitor_pb.ts"; import type { MonitorStatus, Periodicity, Region } from "./monitor_pb.ts"; import { file_openstatus_monitor_v1_monitor } from "./monitor_pb.ts"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file openstatus/monitor/v1/dns_monitor.proto. */ export const file_openstatus_monitor_v1_dns_monitor: GenFile = /*@__PURE__*/ fileDesc( "CidvcGVuc3RhdHVzL21vbml0b3IvdjEvZG5zX21vbml0b3IucHJvdG8SFW9wZW5zdGF0dXMubW9uaXRvci52MSLLBQoKRE5TTW9uaXRvchIKCgJpZBgBIAEoCRIzCgRuYW1lGAIgASgJQiW6Rxg6FhIURE5TIFJlc29sdXRpb24gQ2hlY2u6SAdyBRABGIACEikKA3VyaRgDIAEoCUIcukcPOg0SC2V4YW1wbGUuY29tukgHcgUQARiAEBJBCgtwZXJpb2RpY2l0eRgEIAEoDjIiLm9wZW5zdGF0dXMubW9uaXRvci52MS5QZXJpb2RpY2l0eUIIukgFggECIAASHAoHdGltZW91dBgFIAEoA0ILukgIIgYYwKkHKAASJQoLZGVncmFkZWRfYXQYBiABKANCC7pICCIGGMCpBygASACIAQESGAoFcmV0cnkYByABKANCCbpIBiIEGAooABJLChFyZWNvcmRfYXNzZXJ0aW9ucxgIIAMoCzImLm9wZW5zdGF0dXMubW9uaXRvci52MS5SZWNvcmRBc3NlcnRpb25CCLpIBZIBAhAKEiIKC2Rlc2NyaXB0aW9uGAkgASgJQgi6SAVyAxiACEgBiAEBEhMKBmFjdGl2ZRgKIAEoCEgCiAEBEhMKBnB1YmxpYxgLIAEoCEgDiAEBEj8KB3JlZ2lvbnMYDCADKA4yHS5vcGVuc3RhdHVzLm1vbml0b3IudjEuUmVnaW9uQg+6SAySAQkQHCIFggECIAASQgoOb3Blbl90ZWxlbWV0cnkYDSABKAsyKi5vcGVuc3RhdHVzLm1vbml0b3IudjEuT3BlblRlbGVtZXRyeUNvbmZpZxI0CgZzdGF0dXMYDiABKA4yJC5vcGVuc3RhdHVzLm1vbml0b3IudjEuTW9uaXRvclN0YXR1cxIjChRwcml2YXRlX2xvY2F0aW9uX2lkcxgPIAMoCUIFukcCGAFCDgoMX2RlZ3JhZGVkX2F0Qg4KDF9kZXNjcmlwdGlvbkIJCgdfYWN0aXZlQgkKB19wdWJsaWNCU1pRZ2l0aHViLmNvbS9vcGVuc3RhdHVzaHEvb3BlbnN0YXR1cy9wYWNrYWdlcy9wcm90by9vcGVuc3RhdHVzL21vbml0b3IvdjE7bW9uaXRvcnYxYgZwcm90bzM", [ file_buf_validate_validate, file_gnostic_openapi_v3_annotations, file_openstatus_monitor_v1_assertions, file_openstatus_monitor_v1_http_monitor, file_openstatus_monitor_v1_monitor, ], ); /** * DNSMonitor defines the configuration for a DNS monitor. * * @generated from message openstatus.monitor.v1.DNSMonitor */ export type DNSMonitor = Message<"openstatus.monitor.v1.DNSMonitor"> & { /** * Unique identifier for the monitor (output only for create requests). * * @generated from field: string id = 1; */ id: string; /** * Name of the monitor (required, max 256 characters). * * @generated from field: string name = 2; */ name: string; /** * Domain to resolve (required, max 2048 characters). * * @generated from field: string uri = 3; */ uri: string; /** * Check periodicity (required). * * @generated from field: openstatus.monitor.v1.Periodicity periodicity = 4; */ periodicity: Periodicity; /** * Timeout in milliseconds (0-120000, defaults to 45000). * * @generated from field: int64 timeout = 5; */ timeout: bigint; /** * Latency threshold for degraded status in milliseconds (optional, 0-120000). * * @generated from field: optional int64 degraded_at = 6; */ degradedAt?: bigint; /** * Number of retry attempts (0-10, defaults to 3). * * @generated from field: int64 retry = 7; */ retry: bigint; /** * DNS record assertions for validation. * * @generated from field: repeated openstatus.monitor.v1.RecordAssertion record_assertions = 8; */ recordAssertions: RecordAssertion[]; /** * Description of the monitor (optional). * * @generated from field: optional string description = 9; */ description?: string; /** * Whether the monitor is active (defaults to false). * * @generated from field: optional bool active = 10; */ active?: boolean; /** * Whether the monitor is publicly visible (defaults to false). * * @generated from field: optional bool public = 11; */ public?: boolean; /** * Geographic regions to run checks from. * * @generated from field: repeated openstatus.monitor.v1.Region regions = 12; */ regions: Region[]; /** * OpenTelemetry configuration for exporting metrics. * * @generated from field: openstatus.monitor.v1.OpenTelemetryConfig open_telemetry = 13; */ openTelemetry?: OpenTelemetryConfig; /** * Current operational status of the monitor. * * @generated from field: openstatus.monitor.v1.MonitorStatus status = 14; */ status: MonitorStatus; /** * IDs of private locations that run this monitor. Read-only. * * @generated from field: repeated string private_location_ids = 15; */ privateLocationIds: string[]; }; /** * Describes the message openstatus.monitor.v1.DNSMonitor. * Use `create(DNSMonitorSchema)` to create a new message. */ export const DNSMonitorSchema: GenMessage = /*@__PURE__*/ messageDesc(file_openstatus_monitor_v1_dns_monitor, 0);