package types

// StemmerOverrideTokenFilter type.
//
// https://github.com/elastic/elasticsearch-specification/blob/4ca0cc05d3ae3fa06c2cd7be91905b656a474334/specification/_types/analysis/token_filters.ts#L313-L317
type StemmerOverrideTokenFilter struct {
	Rules     []string `json:"rules,omitempty"`
	RulesPath *string  `json:"rules_path,omitempty"`
	Type      string   `json:"type,omitempty"`
	Version   *string  `json:"version,omitempty"`
}

// NewStemmerOverrideTokenFilter returns a StemmerOverrideTokenFilter.
func NewStemmerOverrideTokenFilter() *StemmerOverrideTokenFilter {
	r := &StemmerOverrideTokenFilter{}

	r.Type = "stemmer_override"

	return r
}
