/**
 * @packageDocumentation
 * @module business/image/push-control
 */
import { SelectFilterOption, TabChangeEvent } from '@alauda/ui';
import { AfterViewInit, ElementRef, Renderer2 } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { Observable, Subject } from 'rxjs';
import { ExportOption, ImageRegistryOption, ImageRepositoryOption, ImageSelectorDataContext } from '../../data-context';
import { ImageIntl } from '../../image.intl';
export declare class ImagePushCreateComponent implements AfterViewInit {
    intl: ImageIntl;
    private readonly el;
    private readonly renderer2;
    private readonly _tabGroup;
    private readonly _selectElementRef;
    form: FormGroup;
    private _context;
    private readonly context$$;
    get context(): ImageSelectorDataContext;
    set context(context: ImageSelectorDataContext);
    get tags(): import("@angular/forms").FormArray;
    get selectedImageRegistry(): ImageRegistryOption;
    registryChange$$: Subject<TabChangeEvent>;
    selectedRegistry$: Observable<string>;
    imageRegistries$: Observable<string[]>;
    imageRepositories$: Observable<{
        data: ImageRegistryOption[];
        loading: boolean;
        error: unknown;
    }>;
    tagSuggestions$: Observable<ExportOption[]>;
    activeTab: number;
    constructor(intl: ImageIntl, el: ElementRef, renderer2: Renderer2);
    ngAfterViewInit(): void;
    registryTracker(registry: Partial<ImageRegistryOption>): string;
    getImage: (name: string) => string;
    getImageSuggestions(registry: ImageRegistryOption): string[];
    filterFn(filter: string, { value }: SelectFilterOption<ImageRepositoryOption>): boolean;
    onOptionsShow(): void;
    getTabLabel: (name: string) => string;
}
