BidiGenerateContentSetup.fromJson constructor

BidiGenerateContentSetup.fromJson(
  1. Object? j
)

Implementation

factory BidiGenerateContentSetup.fromJson(Object? j) {
  final json = j as Map<String, Object?>;
  return BidiGenerateContentSetup(
    model: switch (json['model']) {
      null => '',
      Object $1 => decodeString($1),
    },
    generationConfig: switch (json['generationConfig']) {
      null => null,
      Object $1 => GenerationConfig.fromJson($1),
    },
    systemInstruction: switch (json['systemInstruction']) {
      null => null,
      Object $1 => Content.fromJson($1),
    },
    tools: switch (json['tools']) {
      null => [],
      List<Object?> $1 => [for (final i in $1) Tool.fromJson(i)],
      _ => throw const FormatException('"tools" is not a list'),
    },
    realtimeInputConfig: switch (json['realtimeInputConfig']) {
      null => null,
      Object $1 => RealtimeInputConfig.fromJson($1),
    },
    sessionResumption: switch (json['sessionResumption']) {
      null => null,
      Object $1 => SessionResumptionConfig.fromJson($1),
    },
    contextWindowCompression: switch (json['contextWindowCompression']) {
      null => null,
      Object $1 => ContextWindowCompressionConfig.fromJson($1),
    },
    inputAudioTranscription: switch (json['inputAudioTranscription']) {
      null => null,
      Object $1 => AudioTranscriptionConfig.fromJson($1),
    },
    outputAudioTranscription: switch (json['outputAudioTranscription']) {
      null => null,
      Object $1 => AudioTranscriptionConfig.fromJson($1),
    },
  );
}