Session constructor

const Session({
  1. required String id,
  2. required String token,
  3. required DateTime expiresAt,
  4. DateTime? createdAt,
  5. DateTime? updatedAt,
  6. String? ipAddress,
  7. String? userAgent,
  8. required String userId,
  9. String? impersonatedBy,
  10. String? activeOrganizationId,
  11. String? activeTeamId,
  12. @JsonKey.new(readValue: _readSessionAdditionalFields, includeToJson: false) @Default.new(<String, dynamic>{}) Map<String, dynamic> additionalFields,
})

Implementation

const factory Session({
  required String id,
  required String token,
  required DateTime expiresAt,
  DateTime? createdAt,
  DateTime? updatedAt,
  String? ipAddress,
  String? userAgent,
  required String userId,
  String? impersonatedBy,
  String? activeOrganizationId,
  /// Present when Better Auth [`organization`](https://www.better-auth.com/docs/plugins/organization)
  /// is configured with `teams.enabled`.
  String? activeTeamId,

  /// Server-defined custom fields ([`additionalFields`](https://www.better-auth.com/docs/concepts/database#extending-core-schema))
  /// that aren't part of the static [Session] shape. Populated from unmapped
  /// JSON keys by [Session.fromJson]; never serialized back out. Read via the
  /// `field` extension, e.g. `session.field<String>('theme')`.
  @JsonKey(readValue: _readSessionAdditionalFields, includeToJson: false)
  @Default(<String, dynamic>{})
  Map<String, dynamic> additionalFields,
}) = _Session;