import { FocusOrigin } from '@angular/cdk/a11y'; import { AfterViewInit, DoCheck, ElementRef, EventEmitter } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { ErrorStateMatcher, KbqBaseFileUploadLocaleConfig, KbqFileUploadLocaleConfig } from '@koobiq/components/core'; import { ProgressSpinnerMode } from '@koobiq/components/progress-spinner'; import { KbqFile, KbqFileItem, KbqFileUploadBase, KbqFileUploadCaptionContext, KbqFileValidatorFn } from './file-upload'; import { KbqFileLoader } from './primitives'; import * as i0 from "@angular/core"; import * as i1 from "./primitives/file-picker"; export declare const KBQ_SINGLE_FILE_UPLOAD_DEFAULT_CONFIGURATION: KbqFileUploadLocaleConfig['single']; export declare class KbqSingleFileUploadComponent extends KbqFileUploadBase implements AfterViewInit, ControlValueAccessor, DoCheck { /** * A value responsible for progress spinner type. * Loading logic depends on selected mode */ progressMode: ProgressSpinnerMode; /** Array of file type specifiers */ accept?: string[]; /** * @deprecated use `FormControl.errors` */ errors: string[]; inputId: string; /** * @deprecated use FormControl for validation */ customValidation?: KbqFileValidatorFn[]; /** An object used to control the error state of the component. */ errorStateMatcher: ErrorStateMatcher; get file(): KbqFileItem | null; set file(currentFile: KbqFileItem | null); /** * Controls whether to display the file size information. * @default true */ showFileSize: boolean; /** * Determines which kind of items the upload component can accept. * @default mixed */ allowed: import("@angular/core").InputSignal<"file" | "folder" | "mixed">; /** * Controls whether to display fullscreen dropzone. * Provide configuration object to enable, or undefined to disable. */ fullScreenDropZone: import("@angular/core").InputSignal | undefined>; /** Optional configuration to override default labels with localized text.*/ readonly localeConfig: import("@angular/core").InputSignal | undefined>; /** Emits an event containing updated file. * public output will be renamed to fileChange in next major release (#DS-3700) */ readonly fileChange: EventEmitter; /** @docs-private */ protected readonly fileLoader: KbqFileLoader | undefined; /** @docs-private */ private readonly hint; /** cvaOnChange function registered via registerOnChange (ControlValueAccessor). * @docs-private */ cvaOnChange: (_: KbqFileItem | null) => void; /** onTouch function registered via registerOnTouch (ControlValueAccessor). * @docs-private */ onTouched: () => void; /** @docs-private */ get input(): ElementRef | undefined; /** @docs-private */ get acceptedFiles(): string; /** @docs-private */ get hasHint(): boolean; /** * Indicates an invalid state based on file errors or `errorState`, * applying a CSS class in HTML for visual feedback. * @docs-private */ get invalid(): boolean; /** @docs-private */ readonly configuration: KbqBaseFileUploadLocaleConfig | null; /** @docs-private */ protected readonly captionContext: import("@angular/core").Signal; private readonly localeId; /** @docs-private */ readonly resolvedLocaleConfig: import("@angular/core").Signal; private readonly focusMonitor; private readonly platformId; constructor(); ngDoCheck(): void; ngAfterViewInit(): void; /** Implemented as part of ControlValueAccessor. * @docs-private */ writeValue(file: File | KbqFileItem | null): void; /** Implemented as part of ControlValueAccessor. * @docs-private */ registerOnChange(fn: any): void; /** Implemented as part of ControlValueAccessor. * @docs-private */ registerOnTouched(fn: any): void; /** * Sets the disabled state of the control. Implemented as a part of ControlValueAccessor. * @param isDisabled Whether the control should be disabled. * @docs-private */ setDisabledState(isDisabled: boolean): void; /** @docs-private */ onFileSelectedViaClick({ target }: Event): void; /** @docs-private */ onFileDropped(files: KbqFile[]): void; /** @docs-private */ deleteItem(event?: MouseEvent, origin?: FocusOrigin): void; private mapToFileItem; private validateFile; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_showFileSize: unknown; }