import type { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
import type { Color, StyleEventDetail } from '../../interface';
/**
 * @part container - The container for the radio mark.
 * @part mark - The checkmark or dot used to indicate the checked state.
 */
export declare class GascoRadio implements ComponentInterface {
  private inputId;
  private nativeInput;
  el: HTMLGascoRadioElement;
  /**
   * If `true`, the radio is selected.
   */
  checked: boolean;
  /**
   * The tabindex of the radio button.
   * @internal
   */
  buttonTabindex: number;
  /**
   * The color to use from your application's color palette.
   * Default options are: `"primary"`, `"secondary"`, `"success"`, `"warning"`.
   */
  color?: Color;
  /**
   * The name of the control, which is submitted with the form data.
   */
  name: string;
  /**
   * If `true`, the radio is selected.
   */
  ischecked: boolean;
  /**
   * If `true`, the user cannot interact with the radio.
   */
  disabled: boolean;
  /**
   * the value of the radio.
   */
  value?: any | null;
  /**
   * Emitted when the styles change.
   * @internal
   */
  gascoStyle: EventEmitter<StyleEventDetail>;
  /**
   * Emitted when the radio button has focus.
   */
  gascoFocus: EventEmitter<void>;
  /**
   * Emitted when the radio button loses focus.
   */
  gascoBlur: EventEmitter<void>;
  /** @internal */
  setFocus(ev: any): Promise<void>;
  /** @internal */
  setButtonTabindex(value: number): Promise<void>;
  connectedCallback(): void;
  componentWillLoad(): void;
  emitStyle(): void;
  private onClick;
  private onFocus;
  private onBlur;
  render(): any;
}
