// Code generated by "libovsdb.modelgen"
// DO NOT EDIT.

package ovsmodel

const CTTimeoutPolicyTable = "CT_Timeout_Policy"

type (
	CTTimeoutPolicyTimeouts = string
)

var (
	CTTimeoutPolicyTimeoutsTCPSynSent     CTTimeoutPolicyTimeouts = "tcp_syn_sent"
	CTTimeoutPolicyTimeoutsTCPSynRecv     CTTimeoutPolicyTimeouts = "tcp_syn_recv"
	CTTimeoutPolicyTimeoutsTCPEstablished CTTimeoutPolicyTimeouts = "tcp_established"
	CTTimeoutPolicyTimeoutsTCPFinWait     CTTimeoutPolicyTimeouts = "tcp_fin_wait"
	CTTimeoutPolicyTimeoutsTCPCloseWait   CTTimeoutPolicyTimeouts = "tcp_close_wait"
	CTTimeoutPolicyTimeoutsTCPLastAck     CTTimeoutPolicyTimeouts = "tcp_last_ack"
	CTTimeoutPolicyTimeoutsTCPTimeWait    CTTimeoutPolicyTimeouts = "tcp_time_wait"
	CTTimeoutPolicyTimeoutsTCPClose       CTTimeoutPolicyTimeouts = "tcp_close"
	CTTimeoutPolicyTimeoutsTCPSynSent2    CTTimeoutPolicyTimeouts = "tcp_syn_sent2"
	CTTimeoutPolicyTimeoutsTCPRetransmit  CTTimeoutPolicyTimeouts = "tcp_retransmit"
	CTTimeoutPolicyTimeoutsTCPUnack       CTTimeoutPolicyTimeouts = "tcp_unack"
	CTTimeoutPolicyTimeoutsUDPFirst       CTTimeoutPolicyTimeouts = "udp_first"
	CTTimeoutPolicyTimeoutsUDPSingle      CTTimeoutPolicyTimeouts = "udp_single"
	CTTimeoutPolicyTimeoutsUDPMultiple    CTTimeoutPolicyTimeouts = "udp_multiple"
	CTTimeoutPolicyTimeoutsICMPFirst      CTTimeoutPolicyTimeouts = "icmp_first"
	CTTimeoutPolicyTimeoutsICMPReply      CTTimeoutPolicyTimeouts = "icmp_reply"
)

// CTTimeoutPolicy defines an object in CT_Timeout_Policy table
type CTTimeoutPolicy struct {
	UUID        string            `ovsdb:"_uuid"`
	ExternalIDs map[string]string `ovsdb:"external_ids"`
	Timeouts    map[string]int    `ovsdb:"timeouts" validate:"dive,keys,oneof='tcp_syn_sent' 'tcp_syn_recv' 'tcp_established' 'tcp_fin_wait' 'tcp_close_wait' 'tcp_last_ack' 'tcp_time_wait' 'tcp_close' 'tcp_syn_sent2' 'tcp_retransmit' 'tcp_unack' 'udp_first' 'udp_single' 'udp_multiple' 'icmp_first' 'icmp_reply',endkeys,min=0,max=4294967295"`
}
