import * as _angular_core from '@angular/core'; import { EventEmitter, SimpleChanges } from '@angular/core'; import * as i4 from '@angular/common'; import * as i5 from '@obliczeniowo/elementary/buttons'; import * as i6 from '@obliczeniowo/elementary/text-pipes'; declare class BowlingPinsComponent { protected styles: { [style: string]: string | number; }; pins: _angular_core.ModelSignal; blocked: boolean[]; size: _angular_core.InputSignal; translations: _angular_core.InputSignal<{ [en: string]: string; }>; displayPoints: _angular_core.InputSignal; displayReverse: _angular_core.InputSignal; displayCancel: _angular_core.InputSignal; disabled?: boolean; changed: EventEmitter; constructor(); counted: number; switch(index: number): void; ngOnChanges(changes: SimpleChanges): void; count(): number; reset(): void; protected reverse(): void; protected clear(): void; protected onKeyUp(event: KeyboardEvent, index: number): void; protected onClicked(index: number): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } interface BowlingRoundScores { first: number; second: number; } interface BowlingRoundPins { first: boolean[]; second: boolean[]; } declare class BowlingRoundComponent { first: BowlingPinsComponent; second: BowlingPinsComponent; current: _angular_core.InputSignal; pins: _angular_core.ModelSignal; translations: _angular_core.InputSignal<{ [en: string]: string; }>; changed: EventEmitter; scores: BowlingRoundScores; reverse(bowling: boolean[]): boolean[]; ngAfterViewInit(): void; onChanged(witch: 'first' | 'second', score: number): void; reset(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } interface ScoreModel { first?: number; second?: number; firstPins?: boolean[]; secondPins?: boolean[]; } declare class RoundsModel { protected _list: ScoreModel[]; protected current: number; set list(list: ScoreModel[]); get list(): ScoreModel[]; counted: number[]; totalScore: number; constructor(); getCurrent(): number; setEmpty(): void; add(score: ScoreModel): void; protected max(): 10 | 11 | 12; protected calculate(): void; protected total(): number; protected count(index: number): number; /** only to use inside of class as helper */ protected sum(index: number): number; /** checking type to calculate */ resultType(index: number): 'Strike' | 'Spare' | 'Open' | undefined; } declare class BowlingScoreComponent { protected scores: RoundsModel; scoring: _angular_core.ModelSignal; editMode: _angular_core.InputSignal; translations: _angular_core.InputSignal<{ [en: string]: string; }>; constructor(); add(round: BowlingRoundComponent): void; reset(round: BowlingRoundComponent): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class BowlingPinsModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { BowlingPinsComponent, BowlingPinsModule, BowlingRoundComponent, BowlingScoreComponent, RoundsModel }; export type { BowlingRoundPins, BowlingRoundScores, ScoreModel };