package reaper

type Person struct {
	FirstName  string  `xml:"first-name"`
	MiddleName *string `xml:"middle-name"`
	LastName   *string `xml:"last-name"`
}

type Sequences struct {
	Name   *string `xml:"name,attr"`
	Number *int    `xml:"number,attr"`
}

type FB2Read struct {
	Title       string    `xml:"title-info>book-title"`
	Genres      []string  `xml:"title-info>genre"`
	Authors     []Person  `xml:"title-info>author"`
	Lang        string    `xml:"title-info>lang"`
	SrcLang     *string   `xml:"title-info>src-lang"`
	Translators *[]Person `xml:"title-info>translator"`
	Sequence    Sequences `xml:"title-info>sequence"`
	Year        *int      `xml:"publish-info>year"`
	ISBN        *string   `xml:"publish-info>isbn"`
	Publisher   *string   `xml:"publish-info>publisher"`
	Cover       struct {
		Id *string `xml:"href,attr"`
	} `xml:"title-info>coverpage>image"`
	Annotation struct {
		Html string `xml:",innerxml"`
	} `xml:"title-info>annotation"`
}

type FB2 struct {
	SrcFile      string
	Bookcase     *string
	Title        string
	Genres       []string
	Authors      []Person
	HasCover     bool
	Lang         string
	SrcLang      *string
	Translators  *[]Person
	Sequence     Sequences
	Year         *int
	ISBN         *string
	Publisher    *string
	Annotation   *string
	SymbolsCount int
	Size         uint64
	Hash         *string
}
