/* tslint:disable */
/**
 * This is an autogenerated file created by the Stencil compiler.
 * It contains typing information for all components that exist in this project.
 */


import { HTMLStencilElement, JSXBase } from './stencil.core';
import {
  NumberBoard,
} from './models/number-board';

export namespace Components {
  interface BingoBoard {
    'bet': number;
    'clean': () => Promise<void>;
    'hide': boolean;
    'king': boolean;
    'manual': boolean;
    'miniBoard': boolean;
    'moduleId': string;
    'newBallotNumber': (ballot: number) => Promise<void>;
    /**
    * @param position
    */
    'newNumber': (position: number) => Promise<void>;
    'noNumber': () => Promise<void>;
    'numbers': Array<number>;
    'numbersBoard2': Array<NumberBoard>;
    'oneValidate': (pattern: number) => Promise<{ pattern: number; hasBingo: boolean; }>;
    'posLast': number;
    'probability': number;
    'ranking': number;
    'register': boolean;
    'secProbability': number;
    'select': boolean;
    'validate': (pattern: number[]) => Promise<{ element: HTMLElement; pattern: any; hasBingo: boolean; moduleId: string; }>;
    'validateFigure': (pattern: any[]) => Promise<{ element: HTMLElement; pattern: any; hasBingo: boolean; moduleId: string; }>;
    'validated': boolean;
  }
}

declare global {


  interface HTMLBingoBoardElement extends Components.BingoBoard, HTMLStencilElement {}
  var HTMLBingoBoardElement: {
    prototype: HTMLBingoBoardElement;
    new (): HTMLBingoBoardElement;
  };
  interface HTMLElementTagNameMap {
    'bingo-board': HTMLBingoBoardElement;
  }
}

declare namespace LocalJSX {
  interface BingoBoard {
    'bet'?: number;
    'hide'?: boolean;
    'king'?: boolean;
    'manual'?: boolean;
    'miniBoard'?: boolean;
    'moduleId'?: string;
    'numbers'?: Array<number>;
    'numbersBoard2'?: Array<NumberBoard>;
    'posLast'?: number;
    'probability'?: number;
    'ranking'?: number;
    'register'?: boolean;
    'secProbability'?: number;
    'select'?: boolean;
    'validated'?: boolean;
  }

  interface IntrinsicElements {
    'bingo-board': BingoBoard;
  }
}

export { LocalJSX as JSX };


declare module "@stencil/core" {
  export namespace JSX {
    interface IntrinsicElements {
      'bingo-board': LocalJSX.BingoBoard & JSXBase.HTMLAttributes<HTMLBingoBoardElement>;
    }
  }
}


