@rytass/cms-base-nestjs-module
Version:
Rytass Content Management System NestJS Base Module
50 lines (49 loc) • 5.31 kB
TypeScript
import { OnApplicationBootstrap } from '@nestjs/common';
import { DataSource, Repository } from 'typeorm';
import { BaseArticleEntity } from '../models/base-article.entity';
import { MultiLanguageArticleCreateDto, SingleArticleCreateDto } from '../typings/article-create.dto';
import { BaseArticleVersionEntity } from '../models/base-article-version.entity';
import { BaseArticleVersionContentEntity } from '../models/base-article-version-content.entity';
import { ArticleFindAllDto } from '../typings/article-find-all.dto';
import { Language } from '../typings/language';
import { ArticleBaseDto, SingleArticleBaseDto } from '../typings/article-base.dto';
import { BaseCategoryEntity } from '../models/base-category.entity';
import { ArticleSignatureService } from './article-signature.service';
import { ArticleFindByIdBaseDto } from '../typings/article-find-by-id.dto';
import { ArticleCollectionDto, SingleArticleCollectionDto } from '../typings/article-collection.dto';
export declare class ArticleBaseService<ArticleEntity extends BaseArticleEntity = BaseArticleEntity, ArticleVersionEntity extends BaseArticleVersionEntity = BaseArticleVersionEntity, ArticleVersionContentEntity extends BaseArticleVersionContentEntity = BaseArticleVersionContentEntity> implements OnApplicationBootstrap {
private readonly baseArticleRepo;
private readonly baseArticleVersionRepo;
private readonly baseArticleVersionContentRepo;
private readonly baseCategoryRepo;
private readonly multipleLanguageMode;
private readonly fullTextSearchMode;
private readonly signatureMode;
private readonly articleSignatureService;
private readonly draftMode;
private readonly dataSource;
constructor(baseArticleRepo: Repository<BaseArticleEntity>, baseArticleVersionRepo: Repository<BaseArticleVersionEntity>, baseArticleVersionContentRepo: Repository<BaseArticleVersionContentEntity>, baseCategoryRepo: Repository<BaseCategoryEntity>, multipleLanguageMode: boolean, fullTextSearchMode: boolean, signatureMode: boolean, articleSignatureService: ArticleSignatureService, draftMode: boolean, dataSource: DataSource);
private readonly logger;
private getDefaultQueryBuilder;
private bindSearchTokens;
onApplicationBootstrap(): Promise<void>;
findById<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(id: string, options?: ArticleFindByIdBaseDto): Promise<ArticleBaseDto<A, AV, AVC>>;
findById<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(id: string, options?: ArticleFindByIdBaseDto & {
language: Language;
}): Promise<SingleArticleBaseDto<A, AV, AVC>>;
private getFindAllQueryBuilder;
findCollection<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(options?: ArticleFindAllDto & {
language: Language;
}): Promise<SingleArticleCollectionDto<A, AV, AVC>>;
findCollection<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(options?: ArticleFindAllDto): Promise<ArticleCollectionDto<A, AV, AVC>>;
findAll<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(options?: ArticleFindAllDto & {
language: Language;
}): Promise<SingleArticleBaseDto<A, AV, AVC>[]>;
findAll<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(options?: ArticleFindAllDto): Promise<ArticleBaseDto<A, AV, AVC>[]>;
archive(id: string): Promise<void>;
release<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(id: string, releasedAt?: Date): Promise<ArticleBaseDto<A, AV, AVC>>;
addVersion<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(id: string, options: Omit<SingleArticleCreateDto<A, AV, AVC>, 'version'>): Promise<A>;
addVersion<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(id: string, options: Omit<MultiLanguageArticleCreateDto<A, AV, AVC>, 'version'>): Promise<A>;
create<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(options: SingleArticleCreateDto<A, AV, AVC>): Promise<A>;
create<A extends ArticleEntity = ArticleEntity, AV extends ArticleVersionEntity = ArticleVersionEntity, AVC extends ArticleVersionContentEntity = ArticleVersionContentEntity>(options: MultiLanguageArticleCreateDto<A, AV, AVC>): Promise<A>;
}