Animation constructor

const Animation({
  1. @JsonKey(name: 'file_id') required String fileId,
  2. @JsonKey(name: 'file_unique_id') required String fileUniqueId,
  3. @JsonKey(name: 'width') required int width,
  4. @JsonKey(name: 'height') required int height,
  5. @JsonKey(name: 'duration') required int duration,
  6. @JsonKey(name: 'thumbnail') PhotoSize? thumbnail,
  7. @JsonKey(name: 'file_name') String? fileName,
  8. @JsonKey(name: 'mime_type') String? mimeType,
  9. @JsonKey(name: 'file_size') int? fileSize,
})

Creates a new Animation object.

Implementation

const factory Animation({
  /// Identifier for this file, which can be used to download or reuse the
  /// file
  @JsonKey(name: 'file_id') required String fileId,

  /// Unique identifier for this file, which is supposed to be the same over
  /// time and for different bots. Can't be used to download or reuse the
  /// file.
  @JsonKey(name: 'file_unique_id') required String fileUniqueId,

  /// Video width as defined by sender
  @JsonKey(name: 'width') required int width,

  /// Video height as defined by sender
  @JsonKey(name: 'height') required int height,

  /// Duration of the video in seconds as defined by sender
  ///
  /// A handy [Duration] getter is available as [durationTime]
  @JsonKey(name: 'duration') required int duration,

  /// Optional. Animation thumbnail as defined by sender
  @JsonKey(name: 'thumbnail') PhotoSize? thumbnail,

  /// Optional. Original animation filename as defined by sender
  @JsonKey(name: 'file_name') String? fileName,

  /// Optional. MIME type of the file as defined by sender
  @JsonKey(name: 'mime_type') String? mimeType,

  /// Optional. File size in bytes. It can be bigger than 2^31 and some
  /// programming languages may have difficulty/silent defects in interpreting
  /// it. But it has at most 52 significant bits, so a signed 64-bit integer
  /// or double-precision float type are safe for storing this value.
  @JsonKey(name: 'file_size') int? fileSize,
}) = _Animation;