package interfaces

import (
	"58team_blog/internal/application/commands"
	"58team_blog/internal/application/common"
	"58team_blog/internal/application/queries"
)

type PostsService interface {
	Create(commands.CreatePostsCommand) (*common.PostsResult, error)
	FindByUserId(queries.PostsFindByUserIdQuery) (*queries.PostsFindByUserIdResult, error)
	FindByPostId(queries.PostsFindByPostIdQuery) (*queries.PostsFindByPostIdResult, error)
	FindAllByUserId(queries.PostsFindByUserIdQuery) (*queries.PostsFindAllByUserIdResult, error)
	GetAll() (queries.PostsGetAllResult, error)
	Delete(commands.DeletePostsCommand) error
}
