import * as i0 from '@angular/core'; import { OnInit } from '@angular/core'; import { HsLanguageService } from 'hslayers-ng/services/language'; import * as i4 from 'hslayers-ng/common/panels'; import { HsPanelBaseComponent } from 'hslayers-ng/common/panels'; import { MapComposition, CompoData } from 'hslayers-ng/types'; import { HsConfig } from 'hslayers-ng/config'; import { HsEventBusService } from 'hslayers-ng/services/event-bus'; import { HsLayoutService } from 'hslayers-ng/services/layout'; import { HsLogService } from 'hslayers-ng/services/log'; import { HsMapService } from 'hslayers-ng/services/map'; import { HsSaveMapService } from 'hslayers-ng/services/save-map'; import { HsShareUrlService, HsShareThumbnailService } from 'hslayers-ng/services/share'; import { HsToastService } from 'hslayers-ng/common/toast'; import { HslayersService } from 'hslayers-ng/core'; import * as i2 from '@angular/common'; import * as i3 from '@angular/forms'; import * as i5 from '@ngx-translate/core'; declare class HsShareService { hsConfig: HsConfig; hsShareUrlService: HsShareUrlService; hsMapService: HsMapService; hsLayoutService: HsLayoutService; hsSaveMapService: HsSaveMapService; hsEventBusService: HsEventBusService; hsLanguageService: HsLanguageService; hsToastService: HsToastService; hsLogService: HsLogService; private httpClient; hsShareThumbnailService: HsShareThumbnailService; pureMapUrl: string; permalinkUrl: string; shareLink: string; embedCode: string; shareUrlValid: boolean; title: string; abstract: string; shareUrl: string; thumbnail: string; constructor(); /** * Get correct Embed code with correct share link type * @returns embeddable iframe HTML code */ getEmbedCode(): string; /** * @returns Share URL */ getShareUrl(): string; /** * @returns Encoded share URL */ getShareUrlEncoded(): string; /** * Make current share url invalid for social sharing */ invalidateShareUrl(): void; /** * Share map on social network * @param provider - Social share provider (twitter/facebook) * @param newShare - If new share record on server should be created */ shareOnSocial(newShare: boolean): Promise; openInShareApi(title: any, abstract: any, url: any): void; /** * Generate thumbnail of current map and save it to variable and selected element * @param $element - DOM img element where to place the thumbnail * @param newRender - Force synchronous rendering again or use last canvas state */ generateThumbnail($element: any, newRender: boolean): void; rendered($element: any, newRender?: any): void; private isCanvasTainted; /** * Save composition to Status manager's service * @param compositionJson - Json with composition's definition * @param endpoint - Endpoint's description * @param compoData - Additional data for composition * @param saveAsNew - Save as new composition * @returns Promise result of POST */ save(compositionJson: MapComposition, compoData: CompoData, saveAsNew: boolean): Promise; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } declare class HsShareComponent extends HsPanelBaseComponent implements OnInit { hsShareService: HsShareService; hsShareUrlService: HsShareUrlService; hsCore: HslayersService; hsLanguageService: HsLanguageService; private hsConfig; new_share: boolean; name: string; app: string; /** * Create Iframe tag for embedded map * @returns Iframe tag with src attribute on embed Url and default width and height (1000x700px) */ updateEmbedCode(): string; /** * Select right share Url based on shareLink property (either Permalink Url or PureMap url) * @returns Right share Url */ getShareUrl(): string; /** * Set share Url state invalid */ invalidateShareUrl(): void; /** * Create share post on selected social network */ shareOnSocial(): void; ngOnInit(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class HsShareModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } export { HsShareComponent, HsShareModule, HsShareService };