TM-SGNL-iOS/SignalServiceKit/ZkParams/CallLinkAuthCredential.swift
TeleMessage developers dde0620daf initial commit
2025-05-03 12:28:28 -07:00

35 lines
1.1 KiB
Swift

//
// Copyright 2024 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
//
import Foundation
public import LibSignalClient
public struct CallLinkAuthCredential {
private let localAci: Aci
private let redemptionTime: UInt64
private let serverParams: GenericServerPublicParams
private let authCredential: LibSignalClient.CallLinkAuthCredential
init(
localAci: Aci,
redemptionTime: UInt64,
serverParams: GenericServerPublicParams,
authCredential: LibSignalClient.CallLinkAuthCredential
) {
self.localAci = localAci
self.redemptionTime = redemptionTime
self.serverParams = serverParams
self.authCredential = authCredential
}
public func present(callLinkParams: CallLinkSecretParams) -> CallLinkAuthCredentialPresentation {
return self.authCredential.present(
userId: self.localAci,
redemptionTime: Date(timeIntervalSince1970: TimeInterval(self.redemptionTime)),
serverParams: self.serverParams,
callLinkParams: callLinkParams
)
}
}