package com.social.media.application.service;

import com.social.media.dto.PostDto;
import com.social.media.domain.shared.PageResponse;

public interface PostApplicationService {
    
    PageResponse<PostDto> getAllPosts(int page, int size);
    
    PostDto getPostById(String id);
    
    PostDto createPost(PostDto postDto);
    
    PostDto updatePost(String id, PostDto postDto);
    
    void deletePost(String id);
    
    PageResponse<PostDto> getPostsByPlatform(String platform, int page, int size);
    
    PageResponse<PostDto> getPostsByStatus(String status, int page, int size);
}