1// Copyright 2018 Istio Authors
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16
17package istio.policy.v1beta1;
18
19option go_package="istio.io/api/policy/v1beta1";
20
21// ValueType describes the types that values in the Istio system can take. These
22// are used to describe the type of Attributes at run time, describe the type of
23// the result of evaluating an expression, and to describe the runtime type of
24// fields of other descriptors.
25enum ValueType {
26    // Invalid, default value.
27    VALUE_TYPE_UNSPECIFIED = 0;
28
29    // An undiscriminated variable-length string.
30    STRING = 1;
31
32    // An undiscriminated 64-bit signed integer.
33    INT64 = 2;
34
35    // An undiscriminated 64-bit floating-point value.
36    DOUBLE = 3;
37
38    // An undiscriminated boolean value.
39    BOOL = 4;
40
41    // A point in time.
42    TIMESTAMP = 5;
43
44    // An IP address.
45    IP_ADDRESS = 6;
46
47    // An email address.
48    EMAIL_ADDRESS = 7;
49
50    // A URI.
51    URI = 8;
52
53    // A DNS name.
54    DNS_NAME = 9;
55
56    // A span between two points in time.
57    DURATION = 10;
58
59    // A map string -> string, typically used by headers.
60    STRING_MAP = 11;
61}
62