using System;
namespace Abp.Timing.Timezone
{
///
/// Interface for timezone converter
///
public interface ITimeZoneConverter
{
///
/// Converts given date to user's time zone.
/// If timezone setting is not specified, returns given date.
///
/// Base date to convert
/// TenantId of user
/// UserId to convert date for
///
DateTime? Convert(DateTime? date, int? tenantId, long userId);
///
/// Converts given date to tenant's time zone.
/// If timezone setting is not specified, returns given date.
///
/// Base date to convert
/// TenantId to convert date for
///
DateTime? Convert(DateTime? date, int tenantId);
///
/// Converts given date to application's time zone.
/// If timezone setting is not specified, returns given date.
///
/// Base date to convert
///
DateTime? Convert(DateTime? date);
}
}