package otherperson

import "context"

type Repository interface {
	Upsert(ctx context.Context, p *OtherPerson) error
	Create(ctx context.Context, p *OtherPerson) error
	Update(ctx context.Context, p *OtherPerson) error
	Delete(ctx context.Context, id, deletedBy []byte) error
	GetByID(ctx context.Context, id []byte) (*OtherPerson, error)
	FindByIdentity(ctx context.Context, name, phone, email string) (*OtherPerson, error)
	Search(ctx context.Context, q string, limit, offset int) ([]OtherPerson, int64, error)
}
