import * as spec from '@jsii/spec';
import { RosettaTabletReader } from 'jsii-rosetta';
/**
 * Assert that the given spec is safe to give to Rosetta
 *
 * We have to do it like this, because Rosetta has its own internal copy of the
 * spec and new schema additions may make it technically illegal to assign our
 * Assembly instance to Rosetta's Assembly type.
 *
 * We do runtime validation here to make sure that assignment is safe,
 * and then assert it in the type system.
 *
 * The check should be cheap, this gets called quite a lot.
 *
 * (In actual fact, Rosetta doesn't do much with the Assembly, just crawl
 * all API documentations, so basically most new features would be supported...
 * but we technically should do *something* here anyway).
 */
export declare function assertSpecIsRosettaCompatible(x: spec.Assembly): asserts x is Parameters<RosettaTabletReader['addAssembly']>[0];
//# sourceMappingURL=rosetta-assembly.d.ts.map