// Code generated by pkg/commands/internal/migrate/cloner/cloner.go. DO NOT EDIT.

package versiontwo

type FormatterSettings struct {
	Gci       GciSettings       `yaml:"gci,omitempty" toml:"gci,multiline,omitempty"`
	GoFmt     GoFmtSettings     `yaml:"gofmt,omitempty" toml:"gofmt,multiline,omitempty"`
	GoFumpt   GoFumptSettings   `yaml:"gofumpt,omitempty" toml:"gofumpt,multiline,omitempty"`
	GoImports GoImportsSettings `yaml:"goimports,omitempty" toml:"goimports,multiline,omitempty"`
	GoLines   GoLinesSettings   `yaml:"golines,omitempty" toml:"golines,multiline,omitempty"`
}

type GciSettings struct {
	Sections         []string `yaml:"sections,omitempty" toml:"sections,multiline,omitempty"`
	NoInlineComments *bool    `yaml:"no-inline-comments,omitempty" toml:"no-inline-comments,multiline,omitempty"`
	NoPrefixComments *bool    `yaml:"no-prefix-comments,omitempty" toml:"no-prefix-comments,multiline,omitempty"`
	CustomOrder      *bool    `yaml:"custom-order,omitempty" toml:"custom-order,multiline,omitempty"`
	NoLexOrder       *bool    `yaml:"no-lex-order,omitempty" toml:"no-lex-order,multiline,omitempty"`
}

type GoFmtSettings struct {
	Simplify     *bool              `yaml:"simplify,omitempty" toml:"simplify,multiline,omitempty"`
	RewriteRules []GoFmtRewriteRule `yaml:"rewrite-rules,omitempty" toml:"rewrite-rules,multiline,omitempty"`
}

type GoFmtRewriteRule struct {
	Pattern     *string `yaml:"pattern,omitempty" toml:"pattern,multiline,omitempty"`
	Replacement *string `yaml:"replacement,omitempty" toml:"replacement,multiline,omitempty"`
}

type GoFumptSettings struct {
	ModulePath *string `yaml:"module-path,omitempty" toml:"module-path,multiline,omitempty"`
	ExtraRules *bool   `yaml:"extra-rules,omitempty" toml:"extra-rules,multiline,omitempty"`

	LangVersion *string `yaml:"-,omitempty" toml:"-,multiline,omitempty"`
}

type GoImportsSettings struct {
	LocalPrefixes []string `yaml:"local-prefixes,omitempty" toml:"local-prefixes,multiline,omitempty"`
}

type GoLinesSettings struct {
	MaxLen          *int  `yaml:"max-len,omitempty" toml:"max-len,multiline,omitempty"`
	TabLen          *int  `yaml:"tab-len,omitempty" toml:"tab-len,multiline,omitempty"`
	ShortenComments *bool `yaml:"shorten-comments,omitempty" toml:"shorten-comments,multiline,omitempty"`
	ReformatTags    *bool `yaml:"reformat-tags,omitempty" toml:"reformat-tags,multiline,omitempty"`
	ChainSplitDots  *bool `yaml:"chain-split-dots,omitempty" toml:"chain-split-dots,multiline,omitempty"`
}
