/** * CDK construct levels affect how findings should be interpreted: * * - **L1**: raw `Cfn*` constructs. The user is escape-hatching out of the L2 * defaults — findings here should be treated as high-confidence intentional * choices the user made (or didn't realise they were missing). * - **L2**: curated CDK constructs (`Bucket`, `Function`, etc.). Often have * secure defaults; some findings may not apply if the L2 already configures * the property correctly. * - **L3-aws-solutions**: AWS Solutions Constructs patterns. Composite * constructs that own multiple resources — findings on a child often reflect * the pattern's deliberate configuration, not the user's mistake. * - **L3-third-party**: other community libraries (cdk-nag, cdk-monitoring, * etc.). Treat similarly to L3-aws-solutions for confidence purposes. * - **L3-custom**: the user's own composed constructs. Findings can be * reported against the parent custom construct for clearer attribution. * - **unknown**: FQN didn't match any recognised pattern. */ export type ConstructLevel = 'L1' | 'L2' | 'L3-aws-solutions' | 'L3-third-party' | 'L3-custom' | 'unknown'; /** * Classify a CDK construct's level (L1/L2/L3) from its fully-qualified * type name (the `fqn` field in `tree.json`'s `constructInfo`). * * Returns 'unknown' for FQNs that don't match any recognised pattern. */ export declare const classifyConstructLevel: (fqn: string | undefined) => ConstructLevel;