import { CloneOptions, FormField, HtmlComponent, InitModelOf, LoadingSupport, LogicalGrid, LogicalGridLayout, LogicalGridLayoutConfig, LookupCall, LookupCallOrModel, LookupResult, LookupRow, ObjectOrChildModel, ObjectOrModel, PropertyChangeEvent, RadioButton, RadioButtonGroupEventMap, RadioButtonGroupModel, Status, ValueField } from '../../../index';
export declare class RadioButtonGroup extends ValueField implements RadioButtonGroupModel {
model: RadioButtonGroupModel;
eventMap: RadioButtonGroupEventMap;
self: RadioButtonGroup;
layoutConfig: LogicalGridLayoutConfig;
fields: FormField[];
radioButtons: RadioButton[];
gridColumnCount: number;
selectedButton: RadioButton;
lookupStatus: Status;
lookupCall: LookupCall;
htmlBody: HtmlComponent;
$body: JQuery;
protected _lookupExecuted: boolean;
protected _selectButtonLocked: boolean;
protected _lookupInProgress: boolean;
protected _currentLookupCall: LookupCall;
protected _buttonPropertyChangeHandler: (event: PropertyChangeEvent>) => void;
constructor();
static DEFAULT_GRID_COLUMN_COUNT: number;
static ErrorCode: {
readonly NO_DATA: 1;
};
protected _init(model: InitModelOf): void;
protected _initValue(value: TValue): void;
protected _initKeyStrokeContext(): void;
protected _initButtons(): void;
protected _initButton(button: RadioButton): void;
protected _render(): void;
protected _renderProperties(): void;
protected _createBodyLayout(): LogicalGridLayout;
protected _setLogicalGrid(logicalGrid: LogicalGrid | string): void;
invalidateLogicalGrid(invalidateLayout?: boolean): void;
setLayoutConfig(layoutConfig: ObjectOrModel): void;
protected _setLayoutConfig(layoutConfig: ObjectOrModel): void;
protected _renderLayoutConfig(): void;
isClearable(): boolean;
getFields(): FormField[];
get$Focusable(): JQuery;
setFields(fields: ObjectOrChildModel[]): void;
protected _setFields(fields: FormField[]): void;
protected _renderFields(): void;
protected _renderEnabled(): void;
/**
* Set the selected (or first if none is selected) to tabbable
*/
protected _provideTabIndex(): void;
setGridColumnCount(gridColumnCount: number): void;
protected _setGridColumnCount(gridColumnCount: number): boolean;
protected _calcDefaultGridColumnCount(): number;
getButtonForRadioValue(radioValue: TValue): RadioButton;
/**
* Search and then select the button with the corresponding radioValue
*/
protected _validateValue(value: TValue): TValue;
protected _valueChanged(): void;
protected _formatValue(value: TValue): string | JQuery.Promise;
selectFirstButton(): void;
selectLastButton(): void;
selectButtonByIndex(index: number): void;
selectButton(radioButton: RadioButton): void;
getTabbableButton(): RadioButton;
insertButton(radioButton: RadioButton): void;
protected _onButtonPropertyChange(event: PropertyChangeEvent>): void;
setLookupCall(lookupCall: LookupCallOrModel): void;
protected _setLookupCall(lookupCall: LookupCallOrModel): void;
/**
* @returns true if a lookup call execution has been scheduled now. false otherwise.
*/
protected _ensureLookupCallExecuted(): boolean;
protected _createLoadingSupport(): LoadingSupport;
protected _lookupByAll(): JQuery.Promise>;
/**
* A wrapper function around lookup calls used to set the _lookupInProgress flag, and display the state in the UI.
*/
protected _executeLookup(lookupCall: LookupCall, abortExisting: boolean): JQuery.Promise>;
protected _lookupByAllDone(result: LookupResult): void;
protected _populateRadioButtonGroup(result: LookupResult): void;
protected _clearLookupStatus(): void;
setLookupStatus(lookupStatus: Status): void;
protected _errorStatus(): Status;
protected _createLookupRowRadioButton(lookupRow: LookupRow): RadioButton;
clone(model: RadioButtonGroupModel, options?: CloneOptions): this;
}
//# sourceMappingURL=RadioButtonGroup.d.ts.map