/*
 * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
 * @generated-id: 229830b77834
 */

import * as z from "zod/v4";
import * as openEnums from "../../types/enums.js";
import { OpenEnum } from "../../types/enums.js";

/**
 * HTTP status codes and reason phrases
 *
 * @remarks
 *
 * Status codes from the following RFCs are all observed:
 *
 *     * RFC 7231: Hypertext Transfer Protocol (HTTP/1.1), obsoletes 2616
 *     * RFC 6585: Additional HTTP Status Codes
 *     * RFC 3229: Delta encoding in HTTP
 *     * RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
 *     * RFC 5842: Binding Extensions to WebDAV
 *     * RFC 7238: Permanent Redirect
 *     * RFC 2295: Transparent Content Negotiation in HTTP
 *     * RFC 2774: An HTTP Extension Framework
 *     * RFC 7725: An HTTP Status Code to Report Legal Obstacles
 *     * RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
 *     * RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
 *     * RFC 8297: An HTTP Status Code for Indicating Hints
 *     * RFC 8470: Using Early Data in HTTP
 */
export const HTTPStatus = {
  OneHundred: 100,
  OneHundredAndOne: 101,
  OneHundredAndTwo: 102,
  OneHundredAndThree: 103,
  TwoHundred: 200,
  TwoHundredAndOne: 201,
  TwoHundredAndTwo: 202,
  TwoHundredAndThree: 203,
  TwoHundredAndFour: 204,
  TwoHundredAndFive: 205,
  TwoHundredAndSix: 206,
  TwoHundredAndSeven: 207,
  TwoHundredAndEight: 208,
  TwoHundredAndTwentySix: 226,
  ThreeHundred: 300,
  ThreeHundredAndOne: 301,
  ThreeHundredAndTwo: 302,
  ThreeHundredAndThree: 303,
  ThreeHundredAndFour: 304,
  ThreeHundredAndFive: 305,
  ThreeHundredAndSeven: 307,
  ThreeHundredAndEight: 308,
  FourHundred: 400,
  FourHundredAndOne: 401,
  FourHundredAndTwo: 402,
  FourHundredAndThree: 403,
  FourHundredAndFour: 404,
  FourHundredAndFive: 405,
  FourHundredAndSix: 406,
  FourHundredAndSeven: 407,
  FourHundredAndEight: 408,
  FourHundredAndNine: 409,
  FourHundredAndTen: 410,
  FourHundredAndEleven: 411,
  FourHundredAndTwelve: 412,
  FourHundredAndThirteen: 413,
  FourHundredAndFourteen: 414,
  FourHundredAndFifteen: 415,
  FourHundredAndSixteen: 416,
  FourHundredAndSeventeen: 417,
  FourHundredAndEighteen: 418,
  FourHundredAndTwentyOne: 421,
  FourHundredAndTwentyTwo: 422,
  FourHundredAndTwentyThree: 423,
  FourHundredAndTwentyFour: 424,
  FourHundredAndTwentyFive: 425,
  FourHundredAndTwentySix: 426,
  FourHundredAndTwentyEight: 428,
  FourHundredAndTwentyNine: 429,
  FourHundredAndThirtyOne: 431,
  FourHundredAndFiftyOne: 451,
  FiveHundred: 500,
  FiveHundredAndOne: 501,
  FiveHundredAndTwo: 502,
  FiveHundredAndThree: 503,
  FiveHundredAndFour: 504,
  FiveHundredAndFive: 505,
  FiveHundredAndSix: 506,
  FiveHundredAndSeven: 507,
  FiveHundredAndEight: 508,
  FiveHundredAndTen: 510,
  FiveHundredAndEleven: 511,
} as const;
/**
 * HTTP status codes and reason phrases
 *
 * @remarks
 *
 * Status codes from the following RFCs are all observed:
 *
 *     * RFC 7231: Hypertext Transfer Protocol (HTTP/1.1), obsoletes 2616
 *     * RFC 6585: Additional HTTP Status Codes
 *     * RFC 3229: Delta encoding in HTTP
 *     * RFC 4918: HTTP Extensions for WebDAV, obsoletes 2518
 *     * RFC 5842: Binding Extensions to WebDAV
 *     * RFC 7238: Permanent Redirect
 *     * RFC 2295: Transparent Content Negotiation in HTTP
 *     * RFC 2774: An HTTP Extension Framework
 *     * RFC 7725: An HTTP Status Code to Report Legal Obstacles
 *     * RFC 7540: Hypertext Transfer Protocol Version 2 (HTTP/2)
 *     * RFC 2324: Hyper Text Coffee Pot Control Protocol (HTCPCP/1.0)
 *     * RFC 8297: An HTTP Status Code for Indicating Hints
 *     * RFC 8470: Using Early Data in HTTP
 */
export type HTTPStatus = OpenEnum<typeof HTTPStatus>;

/** @internal */
export const HTTPStatus$inboundSchema: z.ZodType<HTTPStatus, unknown> =
  openEnums.inboundSchemaInt(HTTPStatus);
