import { IComGithubCiliumCiliumPkgPolicyApiHeaderMatch } from "./HeaderMatch.js"; import { ModelData, Model } from "@kubernetes-models/base"; /** * PortRuleHTTP is a list of HTTP protocol constraints. All fields are * optional, if all fields are empty or missing, the rule does not have any * effect. * * All fields of this type are extended POSIX regex as defined by IEEE Std * 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) * matched against the path of an incoming request. Currently it can contain * characters disallowed from the conventional "path" part of a URL as defined * by RFC 3986. */ export interface IPortRuleHTTP { /** * HeaderMatches is a list of HTTP headers which must be * present and match against the given values. Mismatch field can be used * to specify what to do when there is no match. */ "headerMatches"?: Array; /** * Headers is a list of HTTP headers which must be present in the * request. If omitted or empty, requests are allowed regardless of * headers present. */ "headers"?: Array; /** * Host is an extended POSIX regex matched against the host header of a * request. Examples: * * - foo.bar.com will match the host fooXbar.com or foo-bar.com * - foo\.bar\.com will only match the host foo.bar.com * * If omitted or empty, the value of the host header is ignored. */ "host"?: string; /** * Method is an extended POSIX regex matched against the method of a * request, e.g. "GET", "POST", "PUT", "PATCH", "DELETE", ... * * If omitted or empty, all methods are allowed. */ "method"?: string; /** * Path is an extended POSIX regex matched against the path of a * request. Currently it can contain characters disallowed from the * conventional "path" part of a URL as defined by RFC 3986. * * If omitted or empty, all paths are all allowed. */ "path"?: string; } /** * PortRuleHTTP is a list of HTTP protocol constraints. All fields are * optional, if all fields are empty or missing, the rule does not have any * effect. * * All fields of this type are extended POSIX regex as defined by IEEE Std * 1003.1, (i.e this follows the egrep/unix syntax, not the perl syntax) * matched against the path of an incoming request. Currently it can contain * characters disallowed from the conventional "path" part of a URL as defined * by RFC 3986. */ export declare class PortRuleHTTP extends Model implements IPortRuleHTTP { "headerMatches"?: Array; "headers"?: Array; "host"?: string; "method"?: string; "path"?: string; constructor(data?: ModelData); } export type { IPortRuleHTTP as IComGithubCiliumCiliumPkgPolicyApiPortRuleHTTP, PortRuleHTTP as ComGithubCiliumCiliumPkgPolicyApiPortRuleHTTP };