# Copyright 2023-2025 Buf Technologies, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: cel/policy/policy.proto
# Protobuf Python Version: 5.26.0
"""Generated protocol buffer code."""
from google.protobuf import descriptor as _descriptor
from google.protobuf import descriptor_pool as _descriptor_pool
from google.protobuf import symbol_database as _symbol_database
from google.protobuf.internal import builder as _builder
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()




DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x17\x63\x65l/policy/policy.proto\x12\ncel.policy\"\xf5\x06\n\nPolicySpec\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12\x37\n\x07imports\x18\x02 \x03(\x0b\x32\x1d.cel.policy.PolicySpec.ImportR\x07imports\x12=\n\tvariables\x18\x03 \x03(\x0b\x32\x1f.cel.policy.PolicySpec.VariableR\tvariables\x12\x1b\n\x06output\x18\x04 \x01(\tH\x00R\x06output\x88\x01\x01\x12%\n\x0b\x64\x65scription\x18\x05 \x01(\tH\x01R\x0b\x64\x65scription\x88\x01\x01\x12%\n\x0b\x65xplanation\x18\x06 \x01(\tH\x02R\x0b\x65xplanation\x88\x01\x01\x12\x32\n\x05match\x18\x07 \x03(\x0b\x32\x1c.cel.policy.PolicySpec.MatchR\x05match\x12/\n\x04rule\x18\x08 \x01(\x0b\x32\x1b.cel.policy.PolicySpec.RuleR\x04rule\x1a\x1c\n\x06Import\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x1a`\n\x08Variable\x12\x12\n\x04name\x18\x01 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x02 \x01(\tR\x0b\x64\x65scription\x12\x1e\n\nexpression\x18\x03 \x01(\tR\nexpression\x1a\xab\x01\n\x04Rule\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12 \n\x0b\x64\x65scription\x18\x02 \x01(\tR\x0b\x64\x65scription\x12=\n\tvariables\x18\x03 \x03(\x0b\x32\x1f.cel.policy.PolicySpec.VariableR\tvariables\x12\x32\n\x05match\x18\x04 \x03(\x0b\x32\x1c.cel.policy.PolicySpec.MatchR\x05match\x1a\xb1\x01\n\x05Match\x12!\n\tcondition\x18\x01 \x01(\tH\x01R\tcondition\x88\x01\x01\x12\x18\n\x06output\x18\x02 \x01(\tH\x00R\x06output\x12\x31\n\x04rule\x18\x03 \x01(\x0b\x32\x1b.cel.policy.PolicySpec.RuleH\x00R\x04rule\x12 \n\x0b\x65xplanation\x18\x04 \x01(\tR\x0b\x65xplanationB\x08\n\x06\x61\x63tionB\x0c\n\n_conditionB\t\n\x07_outputB\x0e\n\x0c_descriptionB\x0e\n\x0c_explanationBy\n\x0e\x63om.cel.policyB\x0bPolicyProtoP\x01Z\x0e\x63\x65l.dev/policy\xf8\x01\x01\xa2\x02\x03\x43PX\xaa\x02\nCel.Policy\xca\x02\nCel\\Policy\xe2\x02\x16\x43\x65l\\Policy\\GPBMetadata\xea\x02\x0b\x43\x65l::Policyb\x06proto3')

_globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'cel.policy.policy_pb2', _globals)
if not _descriptor._USE_C_DESCRIPTORS:
  _globals['DESCRIPTOR']._loaded_options = None
  _globals['DESCRIPTOR']._serialized_options = b'\n\016com.cel.policyB\013PolicyProtoP\001Z\016cel.dev/policy\370\001\001\242\002\003CPX\252\002\nCel.Policy\312\002\nCel\\Policy\342\002\026Cel\\Policy\\GPBMetadata\352\002\013Cel::Policy'
  _globals['_POLICYSPEC']._serialized_start=40
  _globals['_POLICYSPEC']._serialized_end=925
  _globals['_POLICYSPEC_IMPORT']._serialized_start=402
  _globals['_POLICYSPEC_IMPORT']._serialized_end=430
  _globals['_POLICYSPEC_VARIABLE']._serialized_start=432
  _globals['_POLICYSPEC_VARIABLE']._serialized_end=528
  _globals['_POLICYSPEC_RULE']._serialized_start=531
  _globals['_POLICYSPEC_RULE']._serialized_end=702
  _globals['_POLICYSPEC_MATCH']._serialized_start=705
  _globals['_POLICYSPEC_MATCH']._serialized_end=882
# @@protoc_insertion_point(module_scope)
