package validation

type Create struct {
	Name          string  `json:"name" validate:"required_strict,min=3,max=50"`
	Alias         string  `json:"alias" validate:"required_strict,max=5"`
	Owner         *string `json:"owner,omitempty" validate:"omitempty,max=50"`
	AccountNumber string  `json:"account_number" validate:"required_strict,max=50"`
}

type Update struct {
	Name          *string `json:"name,omitempty" validate:"omitempty,max=50"`
	Alias         *string `json:"alias,omitempty" validate:"omitempty,max=5"`
	Owner         *string `json:"owner,omitempty" validate:"omitempty,max=50"`
	AccountNumber *string `json:"account_number,omitempty" validate:"omitempty,max=50"`
}

type Query struct {
	Page   int    `query:"page" validate:"omitempty,number,min=1"`
	Limit  int    `query:"limit" validate:"omitempty,number,min=1,max=100"`
	Search string `query:"search" validate:"omitempty,max=50"`
}
