import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; import type { RecordAssertion } from "./assertions_pb.js"; import type { OpenTelemetryConfig } from "./http_monitor_pb.js"; import type { MonitorStatus, Periodicity, Region } from "./monitor_pb.js"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file openstatus/monitor/v1/dns_monitor.proto. */ export declare const file_openstatus_monitor_v1_dns_monitor: GenFile; /** * 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 declare const DNSMonitorSchema: GenMessage; //# sourceMappingURL=dns_monitor_pb.d.ts.map