// GENERATED CODE - DO NOT MODIFY BY HAND

part of 'schema.schema.gql.dart';

// **************************************************************************
// BuiltValueGenerator
// **************************************************************************

const GVoiceExperienceStatus _$gVoiceExperienceStatusUPLOADED =
    const GVoiceExperienceStatus._('UPLOADED');
const GVoiceExperienceStatus _$gVoiceExperienceStatusTRANSCRIBING =
    const GVoiceExperienceStatus._('TRANSCRIBING');
const GVoiceExperienceStatus _$gVoiceExperienceStatusTRANSCRIBED =
    const GVoiceExperienceStatus._('TRANSCRIBED');
const GVoiceExperienceStatus _$gVoiceExperienceStatusANALYZING =
    const GVoiceExperienceStatus._('ANALYZING');
const GVoiceExperienceStatus _$gVoiceExperienceStatusANALYZED =
    const GVoiceExperienceStatus._('ANALYZED');
const GVoiceExperienceStatus _$gVoiceExperienceStatusFAILED =
    const GVoiceExperienceStatus._('FAILED');

GVoiceExperienceStatus _$gVoiceExperienceStatusValueOf(String name) {
  switch (name) {
    case 'UPLOADED':
      return _$gVoiceExperienceStatusUPLOADED;
    case 'TRANSCRIBING':
      return _$gVoiceExperienceStatusTRANSCRIBING;
    case 'TRANSCRIBED':
      return _$gVoiceExperienceStatusTRANSCRIBED;
    case 'ANALYZING':
      return _$gVoiceExperienceStatusANALYZING;
    case 'ANALYZED':
      return _$gVoiceExperienceStatusANALYZED;
    case 'FAILED':
      return _$gVoiceExperienceStatusFAILED;
    default:
      throw ArgumentError(name);
  }
}

final BuiltSet<GVoiceExperienceStatus> _$gVoiceExperienceStatusValues =
    BuiltSet<GVoiceExperienceStatus>(const <GVoiceExperienceStatus>[
      _$gVoiceExperienceStatusUPLOADED,
      _$gVoiceExperienceStatusTRANSCRIBING,
      _$gVoiceExperienceStatusTRANSCRIBED,
      _$gVoiceExperienceStatusANALYZING,
      _$gVoiceExperienceStatusANALYZED,
      _$gVoiceExperienceStatusFAILED,
    ]);

Serializer<GVoiceExperienceStatus> _$gVoiceExperienceStatusSerializer =
    _$GVoiceExperienceStatusSerializer();
Serializer<GCreateVoiceExperienceInput>
_$gCreateVoiceExperienceInputSerializer =
    _$GCreateVoiceExperienceInputSerializer();
Serializer<GNearbyPlacesInput> _$gNearbyPlacesInputSerializer =
    _$GNearbyPlacesInputSerializer();
Serializer<GVoicePlaceRecommendationsInput>
_$gVoicePlaceRecommendationsInputSerializer =
    _$GVoicePlaceRecommendationsInputSerializer();
Serializer<GAuthenticateTelegramInput> _$gAuthenticateTelegramInputSerializer =
    _$GAuthenticateTelegramInputSerializer();
Serializer<GAuthenticateTelegramLoginInput>
_$gAuthenticateTelegramLoginInputSerializer =
    _$GAuthenticateTelegramLoginInputSerializer();

class _$GVoiceExperienceStatusSerializer
    implements PrimitiveSerializer<GVoiceExperienceStatus> {
  @override
  final Iterable<Type> types = const <Type>[GVoiceExperienceStatus];
  @override
  final String wireName = 'GVoiceExperienceStatus';

  @override
  Object serialize(
    Serializers serializers,
    GVoiceExperienceStatus object, {
    FullType specifiedType = FullType.unspecified,
  }) => object.name;

  @override
  GVoiceExperienceStatus deserialize(
    Serializers serializers,
    Object serialized, {
    FullType specifiedType = FullType.unspecified,
  }) => GVoiceExperienceStatus.valueOf(serialized as String);
}

class _$GCreateVoiceExperienceInputSerializer
    implements StructuredSerializer<GCreateVoiceExperienceInput> {
  @override
  final Iterable<Type> types = const [
    GCreateVoiceExperienceInput,
    _$GCreateVoiceExperienceInput,
  ];
  @override
  final String wireName = 'GCreateVoiceExperienceInput';

  @override
  Iterable<Object?> serialize(
    Serializers serializers,
    GCreateVoiceExperienceInput object, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = <Object?>[
      'googlePlaceId',
      serializers.serialize(
        object.googlePlaceId,
        specifiedType: const FullType(String),
      ),
      'googleName',
      serializers.serialize(
        object.googleName,
        specifiedType: const FullType(String),
      ),
      'latitude',
      serializers.serialize(
        object.latitude,
        specifiedType: const FullType(double),
      ),
      'longitude',
      serializers.serialize(
        object.longitude,
        specifiedType: const FullType(double),
      ),
      'durationSeconds',
      serializers.serialize(
        object.durationSeconds,
        specifiedType: const FullType(int),
      ),
      'audioObjectKey',
      serializers.serialize(
        object.audioObjectKey,
        specifiedType: const FullType(String),
      ),
      'audioContentBase64',
      serializers.serialize(
        object.audioContentBase64,
        specifiedType: const FullType(String),
      ),
      'audioMimeType',
      serializers.serialize(
        object.audioMimeType,
        specifiedType: const FullType(String),
      ),
    ];
    Object? value;
    value = object.googlePrimaryType;
    if (value != null) {
      result
        ..add('googlePrimaryType')
        ..add(
          serializers.serialize(value, specifiedType: const FullType(String)),
        );
    }
    value = object.googleTypes;
    if (value != null) {
      result
        ..add('googleTypes')
        ..add(
          serializers.serialize(
            value,
            specifiedType: const FullType(BuiltList, const [
              const FullType(String),
            ]),
          ),
        );
    }
    value = object.addToFavorites;
    if (value != null) {
      result
        ..add('addToFavorites')
        ..add(
          serializers.serialize(value, specifiedType: const FullType(bool)),
        );
    }
    value = object.recordingPayload;
    if (value != null) {
      result
        ..add('recordingPayload')
        ..add(
          serializers.serialize(
            value,
            specifiedType: const FullType(_i1.JsonObject),
          ),
        );
    }
    value = object.promptHintsShown;
    if (value != null) {
      result
        ..add('promptHintsShown')
        ..add(
          serializers.serialize(
            value,
            specifiedType: const FullType(BuiltList, const [
              const FullType(String),
            ]),
          ),
        );
    }
    return result;
  }

  @override
  GCreateVoiceExperienceInput deserialize(
    Serializers serializers,
    Iterable<Object?> serialized, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = GCreateVoiceExperienceInputBuilder();

    final iterator = serialized.iterator;
    while (iterator.moveNext()) {
      final key = iterator.current! as String;
      iterator.moveNext();
      final Object? value = iterator.current;
      switch (key) {
        case 'googlePlaceId':
          result.googlePlaceId =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )!
                  as String;
          break;
        case 'googleName':
          result.googleName =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )!
                  as String;
          break;
        case 'latitude':
          result.latitude =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(double),
                  )!
                  as double;
          break;
        case 'longitude':
          result.longitude =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(double),
                  )!
                  as double;
          break;
        case 'googlePrimaryType':
          result.googlePrimaryType =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )
                  as String?;
          break;
        case 'googleTypes':
          result.googleTypes.replace(
            serializers.deserialize(
                  value,
                  specifiedType: const FullType(BuiltList, const [
                    const FullType(String),
                  ]),
                )!
                as BuiltList<Object?>,
          );
          break;
        case 'durationSeconds':
          result.durationSeconds =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(int),
                  )!
                  as int;
          break;
        case 'audioObjectKey':
          result.audioObjectKey =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )!
                  as String;
          break;
        case 'audioContentBase64':
          result.audioContentBase64 =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )!
                  as String;
          break;
        case 'audioMimeType':
          result.audioMimeType =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )!
                  as String;
          break;
        case 'addToFavorites':
          result.addToFavorites =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(bool),
                  )
                  as bool?;
          break;
        case 'recordingPayload':
          result.recordingPayload =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(_i1.JsonObject),
                  )
                  as _i1.JsonObject?;
          break;
        case 'promptHintsShown':
          result.promptHintsShown.replace(
            serializers.deserialize(
                  value,
                  specifiedType: const FullType(BuiltList, const [
                    const FullType(String),
                  ]),
                )!
                as BuiltList<Object?>,
          );
          break;
      }
    }

    return result.build();
  }
}

class _$GNearbyPlacesInputSerializer
    implements StructuredSerializer<GNearbyPlacesInput> {
  @override
  final Iterable<Type> types = const [GNearbyPlacesInput, _$GNearbyPlacesInput];
  @override
  final String wireName = 'GNearbyPlacesInput';

  @override
  Iterable<Object?> serialize(
    Serializers serializers,
    GNearbyPlacesInput object, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = <Object?>[
      'latitude',
      serializers.serialize(
        object.latitude,
        specifiedType: const FullType(double),
      ),
      'longitude',
      serializers.serialize(
        object.longitude,
        specifiedType: const FullType(double),
      ),
      'radiusMeters',
      serializers.serialize(
        object.radiusMeters,
        specifiedType: const FullType(int),
      ),
    ];

    return result;
  }

  @override
  GNearbyPlacesInput deserialize(
    Serializers serializers,
    Iterable<Object?> serialized, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = GNearbyPlacesInputBuilder();

    final iterator = serialized.iterator;
    while (iterator.moveNext()) {
      final key = iterator.current! as String;
      iterator.moveNext();
      final Object? value = iterator.current;
      switch (key) {
        case 'latitude':
          result.latitude =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(double),
                  )!
                  as double;
          break;
        case 'longitude':
          result.longitude =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(double),
                  )!
                  as double;
          break;
        case 'radiusMeters':
          result.radiusMeters =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(int),
                  )!
                  as int;
          break;
      }
    }

    return result.build();
  }
}

class _$GVoicePlaceRecommendationsInputSerializer
    implements StructuredSerializer<GVoicePlaceRecommendationsInput> {
  @override
  final Iterable<Type> types = const [
    GVoicePlaceRecommendationsInput,
    _$GVoicePlaceRecommendationsInput,
  ];
  @override
  final String wireName = 'GVoicePlaceRecommendationsInput';

  @override
  Iterable<Object?> serialize(
    Serializers serializers,
    GVoicePlaceRecommendationsInput object, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = <Object?>[
      'audioContentBase64',
      serializers.serialize(
        object.audioContentBase64,
        specifiedType: const FullType(String),
      ),
      'audioMimeType',
      serializers.serialize(
        object.audioMimeType,
        specifiedType: const FullType(String),
      ),
    ];

    return result;
  }

  @override
  GVoicePlaceRecommendationsInput deserialize(
    Serializers serializers,
    Iterable<Object?> serialized, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = GVoicePlaceRecommendationsInputBuilder();

    final iterator = serialized.iterator;
    while (iterator.moveNext()) {
      final key = iterator.current! as String;
      iterator.moveNext();
      final Object? value = iterator.current;
      switch (key) {
        case 'audioContentBase64':
          result.audioContentBase64 =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )!
                  as String;
          break;
        case 'audioMimeType':
          result.audioMimeType =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )!
                  as String;
          break;
      }
    }

    return result.build();
  }
}

class _$GAuthenticateTelegramInputSerializer
    implements StructuredSerializer<GAuthenticateTelegramInput> {
  @override
  final Iterable<Type> types = const [
    GAuthenticateTelegramInput,
    _$GAuthenticateTelegramInput,
  ];
  @override
  final String wireName = 'GAuthenticateTelegramInput';

  @override
  Iterable<Object?> serialize(
    Serializers serializers,
    GAuthenticateTelegramInput object, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = <Object?>[
      'initData',
      serializers.serialize(
        object.initData,
        specifiedType: const FullType(String),
      ),
    ];

    return result;
  }

  @override
  GAuthenticateTelegramInput deserialize(
    Serializers serializers,
    Iterable<Object?> serialized, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = GAuthenticateTelegramInputBuilder();

    final iterator = serialized.iterator;
    while (iterator.moveNext()) {
      final key = iterator.current! as String;
      iterator.moveNext();
      final Object? value = iterator.current;
      switch (key) {
        case 'initData':
          result.initData =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )!
                  as String;
          break;
      }
    }

    return result.build();
  }
}

class _$GAuthenticateTelegramLoginInputSerializer
    implements StructuredSerializer<GAuthenticateTelegramLoginInput> {
  @override
  final Iterable<Type> types = const [
    GAuthenticateTelegramLoginInput,
    _$GAuthenticateTelegramLoginInput,
  ];
  @override
  final String wireName = 'GAuthenticateTelegramLoginInput';

  @override
  Iterable<Object?> serialize(
    Serializers serializers,
    GAuthenticateTelegramLoginInput object, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = <Object?>[
      'id',
      serializers.serialize(object.id, specifiedType: const FullType(double)),
      'auth_date',
      serializers.serialize(
        object.auth_date,
        specifiedType: const FullType(double),
      ),
      'hash',
      serializers.serialize(object.hash, specifiedType: const FullType(String)),
    ];
    Object? value;
    value = object.first_name;
    if (value != null) {
      result
        ..add('first_name')
        ..add(
          serializers.serialize(value, specifiedType: const FullType(String)),
        );
    }
    value = object.last_name;
    if (value != null) {
      result
        ..add('last_name')
        ..add(
          serializers.serialize(value, specifiedType: const FullType(String)),
        );
    }
    value = object.username;
    if (value != null) {
      result
        ..add('username')
        ..add(
          serializers.serialize(value, specifiedType: const FullType(String)),
        );
    }
    value = object.photo_url;
    if (value != null) {
      result
        ..add('photo_url')
        ..add(
          serializers.serialize(value, specifiedType: const FullType(String)),
        );
    }
    return result;
  }

  @override
  GAuthenticateTelegramLoginInput deserialize(
    Serializers serializers,
    Iterable<Object?> serialized, {
    FullType specifiedType = FullType.unspecified,
  }) {
    final result = GAuthenticateTelegramLoginInputBuilder();

    final iterator = serialized.iterator;
    while (iterator.moveNext()) {
      final key = iterator.current! as String;
      iterator.moveNext();
      final Object? value = iterator.current;
      switch (key) {
        case 'id':
          result.id =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(double),
                  )!
                  as double;
          break;
        case 'first_name':
          result.first_name =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )
                  as String?;
          break;
        case 'last_name':
          result.last_name =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )
                  as String?;
          break;
        case 'username':
          result.username =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )
                  as String?;
          break;
        case 'photo_url':
          result.photo_url =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )
                  as String?;
          break;
        case 'auth_date':
          result.auth_date =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(double),
                  )!
                  as double;
          break;
        case 'hash':
          result.hash =
              serializers.deserialize(
                    value,
                    specifiedType: const FullType(String),
                  )!
                  as String;
          break;
      }
    }

    return result.build();
  }
}

class _$GCreateVoiceExperienceInput extends GCreateVoiceExperienceInput {
  @override
  final String googlePlaceId;
  @override
  final String googleName;
  @override
  final double latitude;
  @override
  final double longitude;
  @override
  final String? googlePrimaryType;
  @override
  final BuiltList<String>? googleTypes;
  @override
  final int durationSeconds;
  @override
  final String audioObjectKey;
  @override
  final String audioContentBase64;
  @override
  final String audioMimeType;
  @override
  final bool? addToFavorites;
  @override
  final _i1.JsonObject? recordingPayload;
  @override
  final BuiltList<String>? promptHintsShown;

  factory _$GCreateVoiceExperienceInput([
    void Function(GCreateVoiceExperienceInputBuilder)? updates,
  ]) => (GCreateVoiceExperienceInputBuilder()..update(updates))._build();

  _$GCreateVoiceExperienceInput._({
    required this.googlePlaceId,
    required this.googleName,
    required this.latitude,
    required this.longitude,
    this.googlePrimaryType,
    this.googleTypes,
    required this.durationSeconds,
    required this.audioObjectKey,
    required this.audioContentBase64,
    required this.audioMimeType,
    this.addToFavorites,
    this.recordingPayload,
    this.promptHintsShown,
  }) : super._();
  @override
  GCreateVoiceExperienceInput rebuild(
    void Function(GCreateVoiceExperienceInputBuilder) updates,
  ) => (toBuilder()..update(updates)).build();

  @override
  GCreateVoiceExperienceInputBuilder toBuilder() =>
      GCreateVoiceExperienceInputBuilder()..replace(this);

  @override
  bool operator ==(Object other) {
    if (identical(other, this)) return true;
    return other is GCreateVoiceExperienceInput &&
        googlePlaceId == other.googlePlaceId &&
        googleName == other.googleName &&
        latitude == other.latitude &&
        longitude == other.longitude &&
        googlePrimaryType == other.googlePrimaryType &&
        googleTypes == other.googleTypes &&
        durationSeconds == other.durationSeconds &&
        audioObjectKey == other.audioObjectKey &&
        audioContentBase64 == other.audioContentBase64 &&
        audioMimeType == other.audioMimeType &&
        addToFavorites == other.addToFavorites &&
        recordingPayload == other.recordingPayload &&
        promptHintsShown == other.promptHintsShown;
  }

  @override
  int get hashCode {
    var _$hash = 0;
    _$hash = $jc(_$hash, googlePlaceId.hashCode);
    _$hash = $jc(_$hash, googleName.hashCode);
    _$hash = $jc(_$hash, latitude.hashCode);
    _$hash = $jc(_$hash, longitude.hashCode);
    _$hash = $jc(_$hash, googlePrimaryType.hashCode);
    _$hash = $jc(_$hash, googleTypes.hashCode);
    _$hash = $jc(_$hash, durationSeconds.hashCode);
    _$hash = $jc(_$hash, audioObjectKey.hashCode);
    _$hash = $jc(_$hash, audioContentBase64.hashCode);
    _$hash = $jc(_$hash, audioMimeType.hashCode);
    _$hash = $jc(_$hash, addToFavorites.hashCode);
    _$hash = $jc(_$hash, recordingPayload.hashCode);
    _$hash = $jc(_$hash, promptHintsShown.hashCode);
    _$hash = $jf(_$hash);
    return _$hash;
  }

  @override
  String toString() {
    return (newBuiltValueToStringHelper(r'GCreateVoiceExperienceInput')
          ..add('googlePlaceId', googlePlaceId)
          ..add('googleName', googleName)
          ..add('latitude', latitude)
          ..add('longitude', longitude)
          ..add('googlePrimaryType', googlePrimaryType)
          ..add('googleTypes', googleTypes)
          ..add('durationSeconds', durationSeconds)
          ..add('audioObjectKey', audioObjectKey)
          ..add('audioContentBase64', audioContentBase64)
          ..add('audioMimeType', audioMimeType)
          ..add('addToFavorites', addToFavorites)
          ..add('recordingPayload', recordingPayload)
          ..add('promptHintsShown', promptHintsShown))
        .toString();
  }
}

class GCreateVoiceExperienceInputBuilder
    implements
        Builder<
          GCreateVoiceExperienceInput,
          GCreateVoiceExperienceInputBuilder
        > {
  _$GCreateVoiceExperienceInput? _$v;

  String? _googlePlaceId;
  String? get googlePlaceId => _$this._googlePlaceId;
  set googlePlaceId(String? googlePlaceId) =>
      _$this._googlePlaceId = googlePlaceId;

  String? _googleName;
  String? get googleName => _$this._googleName;
  set googleName(String? googleName) => _$this._googleName = googleName;

  double? _latitude;
  double? get latitude => _$this._latitude;
  set latitude(double? latitude) => _$this._latitude = latitude;

  double? _longitude;
  double? get longitude => _$this._longitude;
  set longitude(double? longitude) => _$this._longitude = longitude;

  String? _googlePrimaryType;
  String? get googlePrimaryType => _$this._googlePrimaryType;
  set googlePrimaryType(String? googlePrimaryType) =>
      _$this._googlePrimaryType = googlePrimaryType;

  ListBuilder<String>? _googleTypes;
  ListBuilder<String> get googleTypes =>
      _$this._googleTypes ??= ListBuilder<String>();
  set googleTypes(ListBuilder<String>? googleTypes) =>
      _$this._googleTypes = googleTypes;

  int? _durationSeconds;
  int? get durationSeconds => _$this._durationSeconds;
  set durationSeconds(int? durationSeconds) =>
      _$this._durationSeconds = durationSeconds;

  String? _audioObjectKey;
  String? get audioObjectKey => _$this._audioObjectKey;
  set audioObjectKey(String? audioObjectKey) =>
      _$this._audioObjectKey = audioObjectKey;

  String? _audioContentBase64;
  String? get audioContentBase64 => _$this._audioContentBase64;
  set audioContentBase64(String? audioContentBase64) =>
      _$this._audioContentBase64 = audioContentBase64;

  String? _audioMimeType;
  String? get audioMimeType => _$this._audioMimeType;
  set audioMimeType(String? audioMimeType) =>
      _$this._audioMimeType = audioMimeType;

  bool? _addToFavorites;
  bool? get addToFavorites => _$this._addToFavorites;
  set addToFavorites(bool? addToFavorites) =>
      _$this._addToFavorites = addToFavorites;

  _i1.JsonObject? _recordingPayload;
  _i1.JsonObject? get recordingPayload => _$this._recordingPayload;
  set recordingPayload(_i1.JsonObject? recordingPayload) =>
      _$this._recordingPayload = recordingPayload;

  ListBuilder<String>? _promptHintsShown;
  ListBuilder<String> get promptHintsShown =>
      _$this._promptHintsShown ??= ListBuilder<String>();
  set promptHintsShown(ListBuilder<String>? promptHintsShown) =>
      _$this._promptHintsShown = promptHintsShown;

  GCreateVoiceExperienceInputBuilder();

  GCreateVoiceExperienceInputBuilder get _$this {
    final $v = _$v;
    if ($v != null) {
      _googlePlaceId = $v.googlePlaceId;
      _googleName = $v.googleName;
      _latitude = $v.latitude;
      _longitude = $v.longitude;
      _googlePrimaryType = $v.googlePrimaryType;
      _googleTypes = $v.googleTypes?.toBuilder();
      _durationSeconds = $v.durationSeconds;
      _audioObjectKey = $v.audioObjectKey;
      _audioContentBase64 = $v.audioContentBase64;
      _audioMimeType = $v.audioMimeType;
      _addToFavorites = $v.addToFavorites;
      _recordingPayload = $v.recordingPayload;
      _promptHintsShown = $v.promptHintsShown?.toBuilder();
      _$v = null;
    }
    return this;
  }

  @override
  void replace(GCreateVoiceExperienceInput other) {
    _$v = other as _$GCreateVoiceExperienceInput;
  }

  @override
  void update(void Function(GCreateVoiceExperienceInputBuilder)? updates) {
    if (updates != null) updates(this);
  }

  @override
  GCreateVoiceExperienceInput build() => _build();

  _$GCreateVoiceExperienceInput _build() {
    _$GCreateVoiceExperienceInput _$result;
    try {
      _$result =
          _$v ??
          _$GCreateVoiceExperienceInput._(
            googlePlaceId: BuiltValueNullFieldError.checkNotNull(
              googlePlaceId,
              r'GCreateVoiceExperienceInput',
              'googlePlaceId',
            ),
            googleName: BuiltValueNullFieldError.checkNotNull(
              googleName,
              r'GCreateVoiceExperienceInput',
              'googleName',
            ),
            latitude: BuiltValueNullFieldError.checkNotNull(
              latitude,
              r'GCreateVoiceExperienceInput',
              'latitude',
            ),
            longitude: BuiltValueNullFieldError.checkNotNull(
              longitude,
              r'GCreateVoiceExperienceInput',
              'longitude',
            ),
            googlePrimaryType: googlePrimaryType,
            googleTypes: _googleTypes?.build(),
            durationSeconds: BuiltValueNullFieldError.checkNotNull(
              durationSeconds,
              r'GCreateVoiceExperienceInput',
              'durationSeconds',
            ),
            audioObjectKey: BuiltValueNullFieldError.checkNotNull(
              audioObjectKey,
              r'GCreateVoiceExperienceInput',
              'audioObjectKey',
            ),
            audioContentBase64: BuiltValueNullFieldError.checkNotNull(
              audioContentBase64,
              r'GCreateVoiceExperienceInput',
              'audioContentBase64',
            ),
            audioMimeType: BuiltValueNullFieldError.checkNotNull(
              audioMimeType,
              r'GCreateVoiceExperienceInput',
              'audioMimeType',
            ),
            addToFavorites: addToFavorites,
            recordingPayload: recordingPayload,
            promptHintsShown: _promptHintsShown?.build(),
          );
    } catch (_) {
      late String _$failedField;
      try {
        _$failedField = 'googleTypes';
        _googleTypes?.build();

        _$failedField = 'promptHintsShown';
        _promptHintsShown?.build();
      } catch (e) {
        throw BuiltValueNestedFieldError(
          r'GCreateVoiceExperienceInput',
          _$failedField,
          e.toString(),
        );
      }
      rethrow;
    }
    replace(_$result);
    return _$result;
  }
}

class _$GNearbyPlacesInput extends GNearbyPlacesInput {
  @override
  final double latitude;
  @override
  final double longitude;
  @override
  final int radiusMeters;

  factory _$GNearbyPlacesInput([
    void Function(GNearbyPlacesInputBuilder)? updates,
  ]) => (GNearbyPlacesInputBuilder()..update(updates))._build();

  _$GNearbyPlacesInput._({
    required this.latitude,
    required this.longitude,
    required this.radiusMeters,
  }) : super._();
  @override
  GNearbyPlacesInput rebuild(
    void Function(GNearbyPlacesInputBuilder) updates,
  ) => (toBuilder()..update(updates)).build();

  @override
  GNearbyPlacesInputBuilder toBuilder() =>
      GNearbyPlacesInputBuilder()..replace(this);

  @override
  bool operator ==(Object other) {
    if (identical(other, this)) return true;
    return other is GNearbyPlacesInput &&
        latitude == other.latitude &&
        longitude == other.longitude &&
        radiusMeters == other.radiusMeters;
  }

  @override
  int get hashCode {
    var _$hash = 0;
    _$hash = $jc(_$hash, latitude.hashCode);
    _$hash = $jc(_$hash, longitude.hashCode);
    _$hash = $jc(_$hash, radiusMeters.hashCode);
    _$hash = $jf(_$hash);
    return _$hash;
  }

  @override
  String toString() {
    return (newBuiltValueToStringHelper(r'GNearbyPlacesInput')
          ..add('latitude', latitude)
          ..add('longitude', longitude)
          ..add('radiusMeters', radiusMeters))
        .toString();
  }
}

class GNearbyPlacesInputBuilder
    implements Builder<GNearbyPlacesInput, GNearbyPlacesInputBuilder> {
  _$GNearbyPlacesInput? _$v;

  double? _latitude;
  double? get latitude => _$this._latitude;
  set latitude(double? latitude) => _$this._latitude = latitude;

  double? _longitude;
  double? get longitude => _$this._longitude;
  set longitude(double? longitude) => _$this._longitude = longitude;

  int? _radiusMeters;
  int? get radiusMeters => _$this._radiusMeters;
  set radiusMeters(int? radiusMeters) => _$this._radiusMeters = radiusMeters;

  GNearbyPlacesInputBuilder();

  GNearbyPlacesInputBuilder get _$this {
    final $v = _$v;
    if ($v != null) {
      _latitude = $v.latitude;
      _longitude = $v.longitude;
      _radiusMeters = $v.radiusMeters;
      _$v = null;
    }
    return this;
  }

  @override
  void replace(GNearbyPlacesInput other) {
    _$v = other as _$GNearbyPlacesInput;
  }

  @override
  void update(void Function(GNearbyPlacesInputBuilder)? updates) {
    if (updates != null) updates(this);
  }

  @override
  GNearbyPlacesInput build() => _build();

  _$GNearbyPlacesInput _build() {
    final _$result =
        _$v ??
        _$GNearbyPlacesInput._(
          latitude: BuiltValueNullFieldError.checkNotNull(
            latitude,
            r'GNearbyPlacesInput',
            'latitude',
          ),
          longitude: BuiltValueNullFieldError.checkNotNull(
            longitude,
            r'GNearbyPlacesInput',
            'longitude',
          ),
          radiusMeters: BuiltValueNullFieldError.checkNotNull(
            radiusMeters,
            r'GNearbyPlacesInput',
            'radiusMeters',
          ),
        );
    replace(_$result);
    return _$result;
  }
}

class _$GVoicePlaceRecommendationsInput
    extends GVoicePlaceRecommendationsInput {
  @override
  final String audioContentBase64;
  @override
  final String audioMimeType;

  factory _$GVoicePlaceRecommendationsInput([
    void Function(GVoicePlaceRecommendationsInputBuilder)? updates,
  ]) => (GVoicePlaceRecommendationsInputBuilder()..update(updates))._build();

  _$GVoicePlaceRecommendationsInput._({
    required this.audioContentBase64,
    required this.audioMimeType,
  }) : super._();
  @override
  GVoicePlaceRecommendationsInput rebuild(
    void Function(GVoicePlaceRecommendationsInputBuilder) updates,
  ) => (toBuilder()..update(updates)).build();

  @override
  GVoicePlaceRecommendationsInputBuilder toBuilder() =>
      GVoicePlaceRecommendationsInputBuilder()..replace(this);

  @override
  bool operator ==(Object other) {
    if (identical(other, this)) return true;
    return other is GVoicePlaceRecommendationsInput &&
        audioContentBase64 == other.audioContentBase64 &&
        audioMimeType == other.audioMimeType;
  }

  @override
  int get hashCode {
    var _$hash = 0;
    _$hash = $jc(_$hash, audioContentBase64.hashCode);
    _$hash = $jc(_$hash, audioMimeType.hashCode);
    _$hash = $jf(_$hash);
    return _$hash;
  }

  @override
  String toString() {
    return (newBuiltValueToStringHelper(r'GVoicePlaceRecommendationsInput')
          ..add('audioContentBase64', audioContentBase64)
          ..add('audioMimeType', audioMimeType))
        .toString();
  }
}

class GVoicePlaceRecommendationsInputBuilder
    implements
        Builder<
          GVoicePlaceRecommendationsInput,
          GVoicePlaceRecommendationsInputBuilder
        > {
  _$GVoicePlaceRecommendationsInput? _$v;

  String? _audioContentBase64;
  String? get audioContentBase64 => _$this._audioContentBase64;
  set audioContentBase64(String? audioContentBase64) =>
      _$this._audioContentBase64 = audioContentBase64;

  String? _audioMimeType;
  String? get audioMimeType => _$this._audioMimeType;
  set audioMimeType(String? audioMimeType) =>
      _$this._audioMimeType = audioMimeType;

  GVoicePlaceRecommendationsInputBuilder();

  GVoicePlaceRecommendationsInputBuilder get _$this {
    final $v = _$v;
    if ($v != null) {
      _audioContentBase64 = $v.audioContentBase64;
      _audioMimeType = $v.audioMimeType;
      _$v = null;
    }
    return this;
  }

  @override
  void replace(GVoicePlaceRecommendationsInput other) {
    _$v = other as _$GVoicePlaceRecommendationsInput;
  }

  @override
  void update(void Function(GVoicePlaceRecommendationsInputBuilder)? updates) {
    if (updates != null) updates(this);
  }

  @override
  GVoicePlaceRecommendationsInput build() => _build();

  _$GVoicePlaceRecommendationsInput _build() {
    final _$result =
        _$v ??
        _$GVoicePlaceRecommendationsInput._(
          audioContentBase64: BuiltValueNullFieldError.checkNotNull(
            audioContentBase64,
            r'GVoicePlaceRecommendationsInput',
            'audioContentBase64',
          ),
          audioMimeType: BuiltValueNullFieldError.checkNotNull(
            audioMimeType,
            r'GVoicePlaceRecommendationsInput',
            'audioMimeType',
          ),
        );
    replace(_$result);
    return _$result;
  }
}

class _$GAuthenticateTelegramInput extends GAuthenticateTelegramInput {
  @override
  final String initData;

  factory _$GAuthenticateTelegramInput([
    void Function(GAuthenticateTelegramInputBuilder)? updates,
  ]) => (GAuthenticateTelegramInputBuilder()..update(updates))._build();

  _$GAuthenticateTelegramInput._({required this.initData}) : super._();
  @override
  GAuthenticateTelegramInput rebuild(
    void Function(GAuthenticateTelegramInputBuilder) updates,
  ) => (toBuilder()..update(updates)).build();

  @override
  GAuthenticateTelegramInputBuilder toBuilder() =>
      GAuthenticateTelegramInputBuilder()..replace(this);

  @override
  bool operator ==(Object other) {
    if (identical(other, this)) return true;
    return other is GAuthenticateTelegramInput && initData == other.initData;
  }

  @override
  int get hashCode {
    var _$hash = 0;
    _$hash = $jc(_$hash, initData.hashCode);
    _$hash = $jf(_$hash);
    return _$hash;
  }

  @override
  String toString() {
    return (newBuiltValueToStringHelper(
      r'GAuthenticateTelegramInput',
    )..add('initData', initData)).toString();
  }
}

class GAuthenticateTelegramInputBuilder
    implements
        Builder<GAuthenticateTelegramInput, GAuthenticateTelegramInputBuilder> {
  _$GAuthenticateTelegramInput? _$v;

  String? _initData;
  String? get initData => _$this._initData;
  set initData(String? initData) => _$this._initData = initData;

  GAuthenticateTelegramInputBuilder();

  GAuthenticateTelegramInputBuilder get _$this {
    final $v = _$v;
    if ($v != null) {
      _initData = $v.initData;
      _$v = null;
    }
    return this;
  }

  @override
  void replace(GAuthenticateTelegramInput other) {
    _$v = other as _$GAuthenticateTelegramInput;
  }

  @override
  void update(void Function(GAuthenticateTelegramInputBuilder)? updates) {
    if (updates != null) updates(this);
  }

  @override
  GAuthenticateTelegramInput build() => _build();

  _$GAuthenticateTelegramInput _build() {
    final _$result =
        _$v ??
        _$GAuthenticateTelegramInput._(
          initData: BuiltValueNullFieldError.checkNotNull(
            initData,
            r'GAuthenticateTelegramInput',
            'initData',
          ),
        );
    replace(_$result);
    return _$result;
  }
}

class _$GAuthenticateTelegramLoginInput
    extends GAuthenticateTelegramLoginInput {
  @override
  final double id;
  @override
  final String? first_name;
  @override
  final String? last_name;
  @override
  final String? username;
  @override
  final String? photo_url;
  @override
  final double auth_date;
  @override
  final String hash;

  factory _$GAuthenticateTelegramLoginInput([
    void Function(GAuthenticateTelegramLoginInputBuilder)? updates,
  ]) => (GAuthenticateTelegramLoginInputBuilder()..update(updates))._build();

  _$GAuthenticateTelegramLoginInput._({
    required this.id,
    this.first_name,
    this.last_name,
    this.username,
    this.photo_url,
    required this.auth_date,
    required this.hash,
  }) : super._();
  @override
  GAuthenticateTelegramLoginInput rebuild(
    void Function(GAuthenticateTelegramLoginInputBuilder) updates,
  ) => (toBuilder()..update(updates)).build();

  @override
  GAuthenticateTelegramLoginInputBuilder toBuilder() =>
      GAuthenticateTelegramLoginInputBuilder()..replace(this);

  @override
  bool operator ==(Object other) {
    if (identical(other, this)) return true;
    return other is GAuthenticateTelegramLoginInput &&
        id == other.id &&
        first_name == other.first_name &&
        last_name == other.last_name &&
        username == other.username &&
        photo_url == other.photo_url &&
        auth_date == other.auth_date &&
        hash == other.hash;
  }

  @override
  int get hashCode {
    var _$hash = 0;
    _$hash = $jc(_$hash, id.hashCode);
    _$hash = $jc(_$hash, first_name.hashCode);
    _$hash = $jc(_$hash, last_name.hashCode);
    _$hash = $jc(_$hash, username.hashCode);
    _$hash = $jc(_$hash, photo_url.hashCode);
    _$hash = $jc(_$hash, auth_date.hashCode);
    _$hash = $jc(_$hash, hash.hashCode);
    _$hash = $jf(_$hash);
    return _$hash;
  }

  @override
  String toString() {
    return (newBuiltValueToStringHelper(r'GAuthenticateTelegramLoginInput')
          ..add('id', id)
          ..add('first_name', first_name)
          ..add('last_name', last_name)
          ..add('username', username)
          ..add('photo_url', photo_url)
          ..add('auth_date', auth_date)
          ..add('hash', hash))
        .toString();
  }
}

class GAuthenticateTelegramLoginInputBuilder
    implements
        Builder<
          GAuthenticateTelegramLoginInput,
          GAuthenticateTelegramLoginInputBuilder
        > {
  _$GAuthenticateTelegramLoginInput? _$v;

  double? _id;
  double? get id => _$this._id;
  set id(double? id) => _$this._id = id;

  String? _first_name;
  String? get first_name => _$this._first_name;
  set first_name(String? first_name) => _$this._first_name = first_name;

  String? _last_name;
  String? get last_name => _$this._last_name;
  set last_name(String? last_name) => _$this._last_name = last_name;

  String? _username;
  String? get username => _$this._username;
  set username(String? username) => _$this._username = username;

  String? _photo_url;
  String? get photo_url => _$this._photo_url;
  set photo_url(String? photo_url) => _$this._photo_url = photo_url;

  double? _auth_date;
  double? get auth_date => _$this._auth_date;
  set auth_date(double? auth_date) => _$this._auth_date = auth_date;

  String? _hash;
  String? get hash => _$this._hash;
  set hash(String? hash) => _$this._hash = hash;

  GAuthenticateTelegramLoginInputBuilder();

  GAuthenticateTelegramLoginInputBuilder get _$this {
    final $v = _$v;
    if ($v != null) {
      _id = $v.id;
      _first_name = $v.first_name;
      _last_name = $v.last_name;
      _username = $v.username;
      _photo_url = $v.photo_url;
      _auth_date = $v.auth_date;
      _hash = $v.hash;
      _$v = null;
    }
    return this;
  }

  @override
  void replace(GAuthenticateTelegramLoginInput other) {
    _$v = other as _$GAuthenticateTelegramLoginInput;
  }

  @override
  void update(void Function(GAuthenticateTelegramLoginInputBuilder)? updates) {
    if (updates != null) updates(this);
  }

  @override
  GAuthenticateTelegramLoginInput build() => _build();

  _$GAuthenticateTelegramLoginInput _build() {
    final _$result =
        _$v ??
        _$GAuthenticateTelegramLoginInput._(
          id: BuiltValueNullFieldError.checkNotNull(
            id,
            r'GAuthenticateTelegramLoginInput',
            'id',
          ),
          first_name: first_name,
          last_name: last_name,
          username: username,
          photo_url: photo_url,
          auth_date: BuiltValueNullFieldError.checkNotNull(
            auth_date,
            r'GAuthenticateTelegramLoginInput',
            'auth_date',
          ),
          hash: BuiltValueNullFieldError.checkNotNull(
            hash,
            r'GAuthenticateTelegramLoginInput',
            'hash',
          ),
        );
    replace(_$result);
    return _$result;
  }
}

// ignore_for_file: deprecated_member_use_from_same_package,type=lint
