defmodule Authzed.Api.V1.RelationshipUpdate.Operation do @moduledoc false use Protobuf, enum: true, full_name: "authzed.api.v1.RelationshipUpdate.Operation", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:OPERATION_UNSPECIFIED, 0) field(:OPERATION_CREATE, 1) field(:OPERATION_TOUCH, 2) field(:OPERATION_DELETE, 3) end defmodule Authzed.Api.V1.AlgebraicSubjectSet.Operation do @moduledoc false use Protobuf, enum: true, full_name: "authzed.api.v1.AlgebraicSubjectSet.Operation", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:OPERATION_UNSPECIFIED, 0) field(:OPERATION_UNION, 1) field(:OPERATION_INTERSECTION, 2) field(:OPERATION_EXCLUSION, 3) end defmodule Authzed.Api.V1.Relationship do @moduledoc false use Protobuf, full_name: "authzed.api.v1.Relationship", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:resource, 1, type: Authzed.Api.V1.ObjectReference, deprecated: false) field(:relation, 2, type: :string, deprecated: false) field(:subject, 3, type: Authzed.Api.V1.SubjectReference, deprecated: false) field(:optional_caveat, 4, type: Authzed.Api.V1.ContextualizedCaveat, json_name: "optionalCaveat", deprecated: false ) field(:optional_expires_at, 5, type: Google.Protobuf.Timestamp, json_name: "optionalExpiresAt") end defmodule Authzed.Api.V1.ContextualizedCaveat do @moduledoc false use Protobuf, full_name: "authzed.api.v1.ContextualizedCaveat", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:caveat_name, 1, type: :string, json_name: "caveatName", deprecated: false) field(:context, 2, type: Google.Protobuf.Struct, deprecated: false) end defmodule Authzed.Api.V1.SubjectReference do @moduledoc false use Protobuf, full_name: "authzed.api.v1.SubjectReference", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:object, 1, type: Authzed.Api.V1.ObjectReference, deprecated: false) field(:optional_relation, 2, type: :string, json_name: "optionalRelation", deprecated: false) end defmodule Authzed.Api.V1.ObjectReference do @moduledoc false use Protobuf, full_name: "authzed.api.v1.ObjectReference", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:object_type, 1, type: :string, json_name: "objectType", deprecated: false) field(:object_id, 2, type: :string, json_name: "objectId", deprecated: false) end defmodule Authzed.Api.V1.ZedToken do @moduledoc false use Protobuf, full_name: "authzed.api.v1.ZedToken", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:token, 1, type: :string, deprecated: false) end defmodule Authzed.Api.V1.Cursor do @moduledoc false use Protobuf, full_name: "authzed.api.v1.Cursor", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:token, 1, type: :string, deprecated: false) end defmodule Authzed.Api.V1.RelationshipUpdate do @moduledoc false use Protobuf, full_name: "authzed.api.v1.RelationshipUpdate", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:operation, 1, type: Authzed.Api.V1.RelationshipUpdate.Operation, enum: true, deprecated: false ) field(:relationship, 2, type: Authzed.Api.V1.Relationship, deprecated: false) end defmodule Authzed.Api.V1.PermissionRelationshipTree do @moduledoc false use Protobuf, full_name: "authzed.api.v1.PermissionRelationshipTree", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 oneof(:tree_type, 0) field(:intermediate, 1, type: Authzed.Api.V1.AlgebraicSubjectSet, oneof: 0) field(:leaf, 2, type: Authzed.Api.V1.DirectSubjectSet, oneof: 0) field(:expanded_object, 3, type: Authzed.Api.V1.ObjectReference, json_name: "expandedObject") field(:expanded_relation, 4, type: :string, json_name: "expandedRelation") end defmodule Authzed.Api.V1.AlgebraicSubjectSet do @moduledoc false use Protobuf, full_name: "authzed.api.v1.AlgebraicSubjectSet", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:operation, 1, type: Authzed.Api.V1.AlgebraicSubjectSet.Operation, enum: true, deprecated: false ) field(:children, 2, repeated: true, type: Authzed.Api.V1.PermissionRelationshipTree, deprecated: false ) end defmodule Authzed.Api.V1.DirectSubjectSet do @moduledoc false use Protobuf, full_name: "authzed.api.v1.DirectSubjectSet", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:subjects, 1, repeated: true, type: Authzed.Api.V1.SubjectReference) end defmodule Authzed.Api.V1.PartialCaveatInfo do @moduledoc false use Protobuf, full_name: "authzed.api.v1.PartialCaveatInfo", protoc_gen_elixir_version: "0.16.0", syntax: :proto3 field(:missing_required_context, 1, repeated: true, type: :string, json_name: "missingRequiredContext", deprecated: false ) end