libs/nx/src/executors/shared/metadata-utils/__test/example-library/src/other/state/recursive-interface.ts
AbstractBuildingBlock
import { AbstractBuildingBlock } from '@allianz/taly-core'; interface MyState { firstLayerPropertyA: string; firstLayerPropertyB: { firstLayerSuBPropertyA: { firstLayerSubSubPropertyA: SecondLayerInterface; }; }; firstLayerPropertyC: string; } interface SecondLayerInterface { secondLayerPropertyA: boolean; secondLayerPropertyB: { secondLayerSubPropertyA: ThirdLayerInterface; }; secondLayerPropertyC: boolean; } interface ThirdLayerInterface { thirdLayerPropertyA: number; thirdLayerPropertyB: { thirdLayerSubPropertyA: FourthLayerWithRecursionInterface; }; thirdLayerPropertyC: number; } interface FourthLayerWithRecursionInterface { fourthLayerPropertyA: string; fourthLayerPropertyB: { fourthLayerSubPropertyWithRecursion: SecondLayerInterface; }; fourthLayerPropertyC: string; } export class MyComponent extends AbstractBuildingBlock<MyState> {}