import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; import type { BodyAssertion, HeaderAssertion, StatusCodeAssertion } from "./assertions_pb.js"; import type { MonitorStatus, Periodicity, Region } from "./monitor_pb.js"; import type { Message } from "@bufbuild/protobuf"; /** * Describes the file openstatus/monitor/v1/http_monitor.proto. */ export declare const file_openstatus_monitor_v1_http_monitor: GenFile; /** * Headers represents a key-value pair for HTTP headers. * * @generated from message openstatus.monitor.v1.Headers */ export type Headers = Message<"openstatus.monitor.v1.Headers"> & { /** * Header name. * * @generated from field: string key = 1; */ key: string; /** * Header value. * * @generated from field: string value = 2; */ value: string; }; /** * Describes the message openstatus.monitor.v1.Headers. * Use `create(HeadersSchema)` to create a new message. */ export declare const HeadersSchema: GenMessage; /** * OpenTelemetry configuration for exporting metrics. * * @generated from message openstatus.monitor.v1.OpenTelemetryConfig */ export type OpenTelemetryConfig = Message<"openstatus.monitor.v1.OpenTelemetryConfig"> & { /** * OTEL endpoint URL. * * @generated from field: string endpoint = 1; */ endpoint: string; /** * Custom headers for OTEL requests. * * @generated from field: repeated openstatus.monitor.v1.Headers headers = 2; */ headers: Headers[]; }; /** * Describes the message openstatus.monitor.v1.OpenTelemetryConfig. * Use `create(OpenTelemetryConfigSchema)` to create a new message. */ export declare const OpenTelemetryConfigSchema: GenMessage; /** * HTTPMonitor defines the configuration for an HTTP monitor. * * @generated from message openstatus.monitor.v1.HTTPMonitor */ export type HTTPMonitor = Message<"openstatus.monitor.v1.HTTPMonitor"> & { /** * 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; /** * URL to monitor (required, max 2048 characters). * * @generated from field: string url = 3; */ url: string; /** * Check periodicity (required). * * @generated from field: openstatus.monitor.v1.Periodicity periodicity = 4; */ periodicity: Periodicity; /** * HTTP method to use (defaults to GET). * * @generated from field: openstatus.monitor.v1.HTTPMethod method = 5; */ method: HTTPMethod; /** * Request body (optional). * * @generated from field: string body = 6; */ body: string; /** * Timeout in milliseconds (0-120000, defaults to 45000). * * @generated from field: int64 timeout = 7; */ timeout: bigint; /** * Latency threshold for degraded status in milliseconds (optional, 0-120000). * * @generated from field: optional int64 degraded_at = 8; */ degradedAt?: bigint; /** * Number of retry attempts (0-10, defaults to 3). * * @generated from field: int64 retry = 9; */ retry: bigint; /** * Whether to follow HTTP redirects (defaults to true when not specified). * * @generated from field: optional bool follow_redirects = 10; */ followRedirects?: boolean; /** * Custom headers for the request. * * @generated from field: repeated openstatus.monitor.v1.Headers headers = 11; */ headers: Headers[]; /** * Status code assertions for the response. * * @generated from field: repeated openstatus.monitor.v1.StatusCodeAssertion status_code_assertions = 12; */ statusCodeAssertions: StatusCodeAssertion[]; /** * Body content assertions for the response. * * @generated from field: repeated openstatus.monitor.v1.BodyAssertion body_assertions = 13; */ bodyAssertions: BodyAssertion[]; /** * Header assertions for the response. * * @generated from field: repeated openstatus.monitor.v1.HeaderAssertion header_assertions = 14; */ headerAssertions: HeaderAssertion[]; /** * Description of the monitor (optional). * * @generated from field: optional string description = 15; */ description?: string; /** * Whether the monitor is active (defaults to false). * * @generated from field: optional bool active = 16; */ active?: boolean; /** * Whether the monitor is publicly visible (defaults to false). * * @generated from field: optional bool public = 17; */ public?: boolean; /** * Geographic regions to run checks from. * * @generated from field: repeated openstatus.monitor.v1.Region regions = 18; */ regions: Region[]; /** * OpenTelemetry configuration for exporting metrics. * * @generated from field: openstatus.monitor.v1.OpenTelemetryConfig open_telemetry = 19; */ openTelemetry?: OpenTelemetryConfig; /** * Current operational status of the monitor. * * @generated from field: openstatus.monitor.v1.MonitorStatus status = 20; */ status: MonitorStatus; /** * IDs of private locations that run this monitor. Read-only. * * @generated from field: repeated string private_location_ids = 21; */ privateLocationIds: string[]; }; /** * Describes the message openstatus.monitor.v1.HTTPMonitor. * Use `create(HTTPMonitorSchema)` to create a new message. */ export declare const HTTPMonitorSchema: GenMessage; /** * HTTP methods supported for monitors. * * @generated from enum openstatus.monitor.v1.HTTPMethod */ export declare enum HTTPMethod { /** * @generated from enum value: HTTP_METHOD_UNSPECIFIED = 0; */ HTTP_METHOD_UNSPECIFIED = 0, /** * @generated from enum value: HTTP_METHOD_GET = 1; */ HTTP_METHOD_GET = 1, /** * @generated from enum value: HTTP_METHOD_POST = 2; */ HTTP_METHOD_POST = 2, /** * @generated from enum value: HTTP_METHOD_HEAD = 3; */ HTTP_METHOD_HEAD = 3, /** * @generated from enum value: HTTP_METHOD_PUT = 4; */ HTTP_METHOD_PUT = 4, /** * @generated from enum value: HTTP_METHOD_PATCH = 5; */ HTTP_METHOD_PATCH = 5, /** * @generated from enum value: HTTP_METHOD_DELETE = 6; */ HTTP_METHOD_DELETE = 6, /** * @generated from enum value: HTTP_METHOD_TRACE = 7; */ HTTP_METHOD_TRACE = 7, /** * @generated from enum value: HTTP_METHOD_CONNECT = 8; */ HTTP_METHOD_CONNECT = 8, /** * @generated from enum value: HTTP_METHOD_OPTIONS = 9; */ HTTP_METHOD_OPTIONS = 9 } /** * Describes the enum openstatus.monitor.v1.HTTPMethod. */ export declare const HTTPMethodSchema: GenEnum; //# sourceMappingURL=http_monitor_pb.d.ts.map