//
//  Generated code. Do not modify.
//  source: attachmentV2.proto
//
// @dart = 3.3

// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names, library_prefixes
// ignore_for_file: non_constant_identifier_names, prefer_final_fields
// ignore_for_file: unnecessary_import, unnecessary_this, unused_import

import 'dart:core' as $core;

import 'package:protobuf/protobuf.dart' as $pb;

import 'attachmentV2.pbenum.dart';
import 'shared.pb.dart' as $3;
import 'shared.pbenum.dart' as $3;

export 'package:protobuf/protobuf.dart' show GeneratedMessageGenericExtensions;

export 'attachmentV2.pbenum.dart';

class Attachment extends $pb.GeneratedMessage {
  factory Attachment({
    $core.String? projectID,
    $core.String? name,
    $core.String? entityRefID,
    $3.AttachmentType? attachmentType,
    $core.String? uRI,
    $core.String? mIMEType,
    $core.String? uploadedAt,
    AttachmentKind? kind,
    $core.String? webURI,
  }) {
    final $result = create();
    if (projectID != null) {
      $result.projectID = projectID;
    }
    if (name != null) {
      $result.name = name;
    }
    if (entityRefID != null) {
      $result.entityRefID = entityRefID;
    }
    if (attachmentType != null) {
      $result.attachmentType = attachmentType;
    }
    if (uRI != null) {
      $result.uRI = uRI;
    }
    if (mIMEType != null) {
      $result.mIMEType = mIMEType;
    }
    if (uploadedAt != null) {
      $result.uploadedAt = uploadedAt;
    }
    if (kind != null) {
      $result.kind = kind;
    }
    if (webURI != null) {
      $result.webURI = webURI;
    }
    return $result;
  }
  Attachment._() : super();
  factory Attachment.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory Attachment.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'Attachment', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'ProjectID', protoName: 'ProjectID')
    ..aOS(2, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..aOS(3, _omitFieldNames ? '' : 'EntityRefID', protoName: 'EntityRefID')
    ..aOM<$3.AttachmentType>(4, _omitFieldNames ? '' : 'AttachmentType', protoName: 'AttachmentType', subBuilder: $3.AttachmentType.create)
    ..aOS(5, _omitFieldNames ? '' : 'URI', protoName: 'URI')
    ..aOS(6, _omitFieldNames ? '' : 'MIMEType', protoName: 'MIMEType')
    ..aOS(11, _omitFieldNames ? '' : 'UploadedAt', protoName: 'UploadedAt')
    ..e<AttachmentKind>(12, _omitFieldNames ? '' : 'Kind', $pb.PbFieldType.OE, protoName: 'Kind', defaultOrMaker: AttachmentKind.ATTACHMENT_KIND_UNKNOWN, valueOf: AttachmentKind.valueOf, enumValues: AttachmentKind.values)
    ..aOS(13, _omitFieldNames ? '' : 'WebURI', protoName: 'WebURI')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  Attachment clone() => Attachment()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  Attachment copyWith(void Function(Attachment) updates) => super.copyWith((message) => updates(message as Attachment)) as Attachment;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static Attachment create() => Attachment._();
  Attachment createEmptyInstance() => create();
  static $pb.PbList<Attachment> createRepeated() => $pb.PbList<Attachment>();
  @$core.pragma('dart2js:noInline')
  static Attachment getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<Attachment>(create);
  static Attachment? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get projectID => $_getSZ(0);
  @$pb.TagNumber(1)
  set projectID($core.String v) { $_setString(0, v); }
  @$pb.TagNumber(1)
  $core.bool hasProjectID() => $_has(0);
  @$pb.TagNumber(1)
  void clearProjectID() => $_clearField(1);

  @$pb.TagNumber(2)
  $core.String get name => $_getSZ(1);
  @$pb.TagNumber(2)
  set name($core.String v) { $_setString(1, v); }
  @$pb.TagNumber(2)
  $core.bool hasName() => $_has(1);
  @$pb.TagNumber(2)
  void clearName() => $_clearField(2);

  @$pb.TagNumber(3)
  $core.String get entityRefID => $_getSZ(2);
  @$pb.TagNumber(3)
  set entityRefID($core.String v) { $_setString(2, v); }
  @$pb.TagNumber(3)
  $core.bool hasEntityRefID() => $_has(2);
  @$pb.TagNumber(3)
  void clearEntityRefID() => $_clearField(3);

  @$pb.TagNumber(4)
  $3.AttachmentType get attachmentType => $_getN(3);
  @$pb.TagNumber(4)
  set attachmentType($3.AttachmentType v) { $_setField(4, v); }
  @$pb.TagNumber(4)
  $core.bool hasAttachmentType() => $_has(3);
  @$pb.TagNumber(4)
  void clearAttachmentType() => $_clearField(4);
  @$pb.TagNumber(4)
  $3.AttachmentType ensureAttachmentType() => $_ensure(3);

  @$pb.TagNumber(5)
  $core.String get uRI => $_getSZ(4);
  @$pb.TagNumber(5)
  set uRI($core.String v) { $_setString(4, v); }
  @$pb.TagNumber(5)
  $core.bool hasURI() => $_has(4);
  @$pb.TagNumber(5)
  void clearURI() => $_clearField(5);

  @$pb.TagNumber(6)
  $core.String get mIMEType => $_getSZ(5);
  @$pb.TagNumber(6)
  set mIMEType($core.String v) { $_setString(5, v); }
  @$pb.TagNumber(6)
  $core.bool hasMIMEType() => $_has(5);
  @$pb.TagNumber(6)
  void clearMIMEType() => $_clearField(6);

  @$pb.TagNumber(11)
  $core.String get uploadedAt => $_getSZ(6);
  @$pb.TagNumber(11)
  set uploadedAt($core.String v) { $_setString(6, v); }
  @$pb.TagNumber(11)
  $core.bool hasUploadedAt() => $_has(6);
  @$pb.TagNumber(11)
  void clearUploadedAt() => $_clearField(11);

  @$pb.TagNumber(12)
  AttachmentKind get kind => $_getN(7);
  @$pb.TagNumber(12)
  set kind(AttachmentKind v) { $_setField(12, v); }
  @$pb.TagNumber(12)
  $core.bool hasKind() => $_has(7);
  @$pb.TagNumber(12)
  void clearKind() => $_clearField(12);

  @$pb.TagNumber(13)
  $core.String get webURI => $_getSZ(8);
  @$pb.TagNumber(13)
  set webURI($core.String v) { $_setString(8, v); }
  @$pb.TagNumber(13)
  $core.bool hasWebURI() => $_has(8);
  @$pb.TagNumber(13)
  void clearWebURI() => $_clearField(13);
}

class FileDataRequest extends $pb.GeneratedMessage {
  factory FileDataRequest({
    $core.String? name,
    $core.List<$core.int>? content,
  }) {
    final $result = create();
    if (name != null) {
      $result.name = name;
    }
    if (content != null) {
      $result.content = content;
    }
    return $result;
  }
  FileDataRequest._() : super();
  factory FileDataRequest.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory FileDataRequest.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'FileDataRequest', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..a<$core.List<$core.int>>(2, _omitFieldNames ? '' : 'Content', $pb.PbFieldType.OY, protoName: 'Content')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  FileDataRequest clone() => FileDataRequest()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  FileDataRequest copyWith(void Function(FileDataRequest) updates) => super.copyWith((message) => updates(message as FileDataRequest)) as FileDataRequest;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static FileDataRequest create() => FileDataRequest._();
  FileDataRequest createEmptyInstance() => create();
  static $pb.PbList<FileDataRequest> createRepeated() => $pb.PbList<FileDataRequest>();
  @$core.pragma('dart2js:noInline')
  static FileDataRequest getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<FileDataRequest>(create);
  static FileDataRequest? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get name => $_getSZ(0);
  @$pb.TagNumber(1)
  set name($core.String v) { $_setString(0, v); }
  @$pb.TagNumber(1)
  $core.bool hasName() => $_has(0);
  @$pb.TagNumber(1)
  void clearName() => $_clearField(1);

  @$pb.TagNumber(2)
  $core.List<$core.int> get content => $_getN(1);
  @$pb.TagNumber(2)
  set content($core.List<$core.int> v) { $_setBytes(1, v); }
  @$pb.TagNumber(2)
  $core.bool hasContent() => $_has(1);
  @$pb.TagNumber(2)
  void clearContent() => $_clearField(2);
}

class FileDataResponse extends $pb.GeneratedMessage {
  factory FileDataResponse({
    $core.String? name,
    $core.String? contentType,
    $core.List<$core.int>? content,
  }) {
    final $result = create();
    if (name != null) {
      $result.name = name;
    }
    if (contentType != null) {
      $result.contentType = contentType;
    }
    if (content != null) {
      $result.content = content;
    }
    return $result;
  }
  FileDataResponse._() : super();
  factory FileDataResponse.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory FileDataResponse.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'FileDataResponse', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..aOS(2, _omitFieldNames ? '' : 'ContentType', protoName: 'ContentType')
    ..a<$core.List<$core.int>>(3, _omitFieldNames ? '' : 'Content', $pb.PbFieldType.OY, protoName: 'Content')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  FileDataResponse clone() => FileDataResponse()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  FileDataResponse copyWith(void Function(FileDataResponse) updates) => super.copyWith((message) => updates(message as FileDataResponse)) as FileDataResponse;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static FileDataResponse create() => FileDataResponse._();
  FileDataResponse createEmptyInstance() => create();
  static $pb.PbList<FileDataResponse> createRepeated() => $pb.PbList<FileDataResponse>();
  @$core.pragma('dart2js:noInline')
  static FileDataResponse getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<FileDataResponse>(create);
  static FileDataResponse? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get name => $_getSZ(0);
  @$pb.TagNumber(1)
  set name($core.String v) { $_setString(0, v); }
  @$pb.TagNumber(1)
  $core.bool hasName() => $_has(0);
  @$pb.TagNumber(1)
  void clearName() => $_clearField(1);

  @$pb.TagNumber(2)
  $core.String get contentType => $_getSZ(1);
  @$pb.TagNumber(2)
  set contentType($core.String v) { $_setString(1, v); }
  @$pb.TagNumber(2)
  $core.bool hasContentType() => $_has(1);
  @$pb.TagNumber(2)
  void clearContentType() => $_clearField(2);

  @$pb.TagNumber(3)
  $core.List<$core.int> get content => $_getN(2);
  @$pb.TagNumber(3)
  set content($core.List<$core.int> v) { $_setBytes(2, v); }
  @$pb.TagNumber(3)
  $core.bool hasContent() => $_has(2);
  @$pb.TagNumber(3)
  void clearContent() => $_clearField(3);
}

/// Download
class DownloadAttachmentV2Request extends $pb.GeneratedMessage {
  factory DownloadAttachmentV2Request({
    $3.RequestAttachmentTypeHeader? header,
    $core.String? name,
    $core.String? entityRefID,
  }) {
    final $result = create();
    if (header != null) {
      $result.header = header;
    }
    if (name != null) {
      $result.name = name;
    }
    if (entityRefID != null) {
      $result.entityRefID = entityRefID;
    }
    return $result;
  }
  DownloadAttachmentV2Request._() : super();
  factory DownloadAttachmentV2Request.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory DownloadAttachmentV2Request.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DownloadAttachmentV2Request', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$3.RequestAttachmentTypeHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.RequestAttachmentTypeHeader.create)
    ..aOS(2, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..aOS(3, _omitFieldNames ? '' : 'EntityRefID', protoName: 'EntityRefID')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  DownloadAttachmentV2Request clone() => DownloadAttachmentV2Request()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  DownloadAttachmentV2Request copyWith(void Function(DownloadAttachmentV2Request) updates) => super.copyWith((message) => updates(message as DownloadAttachmentV2Request)) as DownloadAttachmentV2Request;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DownloadAttachmentV2Request create() => DownloadAttachmentV2Request._();
  DownloadAttachmentV2Request createEmptyInstance() => create();
  static $pb.PbList<DownloadAttachmentV2Request> createRepeated() => $pb.PbList<DownloadAttachmentV2Request>();
  @$core.pragma('dart2js:noInline')
  static DownloadAttachmentV2Request getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DownloadAttachmentV2Request>(create);
  static DownloadAttachmentV2Request? _defaultInstance;

  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($3.RequestAttachmentTypeHeader v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $core.String get name => $_getSZ(1);
  @$pb.TagNumber(2)
  set name($core.String v) { $_setString(1, v); }
  @$pb.TagNumber(2)
  $core.bool hasName() => $_has(1);
  @$pb.TagNumber(2)
  void clearName() => $_clearField(2);

  @$pb.TagNumber(3)
  $core.String get entityRefID => $_getSZ(2);
  @$pb.TagNumber(3)
  set entityRefID($core.String v) { $_setString(2, v); }
  @$pb.TagNumber(3)
  $core.bool hasEntityRefID() => $_has(2);
  @$pb.TagNumber(3)
  void clearEntityRefID() => $_clearField(3);
}

class DownloadAttachmentV2Response extends $pb.GeneratedMessage {
  factory DownloadAttachmentV2Response({
    FileDataResponse? file,
    $3.AttachmentTypeResponseHeader? header,
  }) {
    final $result = create();
    if (file != null) {
      $result.file = file;
    }
    if (header != null) {
      $result.header = header;
    }
    return $result;
  }
  DownloadAttachmentV2Response._() : super();
  factory DownloadAttachmentV2Response.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory DownloadAttachmentV2Response.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DownloadAttachmentV2Response', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<FileDataResponse>(1, _omitFieldNames ? '' : 'File', protoName: 'File', subBuilder: FileDataResponse.create)
    ..aOM<$3.AttachmentTypeResponseHeader>(2, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.AttachmentTypeResponseHeader.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  DownloadAttachmentV2Response clone() => DownloadAttachmentV2Response()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  DownloadAttachmentV2Response copyWith(void Function(DownloadAttachmentV2Response) updates) => super.copyWith((message) => updates(message as DownloadAttachmentV2Response)) as DownloadAttachmentV2Response;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DownloadAttachmentV2Response create() => DownloadAttachmentV2Response._();
  DownloadAttachmentV2Response createEmptyInstance() => create();
  static $pb.PbList<DownloadAttachmentV2Response> createRepeated() => $pb.PbList<DownloadAttachmentV2Response>();
  @$core.pragma('dart2js:noInline')
  static DownloadAttachmentV2Response getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DownloadAttachmentV2Response>(create);
  static DownloadAttachmentV2Response? _defaultInstance;

  @$pb.TagNumber(1)
  FileDataResponse get file => $_getN(0);
  @$pb.TagNumber(1)
  set file(FileDataResponse v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasFile() => $_has(0);
  @$pb.TagNumber(1)
  void clearFile() => $_clearField(1);
  @$pb.TagNumber(1)
  FileDataResponse ensureFile() => $_ensure(0);

  /// Header of the response
  @$pb.TagNumber(2)
  $3.AttachmentTypeResponseHeader get header => $_getN(1);
  @$pb.TagNumber(2)
  set header($3.AttachmentTypeResponseHeader v) { $_setField(2, v); }
  @$pb.TagNumber(2)
  $core.bool hasHeader() => $_has(1);
  @$pb.TagNumber(2)
  void clearHeader() => $_clearField(2);
  @$pb.TagNumber(2)
  $3.AttachmentTypeResponseHeader ensureHeader() => $_ensure(1);
}

/// Upload
class UploadAttachmentV2Request extends $pb.GeneratedMessage {
  factory UploadAttachmentV2Request({
    $3.RequestAttachmentTypeHeader? header,
    $core.String? entityRefID,
    FileDataRequest? attachment,
  }) {
    final $result = create();
    if (header != null) {
      $result.header = header;
    }
    if (entityRefID != null) {
      $result.entityRefID = entityRefID;
    }
    if (attachment != null) {
      $result.attachment = attachment;
    }
    return $result;
  }
  UploadAttachmentV2Request._() : super();
  factory UploadAttachmentV2Request.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory UploadAttachmentV2Request.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'UploadAttachmentV2Request', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$3.RequestAttachmentTypeHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.RequestAttachmentTypeHeader.create)
    ..aOS(3, _omitFieldNames ? '' : 'EntityRefID', protoName: 'EntityRefID')
    ..aOM<FileDataRequest>(4, _omitFieldNames ? '' : 'Attachment', protoName: 'Attachment', subBuilder: FileDataRequest.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  UploadAttachmentV2Request clone() => UploadAttachmentV2Request()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  UploadAttachmentV2Request copyWith(void Function(UploadAttachmentV2Request) updates) => super.copyWith((message) => updates(message as UploadAttachmentV2Request)) as UploadAttachmentV2Request;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static UploadAttachmentV2Request create() => UploadAttachmentV2Request._();
  UploadAttachmentV2Request createEmptyInstance() => create();
  static $pb.PbList<UploadAttachmentV2Request> createRepeated() => $pb.PbList<UploadAttachmentV2Request>();
  @$core.pragma('dart2js:noInline')
  static UploadAttachmentV2Request getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<UploadAttachmentV2Request>(create);
  static UploadAttachmentV2Request? _defaultInstance;

  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($3.RequestAttachmentTypeHeader v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(3)
  $core.String get entityRefID => $_getSZ(1);
  @$pb.TagNumber(3)
  set entityRefID($core.String v) { $_setString(1, v); }
  @$pb.TagNumber(3)
  $core.bool hasEntityRefID() => $_has(1);
  @$pb.TagNumber(3)
  void clearEntityRefID() => $_clearField(3);

  @$pb.TagNumber(4)
  FileDataRequest get attachment => $_getN(2);
  @$pb.TagNumber(4)
  set attachment(FileDataRequest v) { $_setField(4, v); }
  @$pb.TagNumber(4)
  $core.bool hasAttachment() => $_has(2);
  @$pb.TagNumber(4)
  void clearAttachment() => $_clearField(4);
  @$pb.TagNumber(4)
  FileDataRequest ensureAttachment() => $_ensure(2);
}

class UploadAttachmentV2Response extends $pb.GeneratedMessage {
  factory UploadAttachmentV2Response({
    Attachment? attachment,
    $3.AttachmentTypeResponseHeader? header,
  }) {
    final $result = create();
    if (attachment != null) {
      $result.attachment = attachment;
    }
    if (header != null) {
      $result.header = header;
    }
    return $result;
  }
  UploadAttachmentV2Response._() : super();
  factory UploadAttachmentV2Response.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory UploadAttachmentV2Response.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'UploadAttachmentV2Response', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<Attachment>(1, _omitFieldNames ? '' : 'Attachment', protoName: 'Attachment', subBuilder: Attachment.create)
    ..aOM<$3.AttachmentTypeResponseHeader>(2, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.AttachmentTypeResponseHeader.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  UploadAttachmentV2Response clone() => UploadAttachmentV2Response()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  UploadAttachmentV2Response copyWith(void Function(UploadAttachmentV2Response) updates) => super.copyWith((message) => updates(message as UploadAttachmentV2Response)) as UploadAttachmentV2Response;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static UploadAttachmentV2Response create() => UploadAttachmentV2Response._();
  UploadAttachmentV2Response createEmptyInstance() => create();
  static $pb.PbList<UploadAttachmentV2Response> createRepeated() => $pb.PbList<UploadAttachmentV2Response>();
  @$core.pragma('dart2js:noInline')
  static UploadAttachmentV2Response getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<UploadAttachmentV2Response>(create);
  static UploadAttachmentV2Response? _defaultInstance;

  @$pb.TagNumber(1)
  Attachment get attachment => $_getN(0);
  @$pb.TagNumber(1)
  set attachment(Attachment v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasAttachment() => $_has(0);
  @$pb.TagNumber(1)
  void clearAttachment() => $_clearField(1);
  @$pb.TagNumber(1)
  Attachment ensureAttachment() => $_ensure(0);

  /// Header of the response
  @$pb.TagNumber(2)
  $3.AttachmentTypeResponseHeader get header => $_getN(1);
  @$pb.TagNumber(2)
  set header($3.AttachmentTypeResponseHeader v) { $_setField(2, v); }
  @$pb.TagNumber(2)
  $core.bool hasHeader() => $_has(1);
  @$pb.TagNumber(2)
  void clearHeader() => $_clearField(2);
  @$pb.TagNumber(2)
  $3.AttachmentTypeResponseHeader ensureHeader() => $_ensure(1);
}

/// AddLink
class AddLinkV2Request extends $pb.GeneratedMessage {
  factory AddLinkV2Request({
    $3.RequestAttachmentTypeHeader? header,
    $core.String? entityRefID,
    $core.String? name,
    $core.String? uRI,
  }) {
    final $result = create();
    if (header != null) {
      $result.header = header;
    }
    if (entityRefID != null) {
      $result.entityRefID = entityRefID;
    }
    if (name != null) {
      $result.name = name;
    }
    if (uRI != null) {
      $result.uRI = uRI;
    }
    return $result;
  }
  AddLinkV2Request._() : super();
  factory AddLinkV2Request.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory AddLinkV2Request.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'AddLinkV2Request', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$3.RequestAttachmentTypeHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.RequestAttachmentTypeHeader.create)
    ..aOS(3, _omitFieldNames ? '' : 'EntityRefID', protoName: 'EntityRefID')
    ..aOS(4, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..aOS(5, _omitFieldNames ? '' : 'URI', protoName: 'URI')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  AddLinkV2Request clone() => AddLinkV2Request()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  AddLinkV2Request copyWith(void Function(AddLinkV2Request) updates) => super.copyWith((message) => updates(message as AddLinkV2Request)) as AddLinkV2Request;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static AddLinkV2Request create() => AddLinkV2Request._();
  AddLinkV2Request createEmptyInstance() => create();
  static $pb.PbList<AddLinkV2Request> createRepeated() => $pb.PbList<AddLinkV2Request>();
  @$core.pragma('dart2js:noInline')
  static AddLinkV2Request getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<AddLinkV2Request>(create);
  static AddLinkV2Request? _defaultInstance;

  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($3.RequestAttachmentTypeHeader v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(3)
  $core.String get entityRefID => $_getSZ(1);
  @$pb.TagNumber(3)
  set entityRefID($core.String v) { $_setString(1, v); }
  @$pb.TagNumber(3)
  $core.bool hasEntityRefID() => $_has(1);
  @$pb.TagNumber(3)
  void clearEntityRefID() => $_clearField(3);

  @$pb.TagNumber(4)
  $core.String get name => $_getSZ(2);
  @$pb.TagNumber(4)
  set name($core.String v) { $_setString(2, v); }
  @$pb.TagNumber(4)
  $core.bool hasName() => $_has(2);
  @$pb.TagNumber(4)
  void clearName() => $_clearField(4);

  @$pb.TagNumber(5)
  $core.String get uRI => $_getSZ(3);
  @$pb.TagNumber(5)
  set uRI($core.String v) { $_setString(3, v); }
  @$pb.TagNumber(5)
  $core.bool hasURI() => $_has(3);
  @$pb.TagNumber(5)
  void clearURI() => $_clearField(5);
}

class AddLinkV2Response extends $pb.GeneratedMessage {
  factory AddLinkV2Response({
    Attachment? attachment,
    $3.AttachmentTypeResponseHeader? header,
  }) {
    final $result = create();
    if (attachment != null) {
      $result.attachment = attachment;
    }
    if (header != null) {
      $result.header = header;
    }
    return $result;
  }
  AddLinkV2Response._() : super();
  factory AddLinkV2Response.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory AddLinkV2Response.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'AddLinkV2Response', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<Attachment>(1, _omitFieldNames ? '' : 'Attachment', protoName: 'Attachment', subBuilder: Attachment.create)
    ..aOM<$3.AttachmentTypeResponseHeader>(2, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.AttachmentTypeResponseHeader.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  AddLinkV2Response clone() => AddLinkV2Response()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  AddLinkV2Response copyWith(void Function(AddLinkV2Response) updates) => super.copyWith((message) => updates(message as AddLinkV2Response)) as AddLinkV2Response;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static AddLinkV2Response create() => AddLinkV2Response._();
  AddLinkV2Response createEmptyInstance() => create();
  static $pb.PbList<AddLinkV2Response> createRepeated() => $pb.PbList<AddLinkV2Response>();
  @$core.pragma('dart2js:noInline')
  static AddLinkV2Response getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<AddLinkV2Response>(create);
  static AddLinkV2Response? _defaultInstance;

  @$pb.TagNumber(1)
  Attachment get attachment => $_getN(0);
  @$pb.TagNumber(1)
  set attachment(Attachment v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasAttachment() => $_has(0);
  @$pb.TagNumber(1)
  void clearAttachment() => $_clearField(1);
  @$pb.TagNumber(1)
  Attachment ensureAttachment() => $_ensure(0);

  /// Header of the response
  @$pb.TagNumber(2)
  $3.AttachmentTypeResponseHeader get header => $_getN(1);
  @$pb.TagNumber(2)
  set header($3.AttachmentTypeResponseHeader v) { $_setField(2, v); }
  @$pb.TagNumber(2)
  $core.bool hasHeader() => $_has(1);
  @$pb.TagNumber(2)
  void clearHeader() => $_clearField(2);
  @$pb.TagNumber(2)
  $3.AttachmentTypeResponseHeader ensureHeader() => $_ensure(1);
}

/// Delete
class DeleteAttachmentV2Request extends $pb.GeneratedMessage {
  factory DeleteAttachmentV2Request({
    $3.RequestAttachmentTypeHeader? header,
    $core.String? name,
    $core.String? entityRefID,
  }) {
    final $result = create();
    if (header != null) {
      $result.header = header;
    }
    if (name != null) {
      $result.name = name;
    }
    if (entityRefID != null) {
      $result.entityRefID = entityRefID;
    }
    return $result;
  }
  DeleteAttachmentV2Request._() : super();
  factory DeleteAttachmentV2Request.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory DeleteAttachmentV2Request.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DeleteAttachmentV2Request', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$3.RequestAttachmentTypeHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.RequestAttachmentTypeHeader.create)
    ..aOS(2, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..aOS(3, _omitFieldNames ? '' : 'EntityRefID', protoName: 'EntityRefID')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  DeleteAttachmentV2Request clone() => DeleteAttachmentV2Request()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  DeleteAttachmentV2Request copyWith(void Function(DeleteAttachmentV2Request) updates) => super.copyWith((message) => updates(message as DeleteAttachmentV2Request)) as DeleteAttachmentV2Request;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DeleteAttachmentV2Request create() => DeleteAttachmentV2Request._();
  DeleteAttachmentV2Request createEmptyInstance() => create();
  static $pb.PbList<DeleteAttachmentV2Request> createRepeated() => $pb.PbList<DeleteAttachmentV2Request>();
  @$core.pragma('dart2js:noInline')
  static DeleteAttachmentV2Request getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DeleteAttachmentV2Request>(create);
  static DeleteAttachmentV2Request? _defaultInstance;

  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($3.RequestAttachmentTypeHeader v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $core.String get name => $_getSZ(1);
  @$pb.TagNumber(2)
  set name($core.String v) { $_setString(1, v); }
  @$pb.TagNumber(2)
  $core.bool hasName() => $_has(1);
  @$pb.TagNumber(2)
  void clearName() => $_clearField(2);

  @$pb.TagNumber(3)
  $core.String get entityRefID => $_getSZ(2);
  @$pb.TagNumber(3)
  set entityRefID($core.String v) { $_setString(2, v); }
  @$pb.TagNumber(3)
  $core.bool hasEntityRefID() => $_has(2);
  @$pb.TagNumber(3)
  void clearEntityRefID() => $_clearField(3);
}

class DeleteAttachmentV2Response extends $pb.GeneratedMessage {
  factory DeleteAttachmentV2Response({
    $3.AttachmentTypeResponseHeader? header,
  }) {
    final $result = create();
    if (header != null) {
      $result.header = header;
    }
    return $result;
  }
  DeleteAttachmentV2Response._() : super();
  factory DeleteAttachmentV2Response.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory DeleteAttachmentV2Response.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DeleteAttachmentV2Response', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$3.AttachmentTypeResponseHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.AttachmentTypeResponseHeader.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  DeleteAttachmentV2Response clone() => DeleteAttachmentV2Response()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  DeleteAttachmentV2Response copyWith(void Function(DeleteAttachmentV2Response) updates) => super.copyWith((message) => updates(message as DeleteAttachmentV2Response)) as DeleteAttachmentV2Response;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DeleteAttachmentV2Response create() => DeleteAttachmentV2Response._();
  DeleteAttachmentV2Response createEmptyInstance() => create();
  static $pb.PbList<DeleteAttachmentV2Response> createRepeated() => $pb.PbList<DeleteAttachmentV2Response>();
  @$core.pragma('dart2js:noInline')
  static DeleteAttachmentV2Response getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DeleteAttachmentV2Response>(create);
  static DeleteAttachmentV2Response? _defaultInstance;

  /// Header of the response
  @$pb.TagNumber(1)
  $3.AttachmentTypeResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($3.AttachmentTypeResponseHeader v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $3.AttachmentTypeResponseHeader ensureHeader() => $_ensure(0);
}

/// List
class ListAttachmentsV2Request extends $pb.GeneratedMessage {
  factory ListAttachmentsV2Request({
    $3.RequestProjectHeader? header,
    $core.String? entityRefID,
    $3.EntityType? entityType,
  }) {
    final $result = create();
    if (header != null) {
      $result.header = header;
    }
    if (entityRefID != null) {
      $result.entityRefID = entityRefID;
    }
    if (entityType != null) {
      $result.entityType = entityType;
    }
    return $result;
  }
  ListAttachmentsV2Request._() : super();
  factory ListAttachmentsV2Request.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory ListAttachmentsV2Request.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ListAttachmentsV2Request', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$3.RequestProjectHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.RequestProjectHeader.create)
    ..aOS(3, _omitFieldNames ? '' : 'EntityRefID', protoName: 'EntityRefID')
    ..e<$3.EntityType>(4, _omitFieldNames ? '' : 'EntityType', $pb.PbFieldType.OE, protoName: 'EntityType', defaultOrMaker: $3.EntityType.ENTITY_TYPE_UNKNOWN, valueOf: $3.EntityType.valueOf, enumValues: $3.EntityType.values)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  ListAttachmentsV2Request clone() => ListAttachmentsV2Request()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  ListAttachmentsV2Request copyWith(void Function(ListAttachmentsV2Request) updates) => super.copyWith((message) => updates(message as ListAttachmentsV2Request)) as ListAttachmentsV2Request;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static ListAttachmentsV2Request create() => ListAttachmentsV2Request._();
  ListAttachmentsV2Request createEmptyInstance() => create();
  static $pb.PbList<ListAttachmentsV2Request> createRepeated() => $pb.PbList<ListAttachmentsV2Request>();
  @$core.pragma('dart2js:noInline')
  static ListAttachmentsV2Request getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ListAttachmentsV2Request>(create);
  static ListAttachmentsV2Request? _defaultInstance;

  @$pb.TagNumber(1)
  $3.RequestProjectHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($3.RequestProjectHeader v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $3.RequestProjectHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(3)
  $core.String get entityRefID => $_getSZ(1);
  @$pb.TagNumber(3)
  set entityRefID($core.String v) { $_setString(1, v); }
  @$pb.TagNumber(3)
  $core.bool hasEntityRefID() => $_has(1);
  @$pb.TagNumber(3)
  void clearEntityRefID() => $_clearField(3);

  @$pb.TagNumber(4)
  $3.EntityType get entityType => $_getN(2);
  @$pb.TagNumber(4)
  set entityType($3.EntityType v) { $_setField(4, v); }
  @$pb.TagNumber(4)
  $core.bool hasEntityType() => $_has(2);
  @$pb.TagNumber(4)
  void clearEntityType() => $_clearField(4);
}

class ListAttachmentsV2Response extends $pb.GeneratedMessage {
  factory ListAttachmentsV2Response({
    $core.Iterable<Attachment>? attachments,
    $3.ResponseHeader? header,
  }) {
    final $result = create();
    if (attachments != null) {
      $result.attachments.addAll(attachments);
    }
    if (header != null) {
      $result.header = header;
    }
    return $result;
  }
  ListAttachmentsV2Response._() : super();
  factory ListAttachmentsV2Response.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory ListAttachmentsV2Response.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ListAttachmentsV2Response', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..pc<Attachment>(1, _omitFieldNames ? '' : 'Attachments', $pb.PbFieldType.PM, protoName: 'Attachments', subBuilder: Attachment.create)
    ..aOM<$3.ResponseHeader>(2, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.ResponseHeader.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  ListAttachmentsV2Response clone() => ListAttachmentsV2Response()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  ListAttachmentsV2Response copyWith(void Function(ListAttachmentsV2Response) updates) => super.copyWith((message) => updates(message as ListAttachmentsV2Response)) as ListAttachmentsV2Response;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static ListAttachmentsV2Response create() => ListAttachmentsV2Response._();
  ListAttachmentsV2Response createEmptyInstance() => create();
  static $pb.PbList<ListAttachmentsV2Response> createRepeated() => $pb.PbList<ListAttachmentsV2Response>();
  @$core.pragma('dart2js:noInline')
  static ListAttachmentsV2Response getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ListAttachmentsV2Response>(create);
  static ListAttachmentsV2Response? _defaultInstance;

  @$pb.TagNumber(1)
  $pb.PbList<Attachment> get attachments => $_getList(0);

  /// Header of the response
  @$pb.TagNumber(2)
  $3.ResponseHeader get header => $_getN(1);
  @$pb.TagNumber(2)
  set header($3.ResponseHeader v) { $_setField(2, v); }
  @$pb.TagNumber(2)
  $core.bool hasHeader() => $_has(1);
  @$pb.TagNumber(2)
  void clearHeader() => $_clearField(2);
  @$pb.TagNumber(2)
  $3.ResponseHeader ensureHeader() => $_ensure(1);
}

/// Share
class ShareAttachmentV2Request extends $pb.GeneratedMessage {
  factory ShareAttachmentV2Request({
    $3.RequestAttachmentTypeHeader? header,
    $core.String? name,
    $core.String? entityRefID,
  }) {
    final $result = create();
    if (header != null) {
      $result.header = header;
    }
    if (name != null) {
      $result.name = name;
    }
    if (entityRefID != null) {
      $result.entityRefID = entityRefID;
    }
    return $result;
  }
  ShareAttachmentV2Request._() : super();
  factory ShareAttachmentV2Request.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory ShareAttachmentV2Request.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ShareAttachmentV2Request', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$3.RequestAttachmentTypeHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.RequestAttachmentTypeHeader.create)
    ..aOS(2, _omitFieldNames ? '' : 'Name', protoName: 'Name')
    ..aOS(3, _omitFieldNames ? '' : 'EntityRefID', protoName: 'EntityRefID')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  ShareAttachmentV2Request clone() => ShareAttachmentV2Request()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  ShareAttachmentV2Request copyWith(void Function(ShareAttachmentV2Request) updates) => super.copyWith((message) => updates(message as ShareAttachmentV2Request)) as ShareAttachmentV2Request;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static ShareAttachmentV2Request create() => ShareAttachmentV2Request._();
  ShareAttachmentV2Request createEmptyInstance() => create();
  static $pb.PbList<ShareAttachmentV2Request> createRepeated() => $pb.PbList<ShareAttachmentV2Request>();
  @$core.pragma('dart2js:noInline')
  static ShareAttachmentV2Request getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ShareAttachmentV2Request>(create);
  static ShareAttachmentV2Request? _defaultInstance;

  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($3.RequestAttachmentTypeHeader v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $3.RequestAttachmentTypeHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $core.String get name => $_getSZ(1);
  @$pb.TagNumber(2)
  set name($core.String v) { $_setString(1, v); }
  @$pb.TagNumber(2)
  $core.bool hasName() => $_has(1);
  @$pb.TagNumber(2)
  void clearName() => $_clearField(2);

  @$pb.TagNumber(3)
  $core.String get entityRefID => $_getSZ(2);
  @$pb.TagNumber(3)
  set entityRefID($core.String v) { $_setString(2, v); }
  @$pb.TagNumber(3)
  $core.bool hasEntityRefID() => $_has(2);
  @$pb.TagNumber(3)
  void clearEntityRefID() => $_clearField(3);
}

class ShareAttachmentV2Response extends $pb.GeneratedMessage {
  factory ShareAttachmentV2Response({
    $core.String? shareLink,
    $3.AttachmentTypeResponseHeader? header,
  }) {
    final $result = create();
    if (shareLink != null) {
      $result.shareLink = shareLink;
    }
    if (header != null) {
      $result.header = header;
    }
    return $result;
  }
  ShareAttachmentV2Response._() : super();
  factory ShareAttachmentV2Response.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory ShareAttachmentV2Response.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'ShareAttachmentV2Response', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'ShareLink', protoName: 'ShareLink')
    ..aOM<$3.AttachmentTypeResponseHeader>(2, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.AttachmentTypeResponseHeader.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  ShareAttachmentV2Response clone() => ShareAttachmentV2Response()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  ShareAttachmentV2Response copyWith(void Function(ShareAttachmentV2Response) updates) => super.copyWith((message) => updates(message as ShareAttachmentV2Response)) as ShareAttachmentV2Response;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static ShareAttachmentV2Response create() => ShareAttachmentV2Response._();
  ShareAttachmentV2Response createEmptyInstance() => create();
  static $pb.PbList<ShareAttachmentV2Response> createRepeated() => $pb.PbList<ShareAttachmentV2Response>();
  @$core.pragma('dart2js:noInline')
  static ShareAttachmentV2Response getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<ShareAttachmentV2Response>(create);
  static ShareAttachmentV2Response? _defaultInstance;

  @$pb.TagNumber(1)
  $core.String get shareLink => $_getSZ(0);
  @$pb.TagNumber(1)
  set shareLink($core.String v) { $_setString(0, v); }
  @$pb.TagNumber(1)
  $core.bool hasShareLink() => $_has(0);
  @$pb.TagNumber(1)
  void clearShareLink() => $_clearField(1);

  /// Header of the response
  @$pb.TagNumber(2)
  $3.AttachmentTypeResponseHeader get header => $_getN(1);
  @$pb.TagNumber(2)
  set header($3.AttachmentTypeResponseHeader v) { $_setField(2, v); }
  @$pb.TagNumber(2)
  $core.bool hasHeader() => $_has(1);
  @$pb.TagNumber(2)
  void clearHeader() => $_clearField(2);
  @$pb.TagNumber(2)
  $3.AttachmentTypeResponseHeader ensureHeader() => $_ensure(1);
}

class DeleteAllAttachmentsV2Request extends $pb.GeneratedMessage {
  factory DeleteAllAttachmentsV2Request({
    $3.RequestProjectHeader? header,
  }) {
    final $result = create();
    if (header != null) {
      $result.header = header;
    }
    return $result;
  }
  DeleteAllAttachmentsV2Request._() : super();
  factory DeleteAllAttachmentsV2Request.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory DeleteAllAttachmentsV2Request.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DeleteAllAttachmentsV2Request', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$3.RequestProjectHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $3.RequestProjectHeader.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  DeleteAllAttachmentsV2Request clone() => DeleteAllAttachmentsV2Request()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  DeleteAllAttachmentsV2Request copyWith(void Function(DeleteAllAttachmentsV2Request) updates) => super.copyWith((message) => updates(message as DeleteAllAttachmentsV2Request)) as DeleteAllAttachmentsV2Request;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DeleteAllAttachmentsV2Request create() => DeleteAllAttachmentsV2Request._();
  DeleteAllAttachmentsV2Request createEmptyInstance() => create();
  static $pb.PbList<DeleteAllAttachmentsV2Request> createRepeated() => $pb.PbList<DeleteAllAttachmentsV2Request>();
  @$core.pragma('dart2js:noInline')
  static DeleteAllAttachmentsV2Request getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DeleteAllAttachmentsV2Request>(create);
  static DeleteAllAttachmentsV2Request? _defaultInstance;

  @$pb.TagNumber(1)
  $3.RequestProjectHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($3.RequestProjectHeader v) { $_setField(1, v); }
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $3.RequestProjectHeader ensureHeader() => $_ensure(0);
}

class DeleteAllAttachmentsV2Response extends $pb.GeneratedMessage {
  factory DeleteAllAttachmentsV2Response() => create();
  DeleteAllAttachmentsV2Response._() : super();
  factory DeleteAllAttachmentsV2Response.fromBuffer($core.List<$core.int> i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(i, r);
  factory DeleteAllAttachmentsV2Response.fromJson($core.String i, [$pb.ExtensionRegistry r = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(i, r);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'DeleteAllAttachmentsV2Response', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.deepCopy] instead. '
  'Will be removed in next major version')
  DeleteAllAttachmentsV2Response clone() => DeleteAllAttachmentsV2Response()..mergeFromMessage(this);
  @$core.Deprecated(
  'Using this can add significant overhead to your binary. '
  'Use [GeneratedMessageGenericExtensions.rebuild] instead. '
  'Will be removed in next major version')
  DeleteAllAttachmentsV2Response copyWith(void Function(DeleteAllAttachmentsV2Response) updates) => super.copyWith((message) => updates(message as DeleteAllAttachmentsV2Response)) as DeleteAllAttachmentsV2Response;

  $pb.BuilderInfo get info_ => _i;

  @$core.pragma('dart2js:noInline')
  static DeleteAllAttachmentsV2Response create() => DeleteAllAttachmentsV2Response._();
  DeleteAllAttachmentsV2Response createEmptyInstance() => create();
  static $pb.PbList<DeleteAllAttachmentsV2Response> createRepeated() => $pb.PbList<DeleteAllAttachmentsV2Response>();
  @$core.pragma('dart2js:noInline')
  static DeleteAllAttachmentsV2Response getDefault() => _defaultInstance ??= $pb.GeneratedMessage.$_defaultFor<DeleteAllAttachmentsV2Response>(create);
  static DeleteAllAttachmentsV2Response? _defaultInstance;
}


const _omitFieldNames = $core.bool.fromEnvironment('protobuf.omit_field_names');
const _omitMessageNames = $core.bool.fromEnvironment('protobuf.omit_message_names');
