import { type OnChanges, type Signal, type Type } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { type TuiRawLoaderContent } from '@taiga-ui/addon-doc/types';
import { type TuiContext } from '@taiga-ui/cdk/types';
import { type PolymorpheusContent } from '@taiga-ui/polymorpheus';
import * as i0 from "@angular/core";
import * as i1 from "@ng-web-apis/intersection-observer";
export declare class TuiDocExample implements OnChanges {
    private readonly doc;
    private readonly clipboard;
    private readonly alerts;
    private readonly location;
    private readonly copyTexts;
    private readonly doneWord;
    private readonly processContent;
    private readonly rawLoader$$;
    protected readonly fullscreenEnabled: boolean;
    protected readonly icons: import("@taiga-ui/addon-doc/tokens").TuiDocIcons;
    protected readonly options: import("./example.options").TuiDocExampleOptions;
    protected readonly defaultTab: Signal<string>;
    protected readonly codeEditor: import("@taiga-ui/addon-doc/types").TuiCodeEditor | null;
    protected readonly codeActions: readonly PolymorpheusContent<TuiContext<string>>[];
    protected readonly route: ActivatedRoute;
    protected activeItemIndex: number;
    protected fullscreen: boolean;
    protected readonly copy: Signal<string>;
    protected readonly loading: import("@angular/core").WritableSignal<boolean>;
    protected readonly resolvedId: Signal<string>;
    protected readonly processor: Signal<Record<string, string>>;
    protected readonly lazyComponent: import("@angular/core").ResourceRef<Type<unknown> | null | undefined>;
    readonly heading: import("@angular/core").InputSignal<string>;
    readonly id: import("@angular/core").InputSignal<string>;
    readonly description: import("@angular/core").InputSignal<PolymorpheusContent>;
    readonly fullsize: import("@angular/core").InputSignal<boolean>;
    readonly component: import("@angular/core").InputSignal<Promise<Type<unknown> | {
        default: Type<unknown>;
    }> | undefined>;
    readonly content: import("@angular/core").InputSignal<Record<string, TuiRawLoaderContent>>;
    readonly preview: import("@angular/core").InputSignal<boolean>;
    ngOnChanges(): void;
    protected readonly visible: (files: Record<string, string>) => boolean;
    protected getTabTitle(fileName: string): PolymorpheusContent;
    protected copyExampleLink(target: EventTarget | null): void;
    protected edit(files: Record<string, string>): void;
    protected onIntersection(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TuiDocExample, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TuiDocExample, "tui-doc-example", never, { "heading": { "alias": "heading"; "required": false; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "description": { "alias": "description"; "required": false; "isSignal": true; }; "fullsize": { "alias": "fullsize"; "required": false; "isSignal": true; }; "component": { "alias": "component"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; "preview": { "alias": "preview"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.WaIntersectionObserverDirective; inputs: {}; outputs: {}; }, { directive: typeof i1.WaIntersectionObservee; inputs: {}; outputs: { "waIntersectionObservee": "waIntersectionObservee"; }; }]>;
}
