package store

import (
	"context"

	"finance-portal/model"
)

type InvoiceRewriteStore interface {
	Save(_ context.Context, invoice *model.InvoiceRewrite) (err error)
	UpdateContentByID(_ context.Context, id int, content string) (err error)
	GetByID(_ context.Context, id int) (record model.InvoiceRewrite, err error)

	ListByCloudCondition(_ context.Context, startDate string) ([]*model.InvoiceRewrite, error)

	SaveInvoiceContentBytes(_ context.Context, invoice model.InvoiceRewriteContentByte) (err error)
	GetInvoiceContentBytesByInvoiceID(_ context.Context, invoiceID int) (record model.InvoiceRewriteContentByte, err error)
	UpdateInvoiceContentBytes(_ context.Context, invoice model.InvoiceRewriteContentByte) (err error)
}
