// Code generated by cmd/lexgen (see Makefile's lexgen); DO NOT EDIT.

package ozone

// schema: tools.ozone.safelink.defs

// SafelinkDefs_Event is a "event" in the tools.ozone.safelink.defs schema.
//
// An event for URL safety decisions
type SafelinkDefs_Event struct {
	Action *string `json:"action" cborgen:"action"`
	// comment: Optional comment about the decision
	Comment   *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
	CreatedAt string  `json:"createdAt" cborgen:"createdAt"`
	// createdBy: DID of the user who created this rule
	CreatedBy string  `json:"createdBy" cborgen:"createdBy"`
	EventType *string `json:"eventType" cborgen:"eventType"`
	// id: Auto-incrementing row ID
	Id      int64   `json:"id" cborgen:"id"`
	Pattern *string `json:"pattern" cborgen:"pattern"`
	Reason  *string `json:"reason" cborgen:"reason"`
	// url: The URL that this rule applies to
	Url string `json:"url" cborgen:"url"`
}

// SafelinkDefs_UrlRule is a "urlRule" in the tools.ozone.safelink.defs schema.
//
// Input for creating a URL safety rule
type SafelinkDefs_UrlRule struct {
	Action *string `json:"action" cborgen:"action"`
	// comment: Optional comment about the decision
	Comment *string `json:"comment,omitempty" cborgen:"comment,omitempty"`
	// createdAt: Timestamp when the rule was created
	CreatedAt string `json:"createdAt" cborgen:"createdAt"`
	// createdBy: DID of the user added the rule.
	CreatedBy string  `json:"createdBy" cborgen:"createdBy"`
	Pattern   *string `json:"pattern" cborgen:"pattern"`
	Reason    *string `json:"reason" cborgen:"reason"`
	// updatedAt: Timestamp when the rule was last updated
	UpdatedAt string `json:"updatedAt" cborgen:"updatedAt"`
	// url: The URL or domain to apply the rule to
	Url string `json:"url" cborgen:"url"`
}
