package logic import ( "context" "git.dragse.it/anthrove/e621-to-graph/pkg/e621/model" ) type GraphConnection interface { Connect(ctx context.Context, endpoint string, username string, password string) error UploadUser(ctx context.Context, user model.E621User) error UploadSource(ctx context.Context, SourceURL string) error UploadPost(ctx context.Context, e621ID int64) error UploadTag(ctx context.Context, name string, tagType string) error EstablishPostToTagLink(ctx context.Context, e621PostID int64, e621Tag string) error EstablishPostToSourceLink(ctx context.Context, e621PostID int64, sourceURL string) error EstablishUserToPostLink(ctx context.Context, e621PostID int64, e621UserID int64) error CheckUserToPostLink(ctx context.Context, e621PostID int64, e621UserID int64) (bool, error) }