{"version":3,"file":"ng-typesafe-formgroup.mjs","sources":["../../../projects/ng-typesafe-form-group/src/lib/typeSafeFormGroup.ts","../../../projects/ng-typesafe-form-group/src/public-api.ts","../../../projects/ng-typesafe-form-group/src/ng-typesafe-formgroup.ts"],"sourcesContent":["import { \r\n    AbstractControl, \r\n    AbstractControlOptions, \r\n    AsyncValidatorFn, \r\n    FormControl, \r\n    FormControlOptions, \r\n    FormGroup, \r\n    ValidatorFn \r\n} from \"@angular/forms\";\r\nimport { Observable } from \"rxjs\";\r\n\r\nexport class FormGroupTypeSafe<T extends object> extends FormGroup{\r\n    constructor(\r\n        controls: Record<keyof T, AbstractControl>, \r\n        validatorOrOpts?: ValidatorFn | AbstractControlOptions | ValidatorFn[], \r\n        asyncValidator?: AsyncValidatorFn | AsyncValidatorFn[]\r\n    ){\r\n        super(controls, validatorOrOpts, asyncValidator);\r\n    }\r\n\r\n    override controls!: Record<keyof T, FormControlTypeSafe<T[keyof T]>>;\r\n\r\n    override valueChanges!: Observable<T>;\r\n\r\n    override value!: T;\r\n}\r\n\r\nexport class FormControlTypeSafe<K> extends FormControl{\r\n    constructor(\r\n        formState?: any, \r\n        validatorOrOpts?: ValidatorFn | ValidatorFn[] | FormControlOptions | null, \r\n        asyncValidator?: AsyncValidatorFn | AsyncValidatorFn[] | null\r\n    ){\r\n        super(formState, validatorOrOpts, asyncValidator);\r\n    }\r\n\r\n    override valueChanges!: Observable<K>;\r\n\r\n    override value!: K;\r\n}","/*\n * Public API Surface of ng-typesafe-form-group\n */\n\nexport * from './lib/typeSafeFormGroup';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;AAWM,MAAO,iBAAoC,SAAQ,SAAS,CAAA;AAC9D,IAAA,WAAA,CACI,QAA0C,EAC1C,eAAsE,EACtE,cAAsD,EAAA;AAEtD,QAAA,KAAK,CAAC,QAAQ,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;KACpD;AAOJ,CAAA;AAEK,MAAO,mBAAuB,SAAQ,WAAW,CAAA;AACnD,IAAA,WAAA,CACI,SAAe,EACf,eAAyE,EACzE,cAA6D,EAAA;AAE7D,QAAA,KAAK,CAAC,SAAS,EAAE,eAAe,EAAE,cAAc,CAAC,CAAC;KACrD;AAKJ;;ACvCD;;AAEG;;ACFH;;AAEG;;;;"}