import type { IConstruct } from 'constructs';
import type { ConstructInfo } from './runtime-info';
/**
 * The analytics metadata for a construct
 */
export interface ConstructAnalytics extends ConstructInfo {
    /**
     * Metadata that is always collected.
     */
    metadata?: unknown[];
    /**
     * Additional telemetry that is conditionally collected based on a feature flag.
     */
    additionalTelemetry?: Record<string, any>[];
}
/**
 * For a given construct scope, walks the tree and finds the runtime info for all constructs within the tree.
 * Returns the unique list of construct analytics present in the stack,
 * as long as the construct fully-qualified names match the defined allow list.
 */
export declare function constructAnalyticsFromScope(scope: IConstruct): ConstructAnalytics[];
