copyWith method
Returns a copy with the supplied fields replaced.
Use clearRefreshToken / clearExpiresAt to explicitly null those
fields (regular null arguments are treated as "no change").
Implementation
Token copyWith({
String? accessToken,
String? refreshToken,
DateTime? expiresAt,
List<String>? scopes,
Map<String, dynamic>? metadata,
bool clearRefreshToken = false,
bool clearExpiresAt = false,
}) {
return Token(
accessToken: accessToken ?? this.accessToken,
refreshToken:
clearRefreshToken ? null : (refreshToken ?? this.refreshToken),
expiresAt: clearExpiresAt ? null : (expiresAt ?? this.expiresAt),
scopes: scopes ?? this.scopes,
metadata: metadata ?? this.metadata,
);
}