import { ElementRef, Injector, OnInit, TemplateRef } from '@angular/core';
import { CoreBaseComponent } from '../common/base.component';
import { SummaryItem } from './summary-item';
import * as i0 from "@angular/core";
/**
 *
 * @smeDoc {@label Summary @id sme-summary}
 *
 * @overview
 * @file {@filepath ./examples/summary-overview.md}
 *
 * @example {@label Basic Usage @id basic-usage}
 * @file {@filename component.ts @filepath ./examples/summary-example.component.ts}
 * @file {@filename component.html @filepath ./examples/summary-example.component.html}
 *
 */
export declare class SummaryComponent extends CoreBaseComponent implements OnInit {
    /**
     * Header for the summary control.
     */
    header: string;
    /**
     * Icon url for the summary control icon.
     */
    iconUrl: string;
    /**
     * Icon class for the summary control icon.
     */
    iconClass: string;
    /**
     * Key-value items to be displayed in the summary control.
     */
    items: SummaryItem[];
    /**
     * The template reference for displaying read-only value.
     */
    readonlyTemplate: TemplateRef<ElementRef>;
    /**
     * The template reference for displaying action link.
     */
    actionLinkTemplate: TemplateRef<ElementRef>;
    /**
     * The template reference for displaying internal link.
     */
    internalLinkTemplate: TemplateRef<ElementRef>;
    /**
     * The template reference for displaying external link.
     */
    externalLinkTemplate: TemplateRef<ElementRef>;
    constructor(injector: Injector);
    /**
     * Stringify the value for the item.
     * @param value The value to stringify.
     */
    stringifyValue(value: any): string;
    /**
     * Get the template for the item.
     * @param item The summary item.
     * @returns The template for the item.
     */
    getTemplate(item: SummaryItem): TemplateRef<ElementRef>;
    /**
     * Get the description for the internal link.
     * @param item The summary item.
     * @returns The description for the internal link.
     */
    getInternalLinkDescription(item: SummaryItem): string;
    /**
     * Get the description for the external link.
     * @param item The summary item.
     * @returns The description for the external link.
     */
    getExternalLinkDescription(item: SummaryItem): string;
    /**
     * Creates the idBag used by this component to store unique element ids.
     * id values will be assigned be the @see BaseComponent super class.
     */
    protected createIdBag(): MsftSme.StringMap<string>;
    protected get logSourceName(): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<SummaryComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SummaryComponent, "sme-summary", never, { "header": "header"; "iconUrl": "iconUrl"; "iconClass": "iconClass"; "items": "items"; }, {}, never, never, false, never>;
}
