// This is a generated file - do not edit.
//
// Generated from trackingInput.proto.

// @dart = 3.3

// ignore_for_file: annotate_overrides, camel_case_types, comment_references
// ignore_for_file: constant_identifier_names
// ignore_for_file: curly_braces_in_flow_control_structures
// ignore_for_file: deprecated_member_use_from_same_package, library_prefixes
// ignore_for_file: non_constant_identifier_names

import 'dart:core' as $core;

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

import 'shared.pb.dart' as $2;
import 'tradeShared.pb.dart' as $3;
import 'transportShared.pb.dart' as $1;

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

class TrackingNotifiedPayload extends $pb.GeneratedMessage {
  factory TrackingNotifiedPayload({
    $core.Iterable<$1.TrackingEvent>? events,
  }) {
    final result = create();
    if (events != null) result.events.addAll(events);
    return result;
  }

  TrackingNotifiedPayload._();

  factory TrackingNotifiedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingNotifiedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingNotifiedPayload', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..pc<$1.TrackingEvent>(1, _omitFieldNames ? '' : 'Events', $pb.PbFieldType.PM, protoName: 'Events', subBuilder: $1.TrackingEvent.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingNotifiedPayload clone() => TrackingNotifiedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingNotifiedPayload copyWith(void Function(TrackingNotifiedPayload) updates) => super.copyWith((message) => updates(message as TrackingNotifiedPayload)) as TrackingNotifiedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $pb.PbList<$1.TrackingEvent> get events => $_getList(0);
}

class TrackingNotifiedEvent extends $pb.GeneratedMessage {
  factory TrackingNotifiedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingNotifiedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingNotifiedEvent._();

  factory TrackingNotifiedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingNotifiedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingNotifiedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingNotifiedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingNotifiedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingNotifiedEvent clone() => TrackingNotifiedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingNotifiedEvent copyWith(void Function(TrackingNotifiedEvent) updates) => super.copyWith((message) => updates(message as TrackingNotifiedEvent)) as TrackingNotifiedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingNotifiedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingNotifiedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingNotifiedPayload ensurePayload() => $_ensure(2);
}

class TrackingNotifiedRequest extends $pb.GeneratedMessage {
  factory TrackingNotifiedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingNotifiedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingNotifiedRequest._();

  factory TrackingNotifiedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingNotifiedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingNotifiedRequest clone() => TrackingNotifiedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingNotifiedRequest copyWith(void Function(TrackingNotifiedRequest) updates) => super.copyWith((message) => updates(message as TrackingNotifiedRequest)) as TrackingNotifiedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingNotifiedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingNotifiedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingNotifiedPayload ensurePayload() => $_ensure(2);
}

class TrackingNotifiedResponse extends $pb.GeneratedMessage {
  factory TrackingNotifiedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingNotifiedResponse._();

  factory TrackingNotifiedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingNotifiedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingNotifiedResponse clone() => TrackingNotifiedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingNotifiedResponse copyWith(void Function(TrackingNotifiedResponse) updates) => super.copyWith((message) => updates(message as TrackingNotifiedResponse)) as TrackingNotifiedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

class TrackingDispatchedPayload extends $pb.GeneratedMessage {
  factory TrackingDispatchedPayload({
    $core.String? handlingunitID,
    $core.String? trackingURL,
    $2.DateTime? dispatchedDateTime,
    $3.TradeTier? hUCarrier,
    $3.TradeTier? hUShipFrom,
    $3.TradeTier? hUShipTo,
  }) {
    final result = create();
    if (handlingunitID != null) result.handlingunitID = handlingunitID;
    if (trackingURL != null) result.trackingURL = trackingURL;
    if (dispatchedDateTime != null) result.dispatchedDateTime = dispatchedDateTime;
    if (hUCarrier != null) result.hUCarrier = hUCarrier;
    if (hUShipFrom != null) result.hUShipFrom = hUShipFrom;
    if (hUShipTo != null) result.hUShipTo = hUShipTo;
    return result;
  }

  TrackingDispatchedPayload._();

  factory TrackingDispatchedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingDispatchedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingDispatchedPayload', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'HandlingunitID', protoName: 'HandlingunitID')
    ..aOS(2, _omitFieldNames ? '' : 'TrackingURL', protoName: 'TrackingURL')
    ..aOM<$2.DateTime>(5, _omitFieldNames ? '' : 'DispatchedDateTime', protoName: 'DispatchedDateTime', subBuilder: $2.DateTime.create)
    ..aOM<$3.TradeTier>(6, _omitFieldNames ? '' : 'HUCarrier', protoName: 'HUCarrier', subBuilder: $3.TradeTier.create)
    ..aOM<$3.TradeTier>(7, _omitFieldNames ? '' : 'HUShipFrom', protoName: 'HUShipFrom', subBuilder: $3.TradeTier.create)
    ..aOM<$3.TradeTier>(8, _omitFieldNames ? '' : 'HUShipTo', protoName: 'HUShipTo', subBuilder: $3.TradeTier.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDispatchedPayload clone() => TrackingDispatchedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDispatchedPayload copyWith(void Function(TrackingDispatchedPayload) updates) => super.copyWith((message) => updates(message as TrackingDispatchedPayload)) as TrackingDispatchedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $core.String get handlingunitID => $_getSZ(0);
  @$pb.TagNumber(1)
  set handlingunitID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasHandlingunitID() => $_has(0);
  @$pb.TagNumber(1)
  void clearHandlingunitID() => $_clearField(1);

  @$pb.TagNumber(2)
  $core.String get trackingURL => $_getSZ(1);
  @$pb.TagNumber(2)
  set trackingURL($core.String value) => $_setString(1, value);
  @$pb.TagNumber(2)
  $core.bool hasTrackingURL() => $_has(1);
  @$pb.TagNumber(2)
  void clearTrackingURL() => $_clearField(2);

  /// This date should be the same as the date in the header
  @$pb.TagNumber(5)
  $2.DateTime get dispatchedDateTime => $_getN(2);
  @$pb.TagNumber(5)
  set dispatchedDateTime($2.DateTime value) => $_setField(5, value);
  @$pb.TagNumber(5)
  $core.bool hasDispatchedDateTime() => $_has(2);
  @$pb.TagNumber(5)
  void clearDispatchedDateTime() => $_clearField(5);
  @$pb.TagNumber(5)
  $2.DateTime ensureDispatchedDateTime() => $_ensure(2);

  @$pb.TagNumber(6)
  $3.TradeTier get hUCarrier => $_getN(3);
  @$pb.TagNumber(6)
  set hUCarrier($3.TradeTier value) => $_setField(6, value);
  @$pb.TagNumber(6)
  $core.bool hasHUCarrier() => $_has(3);
  @$pb.TagNumber(6)
  void clearHUCarrier() => $_clearField(6);
  @$pb.TagNumber(6)
  $3.TradeTier ensureHUCarrier() => $_ensure(3);

  @$pb.TagNumber(7)
  $3.TradeTier get hUShipFrom => $_getN(4);
  @$pb.TagNumber(7)
  set hUShipFrom($3.TradeTier value) => $_setField(7, value);
  @$pb.TagNumber(7)
  $core.bool hasHUShipFrom() => $_has(4);
  @$pb.TagNumber(7)
  void clearHUShipFrom() => $_clearField(7);
  @$pb.TagNumber(7)
  $3.TradeTier ensureHUShipFrom() => $_ensure(4);

  @$pb.TagNumber(8)
  $3.TradeTier get hUShipTo => $_getN(5);
  @$pb.TagNumber(8)
  set hUShipTo($3.TradeTier value) => $_setField(8, value);
  @$pb.TagNumber(8)
  $core.bool hasHUShipTo() => $_has(5);
  @$pb.TagNumber(8)
  void clearHUShipTo() => $_clearField(8);
  @$pb.TagNumber(8)
  $3.TradeTier ensureHUShipTo() => $_ensure(5);
}

class TrackingDispatchedEvent extends $pb.GeneratedMessage {
  factory TrackingDispatchedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingDispatchedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingDispatchedEvent._();

  factory TrackingDispatchedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingDispatchedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingDispatchedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingDispatchedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingDispatchedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDispatchedEvent clone() => TrackingDispatchedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDispatchedEvent copyWith(void Function(TrackingDispatchedEvent) updates) => super.copyWith((message) => updates(message as TrackingDispatchedEvent)) as TrackingDispatchedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingDispatchedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingDispatchedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingDispatchedPayload ensurePayload() => $_ensure(2);
}

class TrackingDispatchedRequest extends $pb.GeneratedMessage {
  factory TrackingDispatchedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingDispatchedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingDispatchedRequest._();

  factory TrackingDispatchedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingDispatchedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDispatchedRequest clone() => TrackingDispatchedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDispatchedRequest copyWith(void Function(TrackingDispatchedRequest) updates) => super.copyWith((message) => updates(message as TrackingDispatchedRequest)) as TrackingDispatchedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingDispatchedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingDispatchedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingDispatchedPayload ensurePayload() => $_ensure(2);
}

class TrackingDispatchedResponse extends $pb.GeneratedMessage {
  factory TrackingDispatchedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingDispatchedResponse._();

  factory TrackingDispatchedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingDispatchedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDispatchedResponse clone() => TrackingDispatchedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDispatchedResponse copyWith(void Function(TrackingDispatchedResponse) updates) => super.copyWith((message) => updates(message as TrackingDispatchedResponse)) as TrackingDispatchedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

class TrackingHULabeledPayload extends $pb.GeneratedMessage {
  factory TrackingHULabeledPayload({
    $core.String? handlingunitID,
    $core.String? trackingURL,
    $3.TradeTier? hUCarrier,
    $3.TradeTier? hUShipFrom,
    $3.TradeTier? hUShipTo,
  }) {
    final result = create();
    if (handlingunitID != null) result.handlingunitID = handlingunitID;
    if (trackingURL != null) result.trackingURL = trackingURL;
    if (hUCarrier != null) result.hUCarrier = hUCarrier;
    if (hUShipFrom != null) result.hUShipFrom = hUShipFrom;
    if (hUShipTo != null) result.hUShipTo = hUShipTo;
    return result;
  }

  TrackingHULabeledPayload._();

  factory TrackingHULabeledPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingHULabeledPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingHULabeledPayload', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'HandlingunitID', protoName: 'HandlingunitID')
    ..aOS(2, _omitFieldNames ? '' : 'TrackingURL', protoName: 'TrackingURL')
    ..aOM<$3.TradeTier>(6, _omitFieldNames ? '' : 'HUCarrier', protoName: 'HUCarrier', subBuilder: $3.TradeTier.create)
    ..aOM<$3.TradeTier>(7, _omitFieldNames ? '' : 'HUShipFrom', protoName: 'HUShipFrom', subBuilder: $3.TradeTier.create)
    ..aOM<$3.TradeTier>(8, _omitFieldNames ? '' : 'HUShipTo', protoName: 'HUShipTo', subBuilder: $3.TradeTier.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingHULabeledPayload clone() => TrackingHULabeledPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingHULabeledPayload copyWith(void Function(TrackingHULabeledPayload) updates) => super.copyWith((message) => updates(message as TrackingHULabeledPayload)) as TrackingHULabeledPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $core.String get handlingunitID => $_getSZ(0);
  @$pb.TagNumber(1)
  set handlingunitID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasHandlingunitID() => $_has(0);
  @$pb.TagNumber(1)
  void clearHandlingunitID() => $_clearField(1);

  @$pb.TagNumber(2)
  $core.String get trackingURL => $_getSZ(1);
  @$pb.TagNumber(2)
  set trackingURL($core.String value) => $_setString(1, value);
  @$pb.TagNumber(2)
  $core.bool hasTrackingURL() => $_has(1);
  @$pb.TagNumber(2)
  void clearTrackingURL() => $_clearField(2);

  @$pb.TagNumber(6)
  $3.TradeTier get hUCarrier => $_getN(2);
  @$pb.TagNumber(6)
  set hUCarrier($3.TradeTier value) => $_setField(6, value);
  @$pb.TagNumber(6)
  $core.bool hasHUCarrier() => $_has(2);
  @$pb.TagNumber(6)
  void clearHUCarrier() => $_clearField(6);
  @$pb.TagNumber(6)
  $3.TradeTier ensureHUCarrier() => $_ensure(2);

  @$pb.TagNumber(7)
  $3.TradeTier get hUShipFrom => $_getN(3);
  @$pb.TagNumber(7)
  set hUShipFrom($3.TradeTier value) => $_setField(7, value);
  @$pb.TagNumber(7)
  $core.bool hasHUShipFrom() => $_has(3);
  @$pb.TagNumber(7)
  void clearHUShipFrom() => $_clearField(7);
  @$pb.TagNumber(7)
  $3.TradeTier ensureHUShipFrom() => $_ensure(3);

  @$pb.TagNumber(8)
  $3.TradeTier get hUShipTo => $_getN(4);
  @$pb.TagNumber(8)
  set hUShipTo($3.TradeTier value) => $_setField(8, value);
  @$pb.TagNumber(8)
  $core.bool hasHUShipTo() => $_has(4);
  @$pb.TagNumber(8)
  void clearHUShipTo() => $_clearField(8);
  @$pb.TagNumber(8)
  $3.TradeTier ensureHUShipTo() => $_ensure(4);
}

class TrackingHULabeledEvent extends $pb.GeneratedMessage {
  factory TrackingHULabeledEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingHULabeledPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingHULabeledEvent._();

  factory TrackingHULabeledEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingHULabeledEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingHULabeledEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingHULabeledPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingHULabeledPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingHULabeledEvent clone() => TrackingHULabeledEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingHULabeledEvent copyWith(void Function(TrackingHULabeledEvent) updates) => super.copyWith((message) => updates(message as TrackingHULabeledEvent)) as TrackingHULabeledEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingHULabeledPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingHULabeledPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingHULabeledPayload ensurePayload() => $_ensure(2);
}

class TrackingHULabeledRequest extends $pb.GeneratedMessage {
  factory TrackingHULabeledRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingHULabeledPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingHULabeledRequest._();

  factory TrackingHULabeledRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingHULabeledRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingHULabeledRequest clone() => TrackingHULabeledRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingHULabeledRequest copyWith(void Function(TrackingHULabeledRequest) updates) => super.copyWith((message) => updates(message as TrackingHULabeledRequest)) as TrackingHULabeledRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingHULabeledPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingHULabeledPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingHULabeledPayload ensurePayload() => $_ensure(2);
}

class TrackingHULabeledResponse extends $pb.GeneratedMessage {
  factory TrackingHULabeledResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingHULabeledResponse._();

  factory TrackingHULabeledResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingHULabeledResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingHULabeledResponse clone() => TrackingHULabeledResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingHULabeledResponse copyWith(void Function(TrackingHULabeledResponse) updates) => super.copyWith((message) => updates(message as TrackingHULabeledResponse)) as TrackingHULabeledResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

class TrackingURLUpdatedPayload extends $pb.GeneratedMessage {
  factory TrackingURLUpdatedPayload({
    $core.String? trackingURL,
  }) {
    final result = create();
    if (trackingURL != null) result.trackingURL = trackingURL;
    return result;
  }

  TrackingURLUpdatedPayload._();

  factory TrackingURLUpdatedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingURLUpdatedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingURLUpdatedPayload', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'TrackingURL', protoName: 'TrackingURL')
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingURLUpdatedPayload clone() => TrackingURLUpdatedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingURLUpdatedPayload copyWith(void Function(TrackingURLUpdatedPayload) updates) => super.copyWith((message) => updates(message as TrackingURLUpdatedPayload)) as TrackingURLUpdatedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $core.String get trackingURL => $_getSZ(0);
  @$pb.TagNumber(1)
  set trackingURL($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasTrackingURL() => $_has(0);
  @$pb.TagNumber(1)
  void clearTrackingURL() => $_clearField(1);
}

class TrackingURLUpdatedEvent extends $pb.GeneratedMessage {
  factory TrackingURLUpdatedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingURLUpdatedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingURLUpdatedEvent._();

  factory TrackingURLUpdatedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingURLUpdatedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingURLUpdatedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingURLUpdatedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingURLUpdatedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingURLUpdatedEvent clone() => TrackingURLUpdatedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingURLUpdatedEvent copyWith(void Function(TrackingURLUpdatedEvent) updates) => super.copyWith((message) => updates(message as TrackingURLUpdatedEvent)) as TrackingURLUpdatedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingURLUpdatedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingURLUpdatedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingURLUpdatedPayload ensurePayload() => $_ensure(2);
}

class TrackingURLUpdatedRequest extends $pb.GeneratedMessage {
  factory TrackingURLUpdatedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingURLUpdatedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingURLUpdatedRequest._();

  factory TrackingURLUpdatedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingURLUpdatedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingURLUpdatedRequest clone() => TrackingURLUpdatedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingURLUpdatedRequest copyWith(void Function(TrackingURLUpdatedRequest) updates) => super.copyWith((message) => updates(message as TrackingURLUpdatedRequest)) as TrackingURLUpdatedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingURLUpdatedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingURLUpdatedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingURLUpdatedPayload ensurePayload() => $_ensure(2);
}

class TrackingURLUpdatedResponse extends $pb.GeneratedMessage {
  factory TrackingURLUpdatedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingURLUpdatedResponse._();

  factory TrackingURLUpdatedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingURLUpdatedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingURLUpdatedResponse clone() => TrackingURLUpdatedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingURLUpdatedResponse copyWith(void Function(TrackingURLUpdatedResponse) updates) => super.copyWith((message) => updates(message as TrackingURLUpdatedResponse)) as TrackingURLUpdatedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

class TrackingSwitchedPayload extends $pb.GeneratedMessage {
  factory TrackingSwitchedPayload({
    $core.String? nextTrackingID,
    $core.String? nextTrackingURL,
    $3.TradeTier? nextHUCarrier,
    $3.TradeTier? nextHUShipFrom,
    $3.TradeTier? nextHUShipTo,
  }) {
    final result = create();
    if (nextTrackingID != null) result.nextTrackingID = nextTrackingID;
    if (nextTrackingURL != null) result.nextTrackingURL = nextTrackingURL;
    if (nextHUCarrier != null) result.nextHUCarrier = nextHUCarrier;
    if (nextHUShipFrom != null) result.nextHUShipFrom = nextHUShipFrom;
    if (nextHUShipTo != null) result.nextHUShipTo = nextHUShipTo;
    return result;
  }

  TrackingSwitchedPayload._();

  factory TrackingSwitchedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingSwitchedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingSwitchedPayload', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOS(1, _omitFieldNames ? '' : 'NextTrackingID', protoName: 'NextTrackingID')
    ..aOS(2, _omitFieldNames ? '' : 'NextTrackingURL', protoName: 'NextTrackingURL')
    ..aOM<$3.TradeTier>(3, _omitFieldNames ? '' : 'NextHUCarrier', protoName: 'NextHUCarrier', subBuilder: $3.TradeTier.create)
    ..aOM<$3.TradeTier>(4, _omitFieldNames ? '' : 'NextHUShipFrom', protoName: 'NextHUShipFrom', subBuilder: $3.TradeTier.create)
    ..aOM<$3.TradeTier>(5, _omitFieldNames ? '' : 'NextHUShipTo', protoName: 'NextHUShipTo', subBuilder: $3.TradeTier.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSwitchedPayload clone() => TrackingSwitchedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSwitchedPayload copyWith(void Function(TrackingSwitchedPayload) updates) => super.copyWith((message) => updates(message as TrackingSwitchedPayload)) as TrackingSwitchedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $core.String get nextTrackingID => $_getSZ(0);
  @$pb.TagNumber(1)
  set nextTrackingID($core.String value) => $_setString(0, value);
  @$pb.TagNumber(1)
  $core.bool hasNextTrackingID() => $_has(0);
  @$pb.TagNumber(1)
  void clearNextTrackingID() => $_clearField(1);

  @$pb.TagNumber(2)
  $core.String get nextTrackingURL => $_getSZ(1);
  @$pb.TagNumber(2)
  set nextTrackingURL($core.String value) => $_setString(1, value);
  @$pb.TagNumber(2)
  $core.bool hasNextTrackingURL() => $_has(1);
  @$pb.TagNumber(2)
  void clearNextTrackingURL() => $_clearField(2);

  @$pb.TagNumber(3)
  $3.TradeTier get nextHUCarrier => $_getN(2);
  @$pb.TagNumber(3)
  set nextHUCarrier($3.TradeTier value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasNextHUCarrier() => $_has(2);
  @$pb.TagNumber(3)
  void clearNextHUCarrier() => $_clearField(3);
  @$pb.TagNumber(3)
  $3.TradeTier ensureNextHUCarrier() => $_ensure(2);

  @$pb.TagNumber(4)
  $3.TradeTier get nextHUShipFrom => $_getN(3);
  @$pb.TagNumber(4)
  set nextHUShipFrom($3.TradeTier value) => $_setField(4, value);
  @$pb.TagNumber(4)
  $core.bool hasNextHUShipFrom() => $_has(3);
  @$pb.TagNumber(4)
  void clearNextHUShipFrom() => $_clearField(4);
  @$pb.TagNumber(4)
  $3.TradeTier ensureNextHUShipFrom() => $_ensure(3);

  @$pb.TagNumber(5)
  $3.TradeTier get nextHUShipTo => $_getN(4);
  @$pb.TagNumber(5)
  set nextHUShipTo($3.TradeTier value) => $_setField(5, value);
  @$pb.TagNumber(5)
  $core.bool hasNextHUShipTo() => $_has(4);
  @$pb.TagNumber(5)
  void clearNextHUShipTo() => $_clearField(5);
  @$pb.TagNumber(5)
  $3.TradeTier ensureNextHUShipTo() => $_ensure(4);
}

class TrackingSwitchedEvent extends $pb.GeneratedMessage {
  factory TrackingSwitchedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingSwitchedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingSwitchedEvent._();

  factory TrackingSwitchedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingSwitchedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingSwitchedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingSwitchedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingSwitchedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSwitchedEvent clone() => TrackingSwitchedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSwitchedEvent copyWith(void Function(TrackingSwitchedEvent) updates) => super.copyWith((message) => updates(message as TrackingSwitchedEvent)) as TrackingSwitchedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingSwitchedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingSwitchedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingSwitchedPayload ensurePayload() => $_ensure(2);
}

class TrackingSwitchedRequest extends $pb.GeneratedMessage {
  factory TrackingSwitchedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingSwitchedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingSwitchedRequest._();

  factory TrackingSwitchedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingSwitchedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSwitchedRequest clone() => TrackingSwitchedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSwitchedRequest copyWith(void Function(TrackingSwitchedRequest) updates) => super.copyWith((message) => updates(message as TrackingSwitchedRequest)) as TrackingSwitchedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingSwitchedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingSwitchedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingSwitchedPayload ensurePayload() => $_ensure(2);
}

class TrackingSwitchedResponse extends $pb.GeneratedMessage {
  factory TrackingSwitchedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingSwitchedResponse._();

  factory TrackingSwitchedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingSwitchedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSwitchedResponse clone() => TrackingSwitchedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSwitchedResponse copyWith(void Function(TrackingSwitchedResponse) updates) => super.copyWith((message) => updates(message as TrackingSwitchedResponse)) as TrackingSwitchedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

///
/// trackingETAUpdated
class TrackingETAUpdatedPayload extends $pb.GeneratedMessage {
  factory TrackingETAUpdatedPayload({
    $3.ETA? trackingETA,
  }) {
    final result = create();
    if (trackingETA != null) result.trackingETA = trackingETA;
    return result;
  }

  TrackingETAUpdatedPayload._();

  factory TrackingETAUpdatedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingETAUpdatedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingETAUpdatedPayload clone() => TrackingETAUpdatedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingETAUpdatedPayload copyWith(void Function(TrackingETAUpdatedPayload) updates) => super.copyWith((message) => updates(message as TrackingETAUpdatedPayload)) as TrackingETAUpdatedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  /// The ETA for the tracked HU
  @$pb.TagNumber(1)
  $3.ETA get trackingETA => $_getN(0);
  @$pb.TagNumber(1)
  set trackingETA($3.ETA value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasTrackingETA() => $_has(0);
  @$pb.TagNumber(1)
  void clearTrackingETA() => $_clearField(1);
  @$pb.TagNumber(1)
  $3.ETA ensureTrackingETA() => $_ensure(0);
}

class TrackingETAUpdatedEvent extends $pb.GeneratedMessage {
  factory TrackingETAUpdatedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingETAUpdatedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingETAUpdatedEvent._();

  factory TrackingETAUpdatedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingETAUpdatedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingETAUpdatedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingETAUpdatedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingETAUpdatedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingETAUpdatedEvent clone() => TrackingETAUpdatedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingETAUpdatedEvent copyWith(void Function(TrackingETAUpdatedEvent) updates) => super.copyWith((message) => updates(message as TrackingETAUpdatedEvent)) as TrackingETAUpdatedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingETAUpdatedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingETAUpdatedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingETAUpdatedPayload ensurePayload() => $_ensure(2);
}

class TrackingETAUpdatedRequest extends $pb.GeneratedMessage {
  factory TrackingETAUpdatedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingETAUpdatedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingETAUpdatedRequest._();

  factory TrackingETAUpdatedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingETAUpdatedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingETAUpdatedRequest clone() => TrackingETAUpdatedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingETAUpdatedRequest copyWith(void Function(TrackingETAUpdatedRequest) updates) => super.copyWith((message) => updates(message as TrackingETAUpdatedRequest)) as TrackingETAUpdatedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingETAUpdatedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingETAUpdatedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingETAUpdatedPayload ensurePayload() => $_ensure(2);
}

class TrackingETAUpdatedResponse extends $pb.GeneratedMessage {
  factory TrackingETAUpdatedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingETAUpdatedResponse._();

  factory TrackingETAUpdatedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingETAUpdatedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingETAUpdatedResponse clone() => TrackingETAUpdatedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingETAUpdatedResponse copyWith(void Function(TrackingETAUpdatedResponse) updates) => super.copyWith((message) => updates(message as TrackingETAUpdatedResponse)) as TrackingETAUpdatedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

class TrackingAttachmentAddedPayload extends $pb.GeneratedMessage {
  factory TrackingAttachmentAddedPayload({
    $core.Iterable<$2.AttachmentSummary>? attachments,
  }) {
    final result = create();
    if (attachments != null) result.attachments.addAll(attachments);
    return result;
  }

  TrackingAttachmentAddedPayload._();

  factory TrackingAttachmentAddedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingAttachmentAddedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentAddedPayload clone() => TrackingAttachmentAddedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentAddedPayload copyWith(void Function(TrackingAttachmentAddedPayload) updates) => super.copyWith((message) => updates(message as TrackingAttachmentAddedPayload)) as TrackingAttachmentAddedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

class TrackingAttachmentAddedEvent extends $pb.GeneratedMessage {
  factory TrackingAttachmentAddedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingAttachmentAddedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingAttachmentAddedEvent._();

  factory TrackingAttachmentAddedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingAttachmentAddedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingAttachmentAddedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingAttachmentAddedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingAttachmentAddedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentAddedEvent clone() => TrackingAttachmentAddedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentAddedEvent copyWith(void Function(TrackingAttachmentAddedEvent) updates) => super.copyWith((message) => updates(message as TrackingAttachmentAddedEvent)) as TrackingAttachmentAddedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingAttachmentAddedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingAttachmentAddedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingAttachmentAddedPayload ensurePayload() => $_ensure(2);
}

class TrackingAttachmentAddedRequest extends $pb.GeneratedMessage {
  factory TrackingAttachmentAddedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingAttachmentAddedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingAttachmentAddedRequest._();

  factory TrackingAttachmentAddedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingAttachmentAddedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentAddedRequest clone() => TrackingAttachmentAddedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentAddedRequest copyWith(void Function(TrackingAttachmentAddedRequest) updates) => super.copyWith((message) => updates(message as TrackingAttachmentAddedRequest)) as TrackingAttachmentAddedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingAttachmentAddedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingAttachmentAddedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingAttachmentAddedPayload ensurePayload() => $_ensure(2);
}

class TrackingAttachmentAddedResponse extends $pb.GeneratedMessage {
  factory TrackingAttachmentAddedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingAttachmentAddedResponse._();

  factory TrackingAttachmentAddedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingAttachmentAddedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentAddedResponse clone() => TrackingAttachmentAddedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentAddedResponse copyWith(void Function(TrackingAttachmentAddedResponse) updates) => super.copyWith((message) => updates(message as TrackingAttachmentAddedResponse)) as TrackingAttachmentAddedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

class TrackingAttachmentRemovedPayload extends $pb.GeneratedMessage {
  factory TrackingAttachmentRemovedPayload({
    $core.Iterable<$2.AttachmentSummary>? attachments,
  }) {
    final result = create();
    if (attachments != null) result.attachments.addAll(attachments);
    return result;
  }

  TrackingAttachmentRemovedPayload._();

  factory TrackingAttachmentRemovedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingAttachmentRemovedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentRemovedPayload clone() => TrackingAttachmentRemovedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentRemovedPayload copyWith(void Function(TrackingAttachmentRemovedPayload) updates) => super.copyWith((message) => updates(message as TrackingAttachmentRemovedPayload)) as TrackingAttachmentRemovedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

class TrackingAttachmentRemovedEvent extends $pb.GeneratedMessage {
  factory TrackingAttachmentRemovedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingAttachmentRemovedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingAttachmentRemovedEvent._();

  factory TrackingAttachmentRemovedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingAttachmentRemovedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingAttachmentRemovedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingAttachmentRemovedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingAttachmentRemovedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentRemovedEvent clone() => TrackingAttachmentRemovedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentRemovedEvent copyWith(void Function(TrackingAttachmentRemovedEvent) updates) => super.copyWith((message) => updates(message as TrackingAttachmentRemovedEvent)) as TrackingAttachmentRemovedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingAttachmentRemovedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingAttachmentRemovedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingAttachmentRemovedPayload ensurePayload() => $_ensure(2);
}

class TrackingAttachmentRemovedRequest extends $pb.GeneratedMessage {
  factory TrackingAttachmentRemovedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingAttachmentRemovedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingAttachmentRemovedRequest._();

  factory TrackingAttachmentRemovedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingAttachmentRemovedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentRemovedRequest clone() => TrackingAttachmentRemovedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentRemovedRequest copyWith(void Function(TrackingAttachmentRemovedRequest) updates) => super.copyWith((message) => updates(message as TrackingAttachmentRemovedRequest)) as TrackingAttachmentRemovedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingAttachmentRemovedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingAttachmentRemovedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingAttachmentRemovedPayload ensurePayload() => $_ensure(2);
}

class TrackingAttachmentRemovedResponse extends $pb.GeneratedMessage {
  factory TrackingAttachmentRemovedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingAttachmentRemovedResponse._();

  factory TrackingAttachmentRemovedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingAttachmentRemovedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentRemovedResponse clone() => TrackingAttachmentRemovedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingAttachmentRemovedResponse copyWith(void Function(TrackingAttachmentRemovedResponse) updates) => super.copyWith((message) => updates(message as TrackingAttachmentRemovedResponse)) as TrackingAttachmentRemovedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

/// Event Payload
class TrackingDeletedPayload extends $pb.GeneratedMessage {
  factory TrackingDeletedPayload() => create();

  TrackingDeletedPayload._();

  factory TrackingDeletedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingDeletedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDeletedPayload clone() => TrackingDeletedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDeletedPayload copyWith(void Function(TrackingDeletedPayload) updates) => super.copyWith((message) => updates(message as TrackingDeletedPayload)) as TrackingDeletedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

/// Event message
class TrackingDeletedEvent extends $pb.GeneratedMessage {
  factory TrackingDeletedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingDeletedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingDeletedEvent._();

  factory TrackingDeletedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingDeletedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingDeletedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingDeletedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingDeletedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDeletedEvent clone() => TrackingDeletedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDeletedEvent copyWith(void Function(TrackingDeletedEvent) updates) => super.copyWith((message) => updates(message as TrackingDeletedEvent)) as TrackingDeletedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingDeletedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingDeletedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingDeletedPayload ensurePayload() => $_ensure(2);
}

/// API Request
class TrackingDeletedRequest extends $pb.GeneratedMessage {
  factory TrackingDeletedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingDeletedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingDeletedRequest._();

  factory TrackingDeletedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingDeletedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDeletedRequest clone() => TrackingDeletedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDeletedRequest copyWith(void Function(TrackingDeletedRequest) updates) => super.copyWith((message) => updates(message as TrackingDeletedRequest)) as TrackingDeletedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingDeletedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingDeletedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingDeletedPayload ensurePayload() => $_ensure(2);
}

/// API Response
class TrackingDeletedResponse extends $pb.GeneratedMessage {
  factory TrackingDeletedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingDeletedResponse._();

  factory TrackingDeletedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingDeletedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDeletedResponse clone() => TrackingDeletedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingDeletedResponse copyWith(void Function(TrackingDeletedResponse) updates) => super.copyWith((message) => updates(message as TrackingDeletedResponse)) as TrackingDeletedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

class TrackingSanitisedPayload extends $pb.GeneratedMessage {
  factory TrackingSanitisedPayload() => create();

  TrackingSanitisedPayload._();

  factory TrackingSanitisedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingSanitisedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSanitisedPayload clone() => TrackingSanitisedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSanitisedPayload copyWith(void Function(TrackingSanitisedPayload) updates) => super.copyWith((message) => updates(message as TrackingSanitisedPayload)) as TrackingSanitisedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

class TrackingSanitisedEvent extends $pb.GeneratedMessage {
  factory TrackingSanitisedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingSanitisedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingSanitisedEvent._();

  factory TrackingSanitisedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingSanitisedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingSanitisedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingSanitisedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingSanitisedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSanitisedEvent clone() => TrackingSanitisedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSanitisedEvent copyWith(void Function(TrackingSanitisedEvent) updates) => super.copyWith((message) => updates(message as TrackingSanitisedEvent)) as TrackingSanitisedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingSanitisedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingSanitisedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingSanitisedPayload ensurePayload() => $_ensure(2);
}

class TrackingSanitisedRequest extends $pb.GeneratedMessage {
  factory TrackingSanitisedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingSanitisedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingSanitisedRequest._();

  factory TrackingSanitisedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingSanitisedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSanitisedRequest clone() => TrackingSanitisedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSanitisedRequest copyWith(void Function(TrackingSanitisedRequest) updates) => super.copyWith((message) => updates(message as TrackingSanitisedRequest)) as TrackingSanitisedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingSanitisedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingSanitisedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingSanitisedPayload ensurePayload() => $_ensure(2);
}

class TrackingSanitisedResponse extends $pb.GeneratedMessage {
  factory TrackingSanitisedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingSanitisedResponse._();

  factory TrackingSanitisedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingSanitisedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSanitisedResponse clone() => TrackingSanitisedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingSanitisedResponse copyWith(void Function(TrackingSanitisedResponse) updates) => super.copyWith((message) => updates(message as TrackingSanitisedResponse)) as TrackingSanitisedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}

class TrackingCustomFieldsUpdatedPayload extends $pb.GeneratedMessage {
  factory TrackingCustomFieldsUpdatedPayload() => create();

  TrackingCustomFieldsUpdatedPayload._();

  factory TrackingCustomFieldsUpdatedPayload.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingCustomFieldsUpdatedPayload.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingCustomFieldsUpdatedPayload clone() => TrackingCustomFieldsUpdatedPayload()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingCustomFieldsUpdatedPayload copyWith(void Function(TrackingCustomFieldsUpdatedPayload) updates) => super.copyWith((message) => updates(message as TrackingCustomFieldsUpdatedPayload)) as TrackingCustomFieldsUpdatedPayload;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

class TrackingCustomFieldsUpdatedEvent extends $pb.GeneratedMessage {
  factory TrackingCustomFieldsUpdatedEvent({
    $2.EventHeader? header,
    $2.EntityID? iD,
    TrackingCustomFieldsUpdatedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingCustomFieldsUpdatedEvent._();

  factory TrackingCustomFieldsUpdatedEvent.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingCustomFieldsUpdatedEvent.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

  static final $pb.BuilderInfo _i = $pb.BuilderInfo(_omitMessageNames ? '' : 'TrackingCustomFieldsUpdatedEvent', package: const $pb.PackageName(_omitMessageNames ? '' : 'api'), createEmptyInstance: create)
    ..aOM<$2.EventHeader>(1, _omitFieldNames ? '' : 'Header', protoName: 'Header', subBuilder: $2.EventHeader.create)
    ..aOM<$2.EntityID>(2, _omitFieldNames ? '' : 'ID', protoName: 'ID', subBuilder: $2.EntityID.create)
    ..aOM<TrackingCustomFieldsUpdatedPayload>(3, _omitFieldNames ? '' : 'Payload', protoName: 'Payload', subBuilder: TrackingCustomFieldsUpdatedPayload.create)
    ..hasRequiredFields = false
  ;

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingCustomFieldsUpdatedEvent clone() => TrackingCustomFieldsUpdatedEvent()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingCustomFieldsUpdatedEvent copyWith(void Function(TrackingCustomFieldsUpdatedEvent) updates) => super.copyWith((message) => updates(message as TrackingCustomFieldsUpdatedEvent)) as TrackingCustomFieldsUpdatedEvent;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.EventHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.EventHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.EventHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingCustomFieldsUpdatedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingCustomFieldsUpdatedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingCustomFieldsUpdatedPayload ensurePayload() => $_ensure(2);
}

class TrackingCustomFieldsUpdatedRequest extends $pb.GeneratedMessage {
  factory TrackingCustomFieldsUpdatedRequest({
    $2.RequestProjectHeader? header,
    $2.EntityID? iD,
    TrackingCustomFieldsUpdatedPayload? payload,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    if (payload != null) result.payload = payload;
    return result;
  }

  TrackingCustomFieldsUpdatedRequest._();

  factory TrackingCustomFieldsUpdatedRequest.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingCustomFieldsUpdatedRequest.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingCustomFieldsUpdatedRequest clone() => TrackingCustomFieldsUpdatedRequest()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingCustomFieldsUpdatedRequest copyWith(void Function(TrackingCustomFieldsUpdatedRequest) updates) => super.copyWith((message) => updates(message as TrackingCustomFieldsUpdatedRequest)) as TrackingCustomFieldsUpdatedRequest;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

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

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);

  @$pb.TagNumber(3)
  TrackingCustomFieldsUpdatedPayload get payload => $_getN(2);
  @$pb.TagNumber(3)
  set payload(TrackingCustomFieldsUpdatedPayload value) => $_setField(3, value);
  @$pb.TagNumber(3)
  $core.bool hasPayload() => $_has(2);
  @$pb.TagNumber(3)
  void clearPayload() => $_clearField(3);
  @$pb.TagNumber(3)
  TrackingCustomFieldsUpdatedPayload ensurePayload() => $_ensure(2);
}

class TrackingCustomFieldsUpdatedResponse extends $pb.GeneratedMessage {
  factory TrackingCustomFieldsUpdatedResponse({
    $2.ResponseHeader? header,
    $2.EntityID? iD,
  }) {
    final result = create();
    if (header != null) result.header = header;
    if (iD != null) result.iD = iD;
    return result;
  }

  TrackingCustomFieldsUpdatedResponse._();

  factory TrackingCustomFieldsUpdatedResponse.fromBuffer($core.List<$core.int> data, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromBuffer(data, registry);
  factory TrackingCustomFieldsUpdatedResponse.fromJson($core.String json, [$pb.ExtensionRegistry registry = $pb.ExtensionRegistry.EMPTY]) => create()..mergeFromJson(json, registry);

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

  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingCustomFieldsUpdatedResponse clone() => TrackingCustomFieldsUpdatedResponse()..mergeFromMessage(this);
  @$core.Deprecated('See https://github.com/google/protobuf.dart/issues/998.')
  TrackingCustomFieldsUpdatedResponse copyWith(void Function(TrackingCustomFieldsUpdatedResponse) updates) => super.copyWith((message) => updates(message as TrackingCustomFieldsUpdatedResponse)) as TrackingCustomFieldsUpdatedResponse;

  @$core.override
  $pb.BuilderInfo get info_ => _i;

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

  @$pb.TagNumber(1)
  $2.ResponseHeader get header => $_getN(0);
  @$pb.TagNumber(1)
  set header($2.ResponseHeader value) => $_setField(1, value);
  @$pb.TagNumber(1)
  $core.bool hasHeader() => $_has(0);
  @$pb.TagNumber(1)
  void clearHeader() => $_clearField(1);
  @$pb.TagNumber(1)
  $2.ResponseHeader ensureHeader() => $_ensure(0);

  @$pb.TagNumber(2)
  $2.EntityID get iD => $_getN(1);
  @$pb.TagNumber(2)
  set iD($2.EntityID value) => $_setField(2, value);
  @$pb.TagNumber(2)
  $core.bool hasID() => $_has(1);
  @$pb.TagNumber(2)
  void clearID() => $_clearField(2);
  @$pb.TagNumber(2)
  $2.EntityID ensureID() => $_ensure(1);
}


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