# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: nebius/storage/v1alpha1/transfer.proto
"""Generated protocol buffer code."""
from google.protobuf.internal import builder as _builder
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
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()


from nebius.api.buf.validate import validate_pb2 as buf_dot_validate_dot_validate__pb2
from nebius.api.nebius import annotations_pb2 as nebius_dot_annotations__pb2
from nebius.api.nebius.common.v1 import metadata_pb2 as nebius_dot_common_dot_v1_dot_metadata__pb2
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
from google.protobuf import duration_pb2 as google_dot_protobuf_dot_duration__pb2


DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n&nebius/storage/v1alpha1/transfer.proto\x12\x17nebius.storage.v1alpha1\x1a\x1b\x62uf/validate/validate.proto\x1a\x18nebius/annotations.proto\x1a\x1fnebius/common/v1/metadata.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/duration.proto\"\xdc\x01\n\x08Transfer\x12\x46\n\x08metadata\x18\x01 \x01(\x0b\x32\".nebius.common.v1.ResourceMetadataB\x06\xbaH\x03\xc8\x01\x01R\x08metadata\x12\x41\n\x04spec\x18\x02 \x01(\x0b\x32%.nebius.storage.v1alpha1.TransferSpecB\x06\xbaH\x03\xc8\x01\x01R\x04spec\x12\x45\n\x06status\x18\x03 \x01(\x0b\x32\'.nebius.storage.v1alpha1.TransferStatusB\x04\xbaJ\x01\x05R\x06status\"\xf2\x11\n\x0cTransferSpec\x12R\n\x06source\x18\x01 \x01(\x0b\x32\x32.nebius.storage.v1alpha1.TransferSpec.SourceBucketB\x06\xbaH\x03\xc8\x01\x01R\x06source\x12\x61\n\x0b\x64\x65stination\x18\x02 \x01(\x0b\x32\x37.nebius.storage.v1alpha1.TransferSpec.DestinationBucketB\x06\xbaH\x03\xc8\x01\x01R\x0b\x64\x65stination\x12|\n\x13\x61\x66ter_one_iteration\x18\x03 \x01(\x0b\x32\x44.nebius.storage.v1alpha1.TransferSpec.StopConditionAfterOneIterationB\x04\xbaJ\x01\x06H\x00R\x11\x61\x66terOneIteration\x12\x83\x01\n\x18\x61\x66ter_n_empty_iterations\x18\x04 \x01(\x0b\x32H.nebius.storage.v1alpha1.TransferSpec.StopConditionAfterNEmptyIterationsH\x00R\x15\x61\x66terNEmptyIterations\x12_\n\x08infinite\x18\x05 \x01(\x0b\x32;.nebius.storage.v1alpha1.TransferSpec.StopConditionInfiniteB\x04\xbaJ\x01\x06H\x00R\x08infinite\x12\x61\n\x18inter_iteration_interval\x18\x06 \x01(\x0b\x32\x19.google.protobuf.DurationB\x0c\xbaH\x05\xaa\x01\x02\x32\x00\xbaJ\x01\x07R\x16interIterationInterval\x12n\n\x12overwrite_strategy\x18\x07 \x01(\x0e\x32\x37.nebius.storage.v1alpha1.TransferSpec.OverwriteStrategyB\x06\xbaH\x03\xc8\x01\x01R\x11overwriteStrategy\x1a\xb4\x02\n\x0cSourceBucket\x12&\n\x08\x65ndpoint\x18\x01 \x01(\tB\n\xbaH\x03\xc8\x01\x01\xbaJ\x01\x02R\x08\x65ndpoint\x12+\n\x0b\x62ucket_name\x18\x02 \x01(\tB\n\xbaH\x03\xc8\x01\x01\xbaJ\x01\x02R\nbucketName\x12\"\n\x06region\x18\x03 \x01(\tB\n\xbaH\x03\xc8\x01\x01\xbaJ\x01\x02R\x06region\x12_\n\x0b\x63redentials\x18\x04 \x01(\x0b\x32\x37.nebius.storage.v1alpha1.TransferSpec.BucketCredentialsB\x04\xbaJ\x01\x04R\x0b\x63redentials\x12J\n\x08limiters\x18\x05 \x01(\x0b\x32..nebius.storage.v1alpha1.TransferSpec.LimitersR\x08limiters\x1a\xa1\x01\n\x11\x44\x65stinationBucket\x12+\n\x0b\x62ucket_name\x18\x01 \x01(\tB\n\xbaH\x03\xc8\x01\x01\xbaJ\x01\x02R\nbucketName\x12_\n\x0b\x63redentials\x18\x02 \x01(\x0b\x32\x37.nebius.storage.v1alpha1.TransferSpec.BucketCredentialsB\x04\xbaJ\x01\x04R\x0b\x63redentials\x1a\x80\x05\n\x11\x42ucketCredentials\x12r\n\tanonymous\x18\x01 \x01(\x0b\x32L.nebius.storage.v1alpha1.TransferSpec.BucketCredentials.CredentialsAnonymousB\x04\xbaJ\x01\x06H\x00R\tanonymous\x12m\n\naccess_key\x18\x02 \x01(\x0b\x32L.nebius.storage.v1alpha1.TransferSpec.BucketCredentials.CredentialsAccessKeyH\x00R\taccessKey\x12r\n\x10\x61zure_access_key\x18\x03 \x01(\x0b\x32\x46.nebius.storage.v1alpha1.TransferSpec.BucketCredentials.AzureAccessKeyH\x00R\x0e\x61zureAccessKey\x1a\x16\n\x14\x43redentialsAnonymous\x1a|\n\x14\x43redentialsAccessKey\x12-\n\raccess_key_id\x18\x01 \x01(\tB\t\xbaH\x03\xc8\x01\x01\xc0J\x01R\x0b\x61\x63\x63\x65ssKeyId\x12\x35\n\x11secret_access_key\x18\x02 \x01(\tB\t\xbaH\x03\xc8\x01\x01\xc0J\x01R\x0fsecretAccessKey\x1ah\n\x0e\x41zureAccessKey\x12,\n\x0c\x61\x63\x63ount_name\x18\x02 \x01(\tB\t\xbaH\x03\xc8\x01\x01\xc0J\x01R\x0b\x61\x63\x63ountName\x12(\n\naccess_key\x18\x01 \x01(\tB\t\xbaH\x03\xc8\x01\x01\xc0J\x01R\taccessKeyB\x14\n\x0b\x63redentials\x12\x05\xbaH\x02\x08\x01\x1aw\n\x08Limiters\x12;\n\x1a\x62\x61ndwidth_bytes_per_second\x18\x01 \x01(\x04R\x17\x62\x61ndwidthBytesPerSecond\x12.\n\x13requests_per_second\x18\x02 \x01(\x04R\x11requestsPerSecond\x1a \n\x1eStopConditionAfterOneIteration\x1aj\n\"StopConditionAfterNEmptyIterations\x12\x44\n\x1a\x65mpty_iterations_threshold\x18\x01 \x01(\rB\x06\xbaH\x03\xc8\x01\x01R\x18\x65mptyIterationsThreshold\x1a\x17\n\x15StopConditionInfinite\"\\\n\x11OverwriteStrategy\x12\"\n\x1eOVERWRITE_STRATEGY_UNSPECIFIED\x10\x00\x12\t\n\x05NEVER\x10\x01\x12\x0c\n\x08IF_NEWER\x10\x02\x12\n\n\x06\x41LWAYS\x10\x03\x42\x17\n\x0estop_condition\x12\x05\xbaH\x02\x08\x01\"\xd9\x03\n\x0eTransferStatus\x12\x43\n\x05state\x18\x01 \x01(\x0e\x32-.nebius.storage.v1alpha1.TransferStatus.StateR\x05state\x12\x14\n\x05\x65rror\x18\x02 \x01(\tR\x05\x65rror\x12\x62\n\x10suspension_state\x18\x03 \x01(\x0e\x32\x37.nebius.storage.v1alpha1.TransferStatus.SuspensionStateR\x0fsuspensionState\x12Q\n\x0elast_iteration\x18\x04 \x01(\x0b\x32*.nebius.storage.v1alpha1.TransferIterationR\rlastIteration\"^\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\n\n\x06\x41\x43TIVE\x10\x01\x12\x0c\n\x08STOPPING\x10\x02\x12\x0b\n\x07STOPPED\x10\x03\x12\x0b\n\x07\x46\x41ILING\x10\x04\x12\n\n\x06\x46\x41ILED\x10\x05\"U\n\x0fSuspensionState\x12 \n\x1cSUSPENSION_STATE_UNSPECIFIED\x10\x00\x12\x11\n\rNOT_SUSPENDED\x10\x01\x12\r\n\tSUSPENDED\x10\x02\"\xf7\x04\n\x11TransferIteration\x12\'\n\x0fsequence_number\x18\x01 \x01(\x03R\x0esequenceNumber\x12\x46\n\x05state\x18\x02 \x01(\x0e\x32\x30.nebius.storage.v1alpha1.TransferIteration.StateR\x05state\x12\x14\n\x05\x65rror\x18\x03 \x01(\tR\x05\x65rror\x12\x39\n\nstart_time\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\tstartTime\x12\x35\n\x08\x65nd_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.TimestampR\x07\x65ndTime\x12\x38\n\x18objects_discovered_count\x18\x06 \x01(\x03R\x16objectsDiscoveredCount\x12\x34\n\x16objects_migrated_count\x18\x07 \x01(\x03R\x14objectsMigratedCount\x12\x32\n\x15objects_skipped_count\x18\x08 \x01(\x03R\x13objectsSkippedCount\x12\x32\n\x15objects_migrated_size\x18\t \x01(\x03R\x13objectsMigratedSize\x12\x38\n\x18\x61verage_throughput_bytes\x18\n \x01(\x03R\x16\x61verageThroughputBytes\"W\n\x05State\x12\x15\n\x11STATE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bIN_PROGRESS\x10\x01\x12\r\n\tCOMPLETED\x10\x02\x12\x0b\n\x07STOPPED\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\x42h\n\x1e\x61i.nebius.pub.storage.v1alpha1B\rTransferProtoP\x01Z5github.com/nebius/gosdk/proto/nebius/storage/v1alpha1b\x06proto3')

_globals = globals()
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'nebius.storage.v1alpha1.transfer_pb2', _globals)
if _descriptor._USE_C_DESCRIPTORS == False:

  DESCRIPTOR._options = None
  DESCRIPTOR._serialized_options = b'\n\036ai.nebius.pub.storage.v1alpha1B\rTransferProtoP\001Z5github.com/nebius/gosdk/proto/nebius/storage/v1alpha1'
  _TRANSFER.fields_by_name['metadata']._options = None
  _TRANSFER.fields_by_name['metadata']._serialized_options = b'\272H\003\310\001\001'
  _TRANSFER.fields_by_name['spec']._options = None
  _TRANSFER.fields_by_name['spec']._serialized_options = b'\272H\003\310\001\001'
  _TRANSFER.fields_by_name['status']._options = None
  _TRANSFER.fields_by_name['status']._serialized_options = b'\272J\001\005'
  _TRANSFERSPEC_SOURCEBUCKET.fields_by_name['endpoint']._options = None
  _TRANSFERSPEC_SOURCEBUCKET.fields_by_name['endpoint']._serialized_options = b'\272H\003\310\001\001\272J\001\002'
  _TRANSFERSPEC_SOURCEBUCKET.fields_by_name['bucket_name']._options = None
  _TRANSFERSPEC_SOURCEBUCKET.fields_by_name['bucket_name']._serialized_options = b'\272H\003\310\001\001\272J\001\002'
  _TRANSFERSPEC_SOURCEBUCKET.fields_by_name['region']._options = None
  _TRANSFERSPEC_SOURCEBUCKET.fields_by_name['region']._serialized_options = b'\272H\003\310\001\001\272J\001\002'
  _TRANSFERSPEC_SOURCEBUCKET.fields_by_name['credentials']._options = None
  _TRANSFERSPEC_SOURCEBUCKET.fields_by_name['credentials']._serialized_options = b'\272J\001\004'
  _TRANSFERSPEC_DESTINATIONBUCKET.fields_by_name['bucket_name']._options = None
  _TRANSFERSPEC_DESTINATIONBUCKET.fields_by_name['bucket_name']._serialized_options = b'\272H\003\310\001\001\272J\001\002'
  _TRANSFERSPEC_DESTINATIONBUCKET.fields_by_name['credentials']._options = None
  _TRANSFERSPEC_DESTINATIONBUCKET.fields_by_name['credentials']._serialized_options = b'\272J\001\004'
  _TRANSFERSPEC_BUCKETCREDENTIALS_CREDENTIALSACCESSKEY.fields_by_name['access_key_id']._options = None
  _TRANSFERSPEC_BUCKETCREDENTIALS_CREDENTIALSACCESSKEY.fields_by_name['access_key_id']._serialized_options = b'\272H\003\310\001\001\300J\001'
  _TRANSFERSPEC_BUCKETCREDENTIALS_CREDENTIALSACCESSKEY.fields_by_name['secret_access_key']._options = None
  _TRANSFERSPEC_BUCKETCREDENTIALS_CREDENTIALSACCESSKEY.fields_by_name['secret_access_key']._serialized_options = b'\272H\003\310\001\001\300J\001'
  _TRANSFERSPEC_BUCKETCREDENTIALS_AZUREACCESSKEY.fields_by_name['account_name']._options = None
  _TRANSFERSPEC_BUCKETCREDENTIALS_AZUREACCESSKEY.fields_by_name['account_name']._serialized_options = b'\272H\003\310\001\001\300J\001'
  _TRANSFERSPEC_BUCKETCREDENTIALS_AZUREACCESSKEY.fields_by_name['access_key']._options = None
  _TRANSFERSPEC_BUCKETCREDENTIALS_AZUREACCESSKEY.fields_by_name['access_key']._serialized_options = b'\272H\003\310\001\001\300J\001'
  _TRANSFERSPEC_BUCKETCREDENTIALS.oneofs_by_name['credentials']._options = None
  _TRANSFERSPEC_BUCKETCREDENTIALS.oneofs_by_name['credentials']._serialized_options = b'\272H\002\010\001'
  _TRANSFERSPEC_BUCKETCREDENTIALS.fields_by_name['anonymous']._options = None
  _TRANSFERSPEC_BUCKETCREDENTIALS.fields_by_name['anonymous']._serialized_options = b'\272J\001\006'
  _TRANSFERSPEC_STOPCONDITIONAFTERNEMPTYITERATIONS.fields_by_name['empty_iterations_threshold']._options = None
  _TRANSFERSPEC_STOPCONDITIONAFTERNEMPTYITERATIONS.fields_by_name['empty_iterations_threshold']._serialized_options = b'\272H\003\310\001\001'
  _TRANSFERSPEC.oneofs_by_name['stop_condition']._options = None
  _TRANSFERSPEC.oneofs_by_name['stop_condition']._serialized_options = b'\272H\002\010\001'
  _TRANSFERSPEC.fields_by_name['source']._options = None
  _TRANSFERSPEC.fields_by_name['source']._serialized_options = b'\272H\003\310\001\001'
  _TRANSFERSPEC.fields_by_name['destination']._options = None
  _TRANSFERSPEC.fields_by_name['destination']._serialized_options = b'\272H\003\310\001\001'
  _TRANSFERSPEC.fields_by_name['after_one_iteration']._options = None
  _TRANSFERSPEC.fields_by_name['after_one_iteration']._serialized_options = b'\272J\001\006'
  _TRANSFERSPEC.fields_by_name['infinite']._options = None
  _TRANSFERSPEC.fields_by_name['infinite']._serialized_options = b'\272J\001\006'
  _TRANSFERSPEC.fields_by_name['inter_iteration_interval']._options = None
  _TRANSFERSPEC.fields_by_name['inter_iteration_interval']._serialized_options = b'\272H\005\252\001\0022\000\272J\001\007'
  _TRANSFERSPEC.fields_by_name['overwrite_strategy']._options = None
  _TRANSFERSPEC.fields_by_name['overwrite_strategy']._serialized_options = b'\272H\003\310\001\001'
  _globals['_TRANSFER']._serialized_start=221
  _globals['_TRANSFER']._serialized_end=441
  _globals['_TRANSFERSPEC']._serialized_start=444
  _globals['_TRANSFERSPEC']._serialized_end=2734
  _globals['_TRANSFERSPEC_SOURCEBUCKET']._serialized_start=1212
  _globals['_TRANSFERSPEC_SOURCEBUCKET']._serialized_end=1520
  _globals['_TRANSFERSPEC_DESTINATIONBUCKET']._serialized_start=1523
  _globals['_TRANSFERSPEC_DESTINATIONBUCKET']._serialized_end=1684
  _globals['_TRANSFERSPEC_BUCKETCREDENTIALS']._serialized_start=1687
  _globals['_TRANSFERSPEC_BUCKETCREDENTIALS']._serialized_end=2327
  _globals['_TRANSFERSPEC_BUCKETCREDENTIALS_CREDENTIALSANONYMOUS']._serialized_start=2051
  _globals['_TRANSFERSPEC_BUCKETCREDENTIALS_CREDENTIALSANONYMOUS']._serialized_end=2073
  _globals['_TRANSFERSPEC_BUCKETCREDENTIALS_CREDENTIALSACCESSKEY']._serialized_start=2075
  _globals['_TRANSFERSPEC_BUCKETCREDENTIALS_CREDENTIALSACCESSKEY']._serialized_end=2199
  _globals['_TRANSFERSPEC_BUCKETCREDENTIALS_AZUREACCESSKEY']._serialized_start=2201
  _globals['_TRANSFERSPEC_BUCKETCREDENTIALS_AZUREACCESSKEY']._serialized_end=2305
  _globals['_TRANSFERSPEC_LIMITERS']._serialized_start=2329
  _globals['_TRANSFERSPEC_LIMITERS']._serialized_end=2448
  _globals['_TRANSFERSPEC_STOPCONDITIONAFTERONEITERATION']._serialized_start=2450
  _globals['_TRANSFERSPEC_STOPCONDITIONAFTERONEITERATION']._serialized_end=2482
  _globals['_TRANSFERSPEC_STOPCONDITIONAFTERNEMPTYITERATIONS']._serialized_start=2484
  _globals['_TRANSFERSPEC_STOPCONDITIONAFTERNEMPTYITERATIONS']._serialized_end=2590
  _globals['_TRANSFERSPEC_STOPCONDITIONINFINITE']._serialized_start=2592
  _globals['_TRANSFERSPEC_STOPCONDITIONINFINITE']._serialized_end=2615
  _globals['_TRANSFERSPEC_OVERWRITESTRATEGY']._serialized_start=2617
  _globals['_TRANSFERSPEC_OVERWRITESTRATEGY']._serialized_end=2709
  _globals['_TRANSFERSTATUS']._serialized_start=2737
  _globals['_TRANSFERSTATUS']._serialized_end=3210
  _globals['_TRANSFERSTATUS_STATE']._serialized_start=3029
  _globals['_TRANSFERSTATUS_STATE']._serialized_end=3123
  _globals['_TRANSFERSTATUS_SUSPENSIONSTATE']._serialized_start=3125
  _globals['_TRANSFERSTATUS_SUSPENSIONSTATE']._serialized_end=3210
  _globals['_TRANSFERITERATION']._serialized_start=3213
  _globals['_TRANSFERITERATION']._serialized_end=3844
  _globals['_TRANSFERITERATION_STATE']._serialized_start=3757
  _globals['_TRANSFERITERATION_STATE']._serialized_end=3844
# @@protoc_insertion_point(module_scope)
