package service

import (
	"git.gocasts.ir/ebhomengo/niki/types"
	"time"
)

type GetCampaignResponse struct {
	ID types.ID `json:"campaign_id"`
}

type CreateCampaignRequest struct {
	Title       string     `json:"title"`
	Description string     `json:"description"`
	Link        string     `json:"link"`
	Slogan      string     `json:"slogan" validate:"max=255"`
	GoalAmount  float64    `json:"goal_amount"`
	Status      string     `json:"status,omitempty"`
	DeadlineAt  *time.Time `json:"deadline_at,omitempty"`
	AdminID     types.ID   `json:"admin_id" validate:"required"`
}

type CompletedCampaignResponse struct {
	TotalChecked  uint64 `json:"total_checked"`
	TotalFinished uint64 `json:"total_finished"`
}

type FilterRequest struct {
	Limit uint32 `json:"total_checked"`
}
