import { TDeleteManyInput, TPagedList, TPagedParams, TPost, TPostFilter, TPostInput } from '@cromwell/core'; import { SelectQueryBuilder } from 'typeorm'; import { Post } from '../models/entities/post.entity'; import { Tag } from '../models/entities/tag.entity'; import { BaseRepository } from './base.repository'; export declare class PostRepository extends BaseRepository { constructor(); getPosts(params?: TPagedParams): Promise>; getPostById(id: number): Promise; getPostBySlug(slug: string): Promise; private handleBasePostInput; createPost(createPost: TPostInput, id?: number | null): Promise; updatePost(id: number, updatePost: TPostInput): Promise; deletePost(id: number): Promise; applyPostFilter(qb: SelectQueryBuilder, filterParams?: TPostFilter): SelectQueryBuilder; getFilteredPosts(pagedParams?: TPagedParams, filterParams?: TPostFilter): Promise>; deleteManyFilteredPosts(input: TDeleteManyInput, filterParams?: TPostFilter): Promise; getTagsOfPost(postId: number): Promise; } //# sourceMappingURL=post.repository.d.ts.map