using Tiku.Domain.Tenancy; namespace Tiku.Application.Auth; public sealed record SmsProviderSendRequest( Guid TenantId, string Phone, SmsPurpose Purpose, string Code, string? IpAddress, string? UserAgent); public sealed record SmsProviderSendResult( string Provider, string Status, string? MessageId = null); public interface ISmsProvider { Task SendAsync( SmsProviderSendRequest request, CancellationToken cancellationToken = default); }