import { IManagementClientConfig } from '../../config'; import { Identifiers } from '../../models'; import { LanguageVariantResponses } from '../../responses'; import { ManagementQueryService } from '../../services'; import { BaseQuery } from '../base-query'; export class ViewLanguageVariantQuery extends BaseQuery { private fetchPublishedVersion: boolean = false; constructor( protected config: IManagementClientConfig, protected queryService: ManagementQueryService, public contentItemIdentifier: Identifiers.ContentItemIdentifier, public languageIdentifier: Identifiers.LanguageIdentifier ) { super(config, queryService); } toPromise(): Promise { return this.queryService.viewLanguageVariantAsync(this.getUrl(), this.queryConfig); } published(): this { this.fetchPublishedVersion = true; return this; } protected getAction(): string { return this.apiEndpoints.viewLanguageVariant( this.contentItemIdentifier, this.languageIdentifier, this.fetchPublishedVersion ); } }