namespace OF_DL.Widevine;

internal class Session(byte[] sessionId, dynamic initData, CDMDevice device, bool offline)
{
    public byte[] SessionId { get; set; } = sessionId;
    public dynamic InitData { get; set; } = initData;
    public bool Offline { get; set; } = offline;
    public CDMDevice Device { get; set; } = device;
    public byte[] SessionKey { get; set; } = [];
    public DerivedKeys DerivedKeys { get; set; } = new();
    public byte[] LicenseRequest { get; set; } = [];
    public SignedLicense License { get; set; } = new();
    public SignedDeviceCertificate ServiceCertificate { get; set; } = new();
    public bool PrivacyMode { get; set; }
    public List<ContentKey> ContentKeys { get; set; } = [];
}
