package io.delphiplatform.api.v3.rdb.entity.tiktok.video;

import org.springframework.beans.factory.annotation.Value;

import java.math.BigDecimal;
import java.time.LocalDate;

public interface TikTokTopVideoLifetimeProjection {

    @Value("#{target.video_id}")
    String getVideoId();

    @Value("#{target.video_posted_date}")
    LocalDate getVideoPostedDate();

    @Value("#{target.video_username}")
    String getVideoUsername();

    @Value("#{target.view_growth_7_days}")
    Integer getViewGrowth7Days();

    @Value("#{target.view_growth_28_days}")
    Integer getViewGrowth28Days();

    @Value("#{target.view_growth_7_days_percent}")
    BigDecimal getViewGrowth7DaysPercent();

    @Value("#{target.view_growth_28_days_percent}")
    BigDecimal getViewGrowth28DaysPercent();

    @Value("#{target.views}")
    Integer getViews();

    @Value("#{target.likes}")
    Integer getLikes();

    @Value("#{target.comments}")
    Integer getComments();

    @Value("#{target.position}")
    Integer getPosition();

}
