/** Core */
import { CoreComponent } from "cmf.core/src/core";
import Cmf from "cmf.lbos";
/** Angular */
import * as ng from "@angular/core";
/**
* Generic table - Attachment Type - name
*/
export declare const CONTENT_TYPE_GENERIC_TABLE: string;
/**
* Radio item
*/
export interface RadioItem {
type: AttachmentType;
text: string;
}
/**
* Supported Attachment types
*/
export declare enum AttachmentType {
File = 0,
URL = 1
}
/**
* @whatItDoes
*
* This component will allow the user to upload a file or select an URL
*
* @howToUse
*
* This component should only be used within the Attachments Wizard
*
*
* ### Inputs:
* * `File` : **preSelectedAttachment** - An optional pre selected File
* * `string[]` : **supportedFileExtensions** - String array with list of supported file extensions
* ### Outputs:
*
* ### Example
*
*
*
*
*
*/
export declare class StepAttachments extends CoreComponent implements ng.OnChanges {
private _elementRef;
/**
* Input selector to get the reference of this native element to be clicked from the button
*/
private _importFileSelector;
/**
* Pre-selected attachment file, if filled wizard on load will
* automatically fill the file field with the preselected one
*/
preSelectedAttachment: File;
/**
* String [] with list of supported file extensions
*/
supportedFileExtensions: string[];
/**
* String with list of supported file extensions
*/
supportedFileExtensionsForAccept: string;
/**
* Radio Items
*/
_radioItems: Array;
/**
* Uploaded file name set directly from the uploaded file
*/
fileName: string;
/**
* Url name
*/
url: string;
/**
* Selected type from the Lookup AttachmentType
*/
lookupType: string;
/**
* Description
*/
description: string;
/**
* Attachment type
*/
attachmentType: AttachmentType;
/**
* File uploaded to the step
*/
file: File;
/**
* data from the attachment type generic table
*/
attachmentTypeData: any[];
/**
* Current type
*/
type: string;
/**
* Entity instance for which the attachment will be set
*/
instance: Cmf.Foundation.BusinessObjects.Entity;
/**
* Constructor
*
* @param viewContainerRef the reference to the component view container
*/
constructor(viewContainerRef: ng.ViewContainerRef, _elementRef: ng.ElementRef);
/**
* On Browser event to initiate browser file picker through the hidden input selector
* @param event
*/
onBrowseFile(event: any): void;
/**
* Load file when selected in the file explorer
* @param event any
*/
loadFile(event: any): void;
/**
* Update relevant action fields and inputs based on the new action
*
* @param shape action new action
*/
onShapeChange(shape: RadioItem): void;
ngOnChanges(changes: any): void;
onTypeChange(type: any): void;
}