package repository

import "github.com/tech/sendico/pkg/db/repository/builder"

type Sort int8

const (
	Asc  Sort = 1
	Desc Sort = -1
)

type Key struct {
	Field string
	Sort  Sort      // 1 or -1. 0 means “use Type”.
	Type  IndexType // optional: "text", "2dsphere", ...
}

type Definition struct {
	Keys          []Key         // mandatory, at least one element
	Unique        bool          // unique constraint?
	Sparse        bool          // sparse?
	TTL           *int32        // seconds; nil means “no TTL”
	Name          string        // optional explicit name
	PartialFilter builder.Query // optional: partialFilterExpression for conditional indexes
}
